Financial Strategy
The DTC Finance Stack, End to End
A DTC finance stack has five layers: accounting (Xero or QuickBooks under $10M, NetSuite past $15M-$20M+), reconciliation (A2X or Finaloop), inventory (Shopify or Cin7), FP&A, and banking. Wire them to a contribution-margin chart of accounts and a 12-step close, and your books land by business day 5 instead of day 15.
Key Takeaways
- Xero Growing ($55/month, unlimited users) beats QuickBooks Online Plus ($110/month, 5-user cap) for most multi-person DTC teams under $10M. The saving is roughly $660/year on subscription alone (vs QBO Plus at $110/month).
- NetSuite commonly runs $10,000-$100,000/year plus a $50,000-$100,000 first-year implementation. It only pays back at $15M-$20M+ with real multi-warehouse or multi-entity complexity.
- Your Shopify payout is not your revenue. Shopify deposits gross sales minus fees, refunds, and reserves, on a timing that never matches order dates. A reconciliation layer (A2X or Finaloop) fixes the gap.
- A contribution-margin P&L requires putting variable selling costs (outbound shipping, marketplace fees, payment processing) above the line and fixed opex below it. Conflating the two is the most common DTC bookkeeping error.
- Books by business day 5 is achievable, but only with a systematic 12-step close. The two delay drivers are always the same: unreconciled Shopify or Amazon payouts and inventory COGS mismatches.
Almost every 8-figure DTC founder we sit down with says a version of the same thing. As one CPG founder growing past $100M put it on a call with us: "Even if the P&L said we're profitable, we never have cash." That gap, between what the books say and what the bank account does, is a finance-stack problem. The right tools, wired together the right way for your revenue band, are what close it. This is the complete map: the five layers of a DTC finance stack, which specific tools fit at $3M, $8M, and $20M, a chart of accounts that actually surfaces contribution margin, and the 12-step close that gets your books done by business day 5 instead of day 15.
The five layers of a DTC finance stack
Every DTC finance stack, from a $2M brand to a $50M one, is built from the same five layers. What changes as you scale is the tool inside each layer, not the number of layers.
Accounting is the general ledger: QuickBooks, Xero, or NetSuite. It holds your chart of accounts and produces the P&L and balance sheet. Reconciliation is the connective tissue between your sales channels and that ledger: A2X or Finaloop, the thing that makes a messy Shopify payout tie cleanly to a bank deposit. Inventory tracks units and cost: Shopify's native tools at the low end, Cin7 once you go multi-channel or multi-warehouse. FP&A is forward-looking: budgets, cash runway, and driver-based models, run in a disciplined spreadsheet at first and a tool like Jirav or Mosaic later. Banking is where cash lives and moves: Mercury or Relay for most modern DTC brands.
The mistake we see most often is a brand buying the wrong tier in one layer. A $3M brand paying for NetSuite. An $18M brand still hand-keying Amazon settlements into QuickBooks. The decision in each layer is never "which tool is best in the abstract." It is "which tool fits my revenue, my team size, and how much complexity I can actually absorb." Get that matching right and the stack costs you a few hundred dollars a month at $3M and stays under $3,000 at $20M.
The accounting system decision by revenue band
This is the layer founders overthink most, usually by looking at NetSuite far too early. The honest answer for the vast majority of DTC brands is boring: Xero or QuickBooks, and the choice between them comes down to seats and your accountant's preference.
Under $10M, Xero Growing at $55/month with unlimited users is the value pick for any team with more than three people touching the books. QuickBooks Online Plus caps you at five users and runs $110/month. For a five-person finance and ops team that is roughly $660/year saved on subscription alone (comparing $55/month Xero vs QBO Plus at $110/month), and the gap widens every time you add a seat. The breakeven flips back toward QuickBooks only when your team is very small or your US CPA flatly refuses to work in anything else, which does still happen.
Between $10M and $20M, QuickBooks Advanced (up to 25 users, $150-235/month) is the natural bridge, and this is the band where you should start seriously evaluating, but not necessarily buying, NetSuite. NetSuite is a different category of spend entirely. It commonly runs $10,000-$100,000/year all-in (base platform around $11,988/year, roughly $1,188/year per user, plus $599-$1,999/month per module), and a first-year implementation typically adds $50,000-$100,000 on top. It earns that cost only when you have real complexity: multiple warehouses, multiple legal entities, or manufacturing that a mid-market general ledger can't model.
| System | Revenue band fit | Monthly cost | Notes |
|---|---|---|---|
| QuickBooks Online Plus | Under $5M | $110 | 5-user cap; strong for US CPA workflows |
| Xero Growing | Under $10M | $55 | Unlimited users; best for multi-person DTC teams |
| Xero Established | $5M-$15M | $80 | Adds multi-currency; ideal for international DTC |
| QuickBooks Advanced | $10M-$20M | $150-235 | Up to 25 users; bridge to ERP |
| NetSuite ERP | $15M+ | $833-8,333 | Full ERP including implementation; large TCO jump |
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.
The reconciliation layer, or why your payout is not your revenue
Here is the single most misunderstood thing in DTC accounting. When Shopify deposits money in your bank, that deposit is gross sales minus processing fees, minus refunds, minus any reserve Shopify is holding, and it lands on a timing that does not match when the orders were placed. If your bookkeeper records that deposit as revenue, your revenue is wrong, your fees are invisible, and your margins are fiction.
The reconciliation layer fixes this. The gold standard is a 3-way reconciliation: order level, payout level, and bank deposit all tied together so nothing falls through. When we walk founders through their own Shopify payout tab for the first time, the reaction is usually the same quiet realization that they have been booking net deposits as revenue for a year and their gross margin was never real.
You have two tools for this layer. A2X is a connector: it sits between Shopify or Amazon and your existing QuickBooks or Xero, and turns each payout into a clean summary journal that ties 1:1 to the bank. It runs $29-$115/month single-channel and $89-$229+/month multi-channel, and it keeps your existing accounting system and bookkeeper. Finaloop is the other model: it replaces your accounting system and bundles a bookkeeping team, with 3-way reconciliation and COGS built in, starting around $245/month and running to $1,900/month at higher GMV bands. The tradeoff is that Finaloop is primarily US-only (Shopify US and Amazon North America), so international brands lean toward A2X.
| Dimension | A2X | Finaloop |
|---|---|---|
| Primary role | Reconciliation connector into QuickBooks/Xero | Full-service accounting + bookkeeping (replaces QuickBooks) |
| You still need | QuickBooks/Xero + a bookkeeper/CPA | Nothing else for day-to-day bookkeeping |
| Reconciliation | Per-payout summary entries tying to the bank deposit | 3-way: order + payout + bank |
| COGS/inventory | Higher tiers only | Built-in automatic COGS and inventory |
| Geography | US, UK, EU, AU, NZ, global | Primarily US-based brands |
| Pricing (indicative) | $29-$229/month by channel and volume | $245-$1,900/month by GMV |
| Best fit | Brands keeping QBO/Xero and an existing accountant | US DTC brands wanting hands-off, all-in-one books |
Inventory, FP&A, and banking
The remaining three layers are quicker decisions, but each has one threshold that matters.
Inventory. Shopify's native inventory plus Stocky (free with POS Pro) handles most single-channel brands under about $5M. The moment you go multi-channel (Shopify plus Amazon plus wholesale) or multi-warehouse, you need real-time two-way sync, and that is Cin7 Core, starting at $349/month (5 users, 2 integrations) and rising to $599-$999/month for higher tiers with demand forecasting, multi-level BOMs, and EDI. The trigger to upgrade is channels and warehouses, not revenue alone.
FP&A. At $3M, a well-built spreadsheet model genuinely beats a $20,000/year tool. Do not buy Jirav or Mosaic to run a forecast you could run in Google Sheets. Once you cross into the $5M-$10M range and cash timing gets tight, Fathom (reporting and analysis, estimated $3,000-$10,000/year) or Jirav (driver-based FP&A, starting around $20,000/year) start to pay for themselves in ad-spend discipline. Mosaic (typically $25,000-$60,000+/year) is a $20M+ tool.
Banking. For most modern DTC brands, Mercury is the default: strong Shopify and Stripe integrations, free international USD wires, and treasury yield. Relay wins on Profit First envelope budgeting across up to 20 checking accounts, but it does not handle international payments, which rules it out if you pay overseas suppliers directly. Both are free at the standard tier, so banking is the one layer that stays at $0 as you scale.
Put the whole stack together and the cost curve is steep but predictable. The all-in monthly cost runs about $703 at $3M, roughly $935 at $8M, and around $2,880 at $20M, with FP&A and inventory driving most of the increase.
| Layer | $3M ARR | $8M ARR | $20M ARR |
|---|---|---|---|
| Accounting | Xero Growing / QBO Plus ($55-110) | Xero Established ($80) | QBO Advanced or NetSuite ($235-1,000+) |
| Reconciliation | A2X ($29-49) | A2X or Finaloop ($89-415) | Finaloop or ERP native ($229-415) |
| Inventory | Shopify (included) | Cin7 Core ($349-599) | Cin7 Core/Omni ($599-749+) |
| FP&A | Structured spreadsheet ($0-250) | Fathom or Jirav ($250-1,667) | Jirav or Mosaic ($1,667-5,000+) |
| Banking | Mercury/Relay (free) | Mercury (free) | Mercury (free) |
| Approx. total/month | ~$703 | ~$935 | ~$2,880 |
The chart of accounts that reveals contribution margin
Tools are only half the job. The other half is how your chart of accounts is structured, because a bad structure hides the number that matters most. As one of our team framed it on a client call: "The only difference between gross profit and contribution is the variable marketing, in other words the ad spend, so tracking this measure is critical." The same logic applies to every variable selling cost, not just ad spend.
The rule is one sentence: if a cost scales with orders, it goes above the contribution-margin line. Outbound shipping, marketplace fees, and payment processing all scale with every order, so they sit above the line with COGS. Marketing, payroll, rent, and software are fixed or semi-fixed, so they sit below it. When we set up bookkeeping for a new DTC brand, the first thing we do is look at the chart of accounts and rebuild it for ecommerce, because the default templates conflate these two and leave the founder unable to tell whether an order actually makes money.
| Account | Name | Category |
|---|---|---|
| 4100 | Product Sales, Gross | Revenue |
| 4150 | Sales Returns & Allowances | Revenue (contra) |
| 4160 | Discounts & Coupons | Revenue (contra) |
| 5000 | Product COGS, Merchandise | COGS |
| 5030 | Freight In, Supplier to Warehouse | COGS |
| 5050 | Packaging & Supplies | COGS |
| 5100 | Outbound Shipping, Customer Orders | Contribution margin (above line) |
| 5110 | Marketplace Fees (Amazon/eBay) | Contribution margin (above line) |
| 5120 | Payment Processing (Stripe/Shopify) | Contribution margin (above line) |
| 6100 | Marketing & Advertising | Operating expense (below line) |
| 6200 | Payroll, Salaries & Wages | Operating expense (below line) |
| 6300 | Software & SaaS Tools | Operating expense (below line) |
The 12-step close that gets books done by day 5
The final piece is the process that runs on top of the stack. A common lament we hear is blunt: "Every time, books are done not done before the 15th." Day 15 is not a tool problem. It is a process problem, and the fix is a defined 12-step close that targets business day 5.
The biggest delay driver is almost never the accounting system. It is unreconciled Shopify or Amazon payouts discovered on day 1, and inventory COGS mismatches discovered on day 2. We have been on calls where a brand said, in effect, "we haven't checked inventory and COGS is 600,000 different, so we don't really know anything about the month at this point." That is what day 15 looks like from the inside, and it is entirely preventable with reconciliation done during the month rather than after it.
| Day | Focus | Key tasks |
|---|---|---|
| Pre-close (D-5 to D-1) | Governance + high-risk recs | Publish cutoffs to ops/marketing/CX; reconcile cash, processors, and inventory during the month |
| Day 1-2 | Data + revenue reconciliation | Import bank statements and payout reports; 3-way reconcile Shopify payouts; reconcile Amazon settlements (gross, fees, reserves) |
| Day 1-2 | Inventory | Reconcile WMS/3PL inventory to the GL; investigate variances and COGS mismatches |
| Day 3-4 | Accruals + COGS | Post prepaid amortization, accrued marketing, freight, and depreciation; confirm COGS against receipts and landed costs |
| Day 3-4 | Expenses + analytics | Confirm AP aging and vendor payments; draft the P&L and contribution-margin report; run variance vs prior month and budget |
| Day 5 | Review + sign-off | Reviewer checks key reconciliations and material journals; issue the management reporting package; log the top 3 delay drivers for next month |
Books by day 5 is achievable at any of these revenue bands. It requires the right tool in each of the five layers, a chart of accounts that surfaces contribution margin, and a close process that catches reconciliation problems while the month is still open. The stack is not about buying the most software. It is about matching each layer to where your revenue actually is, and then running a disciplined close on top of it.
Your Shopify payout is not your revenue, your gross margin is not your contribution margin, and your close is not done just because the P&L printed. Fix those three and the phrase "we're profitable but we never have cash" stops being your monthly reality.
Related reading. For what the reporting layer gives you natively and what it does not, see Shopify Plus financial reporting. For how we assemble and run the finance stack with brands, see our fractional CFO work.
Related reading. For the year-end close that ties the whole stack together, see the year-end close checklist.
Sources and methodology
Accounting-system pricing comes from vendor rate cards and Intuit's own comparison page. Xero Growing ($55/month, unlimited users) and QuickBooks Online Plus ($110/month, 5-user cap) are from published pricing; the five-user cost comparison and ~$660/year saving (Xero $55/month vs QBO Plus $110/month) are detailed in the Eightx how much does Xero cost guide. NetSuite figures ($10,000-$100,000/year plus $50,000-$100,000 first-year implementation) are drawn from Intuit's QuickBooks vs NetSuite comparison; NetSuite does not publish a public rate card, so these are commonly cited ranges, not exact quotes.
Reconciliation pricing and the 3-way reconciliation definition come from the Finaloop vs A2X comparison and the Eightx A2X vs Finaloop guide. A2X runs $29-$229/month by channel and volume; Finaloop runs $245-$1,900/month by GMV band and is primarily US-only.
Inventory, FP&A, and banking figures are from vendor pages: Cin7 Core starts at $349/month, Jirav starts near $20,000/year, and Mosaic typically runs $25,000-$60,000+/year (the latter sourced from aggregated marketplace transaction data rather than a list price). Mercury and Relay comparisons come from each provider's ecommerce banking materials.
Chart-of-accounts structure follows the contribution-margin approach documented in the A2X ecommerce accounting hub and standard DTC bookkeeping practice.
The all-in stack cost figures ($703, $935, $2,880/month) are an anonymized advisory-panel synthesis, not a formal survey. They represent the mid-range of what we see across brands at each revenue band and should be treated as planning benchmarks, not quotes.
Frequently asked questions
what accounting software should i use for my shopify store?
Under $10M revenue with a multi-person team, Xero Growing at $55/month (unlimited users) is usually the best value. If your US CPA insists on QuickBooks or your team is under three people, QuickBooks Online Plus works fine. Either way, add a reconciliation layer like A2X so your Shopify payouts tie to your books.
when should a dtc brand switch from quickbooks to netsuite?
Not until $15M-$20M+ with genuine complexity: multiple warehouses, multiple entities, or heavy manufacturing. NetSuite commonly costs $10,000-$100,000/year plus a $50,000-$100,000 first-year implementation. Below that, QuickBooks Advanced or Xero Established does the same job for a fraction of the cost.
what does a2x actually do and do i need it if i have a bookkeeper?
A2X sits between Shopify or Amazon and your accounting system and turns each payout into a clean summary journal that ties 1:1 to the bank deposit. Yes, you still want it even with a bookkeeper. It removes hours of manual payout matching every month and is the thing that makes your revenue actually reconcile.
what is the difference between gross margin and contribution margin in ecommerce?
Gross margin is revenue minus product COGS (merchandise, inbound freight, packaging). Contribution margin goes further and also subtracts the variable selling costs that scale with each order: outbound shipping, marketplace fees, and payment processing. Contribution margin is the number that tells you whether an order actually makes money after you ship it.
how should i structure my chart of accounts to see contribution margin?
Put revenue and contra-revenue in the 4000s, product COGS in the 5000s, and variable selling costs (outbound shipping, marketplace fees, payment processing) in a 5100s block that sits above the contribution-margin line. Keep fixed opex (marketing, payroll, rent, software) in the 6000s below the line. One rule decides everything: if a cost scales with orders, it goes above the line.
what is a normal month end close timeline for a dtc brand?
Without a system, most brands finish around day 15 or later. With a defined process, business day 5 is realistic: pre-close in the last week of the month, days 1-2 for data import and payout reconciliation, days 3-4 for accruals and COGS, day 5 for review and sign-off.
is mercury or relay better for ecommerce businesses?
Mercury usually wins for DTC brands scaling on ad spend and paying overseas suppliers: strong Shopify and Stripe integrations, free international USD wires, and treasury yield. Relay is stronger if you run Profit First envelope budgeting across many accounts, but it does not do international payments, which is a dealbreaker if you pay Asian suppliers directly.
how much should i be spending on my finance stack at $8m revenue?
Roughly $900-$1,200/month in software (accounting, reconciliation, inventory, FP&A), plus bookkeeping labor on top. At $8M the tooling is the cheap part. The expensive part is the human time to run the close well, which is where most brands under-invest and then wonder why their numbers are always late.
