Financial Strategy
The Ecommerce Month-End Close Playbook: 12 Steps to Day 5
A well-run ecommerce month-end close finishes by day 5 using a 12-step checklist: reconcile Shopify, Amazon, and Faire payouts first, post returns and COGS against the real cost layer, catch accruals, then review the P&L and lock the period. Pre-pull external reports before month end so day 1 is posting, not chasing.
Key Takeaways
- Day 5 is the best-practice close target, but many small-to-mid DTC brands are still closing on day 10 to 14. The gap means you make inventory and spend calls on a month-old P&L.
- Amazon moved to DD+7 on March 12, 2026. FBA sellers now wait roughly 14 to 21 days from sale to cash, FBM 17 to 28 days. Late-month Amazon orders almost always sit in a receivable and clear next period.
- Inventory and COGS are the most error-prone part of the close. The classic mistake is Shopify units sold times a stale average cost instead of reconciling to the actual cost layer. We have seen that produce a ~$98k year-end adjustment.
- Reconcile to the payout report, not the bank statement. A Shopify payout that lands on day 1 can contain prior-month orders. Match to the payout date or you book revenue in the wrong period.
- The day-5 close is a process, not software. It needs a written 12-step checklist, named owners per step, and pre-close data pulled during the last week of the month so day 1 is not spent chasing reports.
Most DTC brands are still closing their books on day 10, day 15, or later. That means every inventory buy, every ad-budget decision, and every cash-runway call in the first two weeks of the month is being made against a month-old P&L. A month-end close is the routine of finalizing your books for the period: reconciling every payout and bank account, posting COGS and inventory, catching accruals, and locking the numbers so they can be trusted. The strongest ecommerce finance teams do all of it by day 5, and they do it with a written checklist rather than expensive software.
This is the playbook: a 12-step close sequence with day targets, the payout-timing rules for Shopify, Amazon, and Faire that trip up most brands, and the two or three entries that quietly blow up gross margin if you miss them.
Why most DTC brands close late, and what it costs them
A late close does not feel expensive. Nobody sends you an invoice for closing on day 14 instead of day 5. The cost shows up sideways, in decisions.
If your March books are not final until April 15, then every reorder you place in the first half of April is running on February and early-March signal. You overbuy the SKUs that looked strong two months ago and underbuy the ones that quietly turned. You keep spending on a channel whose true contribution margin, once returns and platform fees are netted out, has already gone underwater. And at year-end, the whole thing compounds into a tax-prep scramble because twelve months of loose ends all surface at once.
When I talk to founders running a brand this size, the thing they keep saying is that they do not trust their own numbers until "the accountant has had a look," which is usually the middle of the following month. That distrust is the real tax. A P&L you do not trust is a P&L you do not use, so you end up steering the business on your bank balance, which is the least informative number you own because it lags every accrual.
The fix is not more software. It is sequence and ownership. Most late closes are late for one boring reason: the raw data (payout reports, the 3PL invoice, the returns file) does not all arrive on day 1, so days 1 and 2 get burned chasing documents instead of posting them. The brands that close on day 5 solve that before the month even ends.
The 12-step month-end close checklist, with day targets
Here is the core of the playbook. Twelve steps, each with an owner, a primary tool, a target day, and the number-one failure mode we see for that step. The sequence matters: payouts and returns come first because everything downstream (margin, balance sheet, tax) depends on revenue being booked in the right period.
| Step | Name | Owner | Primary tool | Target day | #1 failure mode |
|---|---|---|---|---|---|
| 1 | Shopify / Amazon / Faire payout reconciliation | Bookkeeper / Controller | A2X + GL (QuickBooks / Xero) | Day 1 | Payout contains prior-month orders, booked in wrong period |
| 2 | Returns and chargebacks posting | Bookkeeper | GL + platform returns reports | Day 2 | Refunds not posted; chargeback reserve not updated |
| 3 | COGS upload and inventory count reconciliation | Controller / 3PL liaison | GL + inventory system | Day 3 | Stale unit cost; no cycle-count adjustment posted |
| 4 | Accounts payable cutoff | Bookkeeper | AP module in GL | Day 3 | Late 3PL or agency invoice booked next period without accrual |
| 5 | Accrued expense review | Controller | GL journals | Day 3 | Prepaid amortization or SaaS subscriptions not amortized |
| 6 | Payroll reconciliation | HR / Controller | Payroll system + GL | Day 4 | Payroll entry dated to pay date, not period-end |
| 7 | Bank and credit card reconciliation | Bookkeeper | Bank feed in GL | Day 4 | Undeposited-funds clearing account has a stale balance |
| 8 | P&L review: revenue and gross margin | Controller / CFO | GL reporting | Day 4 | Margin variance unexplained; returns not netted from revenue |
| 9 | Balance sheet review | Controller / CFO | GL reporting | Day 4 | Clearing accounts not zeroed; AR not reconciled |
| 10 | Sales tax liability review | Controller / Tax | TaxJar / Avalara + GL | Day 4 | Nexus liability miscoded; tax collected not equal to liability posted |
| 11 | Flux analysis and journal sign-off | Controller / CFO | GL + spreadsheet | Day 5 | Entry approved without supporting documentation |
| 12 | CFO sign-off and period lock | CFO | GL admin | Day 5 | Period left open; entries posted after close |
The single biggest win in this table is not any one step. It is naming an owner for each one. When "the close" is one person's undifferentiated job, it expands to fill whatever time is available. When step 3 is explicitly the controller's and step 6 is explicitly HR's, the steps run in parallel and the whole thing compresses.
Returns are quietly eating your margin. See by how much.
Get our Real Cost of Returns calculator: plug in your numbers, see the true hit per return.
Check your inbox. We'll send the Real Cost of Returns calculator shortly.
Reconciling Shopify, Amazon, and Faire payouts
Step 1 is where the most revenue lands in the wrong month, because every sales channel pays out on a different clock and none of them match your calendar month. The rule that saves you: reconcile to the payout report, never to the bank statement date. (This section assumes accrual-basis accounting, meaning revenue recognized when earned, not when cash arrives. If your books are still on cash basis, the same reconciliation mechanics apply, but the period-mismatch risk is lower because you are not booking revenue until the payout lands.)
Shopify Payments settles in 2 to 5 business days in the U.S., and the payout can take up to 5 more days to post to your bank, so a payout confirmed on day 1 may contain orders from the last week of the prior month. Amazon changed the math on March 12, 2026, moving to DD+7: funds are held for 7 calendar days after delivery confirmation before entering the disbursement cycle. That pushes FBA to roughly 14 to 21 days from sale to cash and FBM to 17 to 28 days. Faire wholesale runs next-day, 30-day, or 60-day terms; on the common 30-day term, orders shipped in the last week of the month are receivables for a full 30 days.
| Channel | Payout cycle | Days to cash | Clearing account? | Revenue recognized at | Cash-flow note |
|---|---|---|---|---|---|
| Shopify Payments | Daily (configurable) | 3 to 10 business days | Yes (Shopify clearing) | Order date (accrual) | May span month boundaries; reconcile to payout report |
| Amazon FBA | Per settlement | 14 to 21 calendar days | Yes (Amazon receivable) | Shipment date (accrual) | DD+7 as of March 2026; late-month orders in next period |
| Amazon FBM | Per settlement | 17 to 28 calendar days | Yes (Amazon receivable) | Shipment date (accrual) | More variable than FBA; track delivery confirmation date |
| Faire (30-day) | 30 days from dispatch | 28 to 32 days | Yes (Faire receivable) | Dispatch date (accrual) | 2.4% + $0.30 fee; maintain receivables aging by dispatch |
| Faire (next-day) | Next business day | 1 to 2 days | Yes (Faire receivable) | Dispatch date (accrual) | 3.5% + $0.30 fee; viable for cash-constrained brands |
| PayPal / BNPL | Varies | 3 to 7 days | Yes (BNPL clearing) | Order date (accrual) | Reconcile separately from Shopify Payments |
The mechanical fix for all of this is a clearing account per channel plus a summarized journal entry per payout. This is what A2X does: it posts one entry per Shopify payout and one per Amazon settlement, split into sales, refunds, fees, taxes, and shipping, and it dates that entry to the payout period rather than the bank deposit date. Your bank reconciliation then becomes a one-click match. The pattern we see again and again is a multichannel brand running U.S. and, say, Australian Amazon sales at once, and the thing that unblocks their close is simply giving each jurisdiction its own clearing account so the two settlement streams stop contaminating each other.
COGS, inventory, and the mistakes that blow up gross margin
If step 1 is where revenue lands in the wrong month, step 3 is where margin gets fabricated. Inventory and COGS are the most error-prone area in the entire DTC close, and the errors are large.
The classic failure is calculating COGS as Shopify quantity-sold multiplied by an average cost that has not been updated since your last freight or supplier price change. It looks reconciled. It ties to units. And it can be off by a wide margin because the actual cost layer moved and the spreadsheet did not. On one inventory-heavy brand, a spot check found exactly this pattern, and reconciling COGS to the real cost layer instead of the stale average produced a roughly $98k adjustment at year-end. That is $98k of "margin" that was never real, sitting in the P&L for months, informing pricing and ad-spend decisions the whole time.
The second failure is not posting the cycle-count adjustment before you close. Shrink, damage, and count discrepancies are real inventory movements. If you close without booking them, your balance sheet carries inventory you no longer have and your next physical count produces a nasty surprise. For a $5M to $10M brand, a monthly cycle count throwing a $50k to $100k variance is not unusual, and it needs to hit the books in the period it belongs to.
When we have struggled with this ourselves, what worked was decoupling the inventory reconciliation from the rush of the close. The count and the cost-layer check happen during the last week of the month, on the shelves and in the inventory system, so that day 3 is a posting exercise against a number that is already trusted, not a scramble to reconcile from scratch while the clock runs.
Returns, chargebacks, and accruals: the entries most brands miss
Steps 2, 4, and 5 are the quiet ones. They do not tie to a big payout report, so they get skipped, and skipping them overstates revenue and understates cost in ways that only surface later.
Returns and chargebacks should be run through reserves, not booked one dispute at a time as they land. A chargeback reserve of roughly 0.5% to 1.5% of GMV, posted monthly, smooths out the timing so a bad dispute month does not distort your P&L. Returns should be reconciled against a returns reserve weekly, not left to pile up until close. Below is the ranked list of where DTC closes actually break, drawn from the same operator pattern and the standard close-checklist literature.
| Rank | Failure mode | Step where it occurs |
|---|---|---|
| 1 | Inventory / COGS discrepancy not caught before close | Step 3 (COGS & inventory) |
| 2 | Payout timing mismatch (revenue in wrong period) | Step 1 (payout reconciliation) |
| 3 | Accrued expenses missed (AP cutoff too early) | Step 4 (AP cutoff & accruals) |
| 4 | Returns / chargeback reserve not posted | Step 2 (returns & chargebacks) |
| 5 | Payroll journals posted in wrong period | Step 6 (payroll reconciliation) |
| 6 | Missing platform fees (Amazon / Shopify / Faire) | Step 1 (payout reconciliation) |
The accrual side (steps 4 and 5) is about the invoices that have not arrived yet. Your 3PL bills on day 8. Your agency bills mid-month. If your AP cutoff is day 3 and you do not accrue for those known costs, you push real expenses into the next period and flatter the month you just closed. The fix is a short standing accrual list: 3PL, agencies, prepaid insurance and SaaS amortization, and depreciation. Post it every month whether or not the invoice has landed, then true it up when the invoice arrives.
What the day-5 close actually takes
The difference between a day-12 brand and a day-5 brand is almost never talent or tooling. It is three enabling conditions, and all three are set before the month ends.
First, pre-close data collection. The biggest bottleneck in the close is incomplete data from external parties: the Shopify payout that has not posted, the Amazon settlement still clearing, the 3PL invoice that shows up on day 8. Day-5 brands pull every report they can during the last week of the month, so day 1 starts with the raw data already in hand instead of a scavenger hunt.
Second, role ownership. The 12-step table only compresses if steps run in parallel, and they only run in parallel if each has a named owner who does not wait on the others.
Third, automation on the mechanical steps. A2X or an equivalent handles the payout-to-journal reconciliation so the bookkeeper is reviewing entries rather than building them by hand. That is the difference between step 1 taking an hour and taking two days. If you want a second set of hands on the design of the close itself, that is exactly the kind of work our fractional CFO services take off an operator's plate.
The day-5 close is not bought, it is sequenced. Pull the data before month end, give every step an owner, automate the payout reconciliation, and reconcile COGS to the real cost layer instead of a stale average. Do that and day 5 stops being aspirational and becomes the boring default, which is exactly what you want your close to be.
Related reading. For the tooling the close runs on, see the DTC finance stack, end to end, and for the integration most closes stall on, see how to connect Shopify to NetSuite. For how we design a five-day close with brands, see our fractional CFO work.
Related reading. For the annual version, and the accounts to reconcile before your CPA, see the year-end close checklist.
Sources and methodology
Payout timing was taken from each platform's own documentation and dated third-party analysis. Shopify Payments settlement and payout windows come from the Shopify Help Center payout-timing page. The Amazon DD+7 change, effective March 12, 2026, is drawn from a March 2026 analysis of the policy shift; sellers should confirm current windows against Amazon Seller Central before relying on the exact day counts. Faire's next-day, 30-day, and 60-day terms and fees are as described in Shopify's overview of Faire wholesale and should be checked against Faire's current help center, as tiered fees change.
The 12-step checklist and day targets synthesize practitioner close guidance with our own close framework. The day-by-day sequencing draws on the Numeric ecommerce close checklist and the Brex month-end close checklist. The day-5 target reflects modern finance-team benchmarks of three to six business days; it is industry best practice from software vendors and practitioner guidance, not a peer-reviewed statistical survey.
Reconciliation mechanics reflect the A2X summarized-journal-entry method. The one-entry-per-payout approach, split into sales, refunds, fees, taxes, and shipping and dated to the payout period, is documented in the A2X reconciliation methodology.
Operator patterns are anonymized and aggregated. Figures such as the roughly $98k COGS adjustment and $50k to $100k cycle-count variances come from close reviews with DTC brands in the $3M to $15M range and are illustrative of common failure modes, not a client-attributable disclosure. The chargeback reserve range of 0.5% to 1.5% of GMV is a practitioner estimate from processor guidance, not a named public study.
Frequently asked questions
how long should a month-end close take for a dtc brand?
Day 5 is the best-practice target for a well-run ecommerce finance team, meaning five business days after month end. Modern benchmarks put the goal at three to six business days. Many smaller DTC brands are still closing on day 10 to 14, usually because external data (payout reports, 3PL invoices) arrives late.
how do i reconcile my shopify payouts at month end?
Reconcile to the Shopify payout report, not the bank statement date. A payout that hits your bank on day 1 of the month often contains orders from the last few days of the prior month. Use a Shopify Payments clearing account and match each payout to its report period so revenue and fees land in the right month.
how does amazon's dd+7 payout change affect my month-end close?
As of March 12, 2026, Amazon holds funds for 7 calendar days after delivery confirmation before disbursing. That pushes FBA sellers to roughly 14 to 21 days from sale to cash and FBM to 17 to 28 days. In practice, late-month Amazon orders sit in an Amazon receivable or clearing account and do not clear until the next period.
what's the best way to handle faire payout timing in my accounting?
Recognize revenue at dispatch, then treat the payout as a receivable. Faire runs next-day, 30-day, or 60-day terms. On the common 30-day term (2.4% plus $0.30 per order), orders shipped in the last week of the month are receivables for about 30 days. Keep a Faire receivable aging schedule by dispatch date.
how do i reconcile cogs and inventory for a month-end close?
Reconcile COGS to the actual inventory cost layer, not Shopify units sold times a stale average cost. Post cycle-count adjustments for shrink and write-offs before you close. This is the single most error-prone step in the DTC close, and a missed adjustment can quietly overstate gross margin by tens of thousands of dollars.
what accruals should i make every month as an ecommerce brand?
At minimum: prepaid expense amortization (insurance, annual SaaS), depreciation on fixed assets, accrued 3PL and agency invoices that arrive after your AP cutoff, a chargeback reserve, and a returns reserve. Accruing these monthly is what keeps your P&L from swinging on the timing of when invoices happen to land.
what does a2x do for month-end reconciliation and is it worth it?
A2X posts one summarized journal entry per Shopify payout and per Amazon settlement, split into sales, refunds, fees, taxes, and shipping, dated to the payout period. That turns bank reconciliation into a one-click match in QuickBooks or Xero. For a multichannel brand doing hundreds of orders a day, it usually pays for itself in saved close hours.
what are the most common bookkeeping errors dtc brands make at close?
In order: inventory and COGS discrepancies not caught before close, payout timing mismatches that book revenue in the wrong period, missed accrued expenses from an early AP cutoff, an unposted returns or chargeback reserve, and payroll journals dated to the pay date instead of period-end.
