Your Shopify dashboard says last month was the best in the store's history. Your bank balance hasn't gotten the memo. And the P&L your bookkeeper sent over agrees with Shopify, because every payout went into the books as one tidy line called "Sales."
That gap is where most ecommerce bookkeeping breaks. A deposit from Shopify or Amazon isn't revenue. It's revenue minus processing fees, minus refunds, plus sales tax you owe to a state, plus shipping you charged a customer and have probably already paid a carrier. All of it gets netted into one number before it ever reaches your bank. Book that number as a single line and every report built on top of it is wrong from the first day.
I've spent my career inside businesses where the timing of cash decides everything, first as a Controller, then as a CFO, and now as a fractional CFO to more than 100 companies. Businesses that carry inventory are the least forgiving of sloppy books I know. My goal with this guide is to walk you through ecommerce bookkeeping the way I'd set it up if you and I were sitting across the table with your Shopify export open.
What Ecommerce Bookkeeping Actually Covers
Ecommerce bookkeeping is the recording and reconciling of every financial transaction an online store produces, from the first inventory deposit you wire to a supplier to the last refund you issue in December. In practice, that covers seven areas:
- Sales by channel (your own site, Amazon, Etsy, eBay, wholesale, what have you)
- Payment processor and marketplace fees
- Refunds, returns, chargebacks, and discounts
- Inventory purchases and the landed cost of getting product to your shelf
- Cost of goods sold (COGS) as each unit actually ships
- Sales tax collected and remitted across states
- The ordinary overhead every business has: payroll, software, rent, advertising
None of that is exotic. What makes it hard is volume and fragmentation. A store doing 1,500 orders a month produces 1,500 sales, 1,500 fee deductions, a stack of refunds, several payouts a week from each platform, and inventory landing on a schedule that has nothing to do with any of it.
How Ecommerce Bookkeeping Differs From Every Other Kind
A service business sends an invoice, the client pays it, and the deposit matches the invoice. Ecommerce breaks that one-to-one relationship three separate ways.
First, deposits are netted. The platform takes its cut before you see a dollar, so the bank never shows you gross sales. Second, inventory sits between spending and earning. You pay for product weeks or months before you sell it, which means cash leaves long before the matching revenue shows up. Third, you sell through intermediaries with their own rules. Amazon, Shopify Payments, PayPal, and Stripe each settle on different schedules, report fees differently, and handle refunds differently.
This matters more every year. According to the U.S. Census Bureau's quarterly e-commerce report, online sales hit $340.2 billion in the second quarter of 2026, or 17.1% of all U.S. retail sales. That's a lot of small brands whose books were set up by someone who'd only ever kept books for a service business.
Whether you realize it or not, a service-business setup applied to a product business produces a P&L that looks reasonable and means very little.
A Chart of Accounts Built for an Online Store
Your chart of accounts decides what questions your books can answer. The default one QuickBooks or Xero hands you was built for a generic small business, and it will happily lump Amazon fees, Shopify fees, and your accountant's invoice into one bucket called "Fees." I encourage you to rebuild it around how an online store actually makes and spends money.
| Section | Accounts worth adding | Why it matters |
|---|---|---|
| Revenue | Sales – Shopify, Sales – Amazon, Sales – Wholesale, Shipping Income | Lets you see which channel is growing |
| Contra-revenue | Refunds & Returns, Discounts, Chargebacks | Keeps gross sales honest instead of quietly shrinking them |
| Cost of goods sold | Product Cost, Inbound Freight & Duties, Inventory Shrinkage | Captures the full landed cost of each unit |
| Variable selling costs | Marketplace Fees, Payment Processing, 3PL / Fulfillment, Outbound Shipping, Packaging | The costs that rise with every order |
| Operating expenses | Advertising (by platform), Software, Payroll, Professional Fees | Fixed-ish overhead you manage separately |
| Balance sheet | Inventory Asset, Inventory Deposits, Clearing – Shopify, Clearing – Amazon, Sales Tax Payable | Where most ecommerce books go quietly wrong |
Two notes on that table. Splitting advertising by platform (Meta, Google, Amazon Ads) costs you nothing to set up and pays for itself the first time you need to know which one is working. And keep the chart lean. Forty revenue sub-accounts nobody reads is its own kind of mess.
Record Payouts Through a Clearing Account, Not as Revenue
Every sales channel gets its own clearing account, and every payout moves through it.
A clearing account (i.e. a temporary holding account on your balance sheet) is where you record what actually happened in a sales period at gross, then let the bank deposit empty it out. When the account sits at zero after each payout, your books agree with the platform. When it doesn't, you've found an error while it's still small.
A simple worked example makes this concrete. Say one Shopify payout period looks like this:
| Line | Amount |
|---|---|
| Product sales | $10,000 |
| Shipping charged to customers | $600 |
| Sales tax collected | $700 |
| Refunds issued | ($450) |
| Payment processing fees | ($335) |
| Deposit to your bank | $10,515 |
If your bookkeeper records $10,515 as sales, three things go wrong at once. The $700 that belongs to a state shows up as income. The $450 in refunds and $335 in fees vanish into a smaller sales figure, so you can't see either one. And your reported revenue no longer matches what customers actually bought. The clearing-account entry records $10,000 to Sales – Shopify, $600 to Shipping Income, $700 to Sales Tax Payable, $450 to Refunds & Returns, and $335 to Payment Processing. The $10,515 deposit then clears the balance to zero.
Is that more work? For about a week, yes. Then a tool like A2X or Synder does it for every payout automatically, which I'll come back to. I covered the matching side of this in more depth in my post on automated payment reconciliation if you want the mechanics of catching mismatches.
Inventory and COGS: Where Online Sellers Lose Track of Margin
Inventory stays on your balance sheet as an asset until the unit sells, and only then does its cost move to COGS.
That single rule trips up more product businesses than any other. When you expense a $40,000 inventory order the month you pay for it, that month looks like a disaster and the next two months look fantastic. Neither is true. Your gross margin swings 30 points month to month and you can't make a single decision from it.
Getting inventory right comes down to three things.
Capture landed cost, not just the supplier invoice. The real cost of a unit includes inbound freight, customs duties, brokerage fees, and anything else it took to get that product onto your shelf. Leave those out and every unit looks cheaper than it is.
Pick a costing method and stick with it. FIFO (first in, first out) and weighted average are the two most common for small sellers. FIFO matches the way most physical inventory actually moves. Weighted average smooths out price swings between purchase orders. Either works. Switching back and forth doesn't.
Count what you have. At least quarterly, compare what your inventory system says you own to what's physically sitting in your warehouse or 3PL. The gap is shrinkage (damaged, lost, stolen, or miscounted units), and it belongs in COGS, not buried in your inventory balance.
Keep in mind that the IRS allows some smaller businesses to use simplified inventory methods for tax purposes; IRS Publication 538 lays out the gross receipts test (indexed for inflation each year). That's a tax election. Your management books are a separate question, and my answer there is blunt: if you hold inventory, cash-basis books will mislead you. Run accrual for decisions, even if your CPA files on a simpler basis.
I think about my father here. He came to this country from Colombia with very little, kept every receipt in a shoebox, and somehow always knew exactly what he had and what it cost him. Plenty of sellers today run three inventory apps and a 3PL portal and still can't pull that answer out of any of them.
Sales Tax Once You Sell Across State Lines
Every dollar of sales tax you collect belongs to a state from the moment the order is placed, so your books should record it as a liability, never as revenue.
Since the Supreme Court's 2018 ruling in South Dakota v. Wayfair, states can require out-of-state sellers to collect sales tax once they cross an economic nexus threshold, even with no physical presence there. Many states set that threshold at $100,000 in annual sales into the state, and some also use a transaction count. Each state writes its own rules, so check the ones you sell into.
Marketplace facilitator laws add a wrinkle. Amazon, Etsy, and Walmart Marketplace generally collect and remit sales tax on the orders they process, but those marketplace sales can still count toward your nexus threshold in many states. That means your Shopify store can suddenly owe tax in a state because your Amazon volume pushed you over the line.
The bookkeeping habits that keep this manageable:
- Record tax collected on your own site straight to Sales Tax Payable, never to revenue
- Track marketplace-collected tax separately so it doesn't inflate your sales figures
- Review your sales by state at least quarterly against each state's threshold
- Use a sales tax tool (TaxJar, Avalara, or Shopify Tax) once you're registered in more than a couple of states
I see sales tax as a stewardship issue as much as a compliance one. Money held in trust for someone else should be kept like it belongs to someone else.
Contribution Margin by Channel Is the Number Your P&L Hides
Which channel deserves your next dollar comes down to contribution margin (i.e. what you keep from an order after product cost and every cost that comes with selling it), and gross margin stops one step short of telling you.
A standard P&L won't show you this. It reports revenue by channel if you set up the chart of accounts above, but fees, fulfillment, and ad spend pool together further down the page. So a channel with great gross margin and terrible fees can look like your best performer for a year.
Take one $100 order sold two ways. These are round numbers chosen to make the math easy to follow, not benchmarks:
| Per $100 order | Your own site | Amazon FBA |
|---|---|---|
| Product revenue | $100 | $100 |
| Product cost (COGS) | ($35) | ($35) |
| Gross margin | $65 | $65 |
| Payment processing | ($3) | — |
| Marketplace referral fee | — | ($15) |
| Pick, pack, and ship | ($10) | ($9) |
| Advertising per order | ($28) | ($12) |
| Contribution margin | $24 | $29 |
Same product, same gross margin, and a different answer once every variable cost is in. Run your own numbers and they'll probably tell you something else entirely. That's the whole point. Until you calculate it, you're guessing.
The closest real example I can give you isn't an online store, and I won't pretend the numbers transfer. A tree removal company doing approximately $4.7 million a year wanted to scale aggressively but didn't have clarity on marketing efficiency or profitability by lead source. After more strategic advertising oversight, financial visibility, and revenue tracking processes were put in place, leadership identified which marketing channels, revenue types, and customer types (residential, commercial, or government) generated the highest-value jobs and the strongest margins. Revenue grew from approximately $4.7 million to more than $6.5 million year over year.
The growth didn't come from spending more on ads blindly. It came from knowing which spend produced profitable work. An online seller deciding between Meta ads, Amazon PPC, and wholesale accounts is facing exactly the same question.
Why a Profitable Online Store Can Still Run Out of Cash
Profit and cash flow are different things, and confusing them will eventually break a business. A widely cited U.S. Bank study found that 82% of business failures trace back to cash flow problems, and plenty of those businesses were profitable on paper when they closed.
Ecommerce is built for this trap. Walk through the timeline of a single inventory order:
- You pay your supplier a deposit when you place the order, often months before the goods arrive
- You pay the balance, plus freight and duties, when it ships
- The product sits in a warehouse or FBA for weeks before it sells
- The platform holds the sale proceeds until its next payout (Shopify Payments usually within a few business days, Amazon on a roughly two-week settlement cycle)
The span between the day cash leaves for inventory and the day it comes back from a customer is your cash conversion cycle. It's calculated as days of inventory on hand, plus days to collect, minus the days your suppliers give you to pay. A store holding 75 days of inventory, waiting 7 days on payouts, and getting 20-day terms from its supplier has a 62-day cycle. Every dollar of growth has to be financed for those 62 days.
That's why growth makes this worse, not better. Grow 40% and your next purchase order is 40% bigger, paid in full before the extra sales arrive. The P&L will call it a record quarter.
Your bank account will call it something else.
My friend, this is the section I'd ask you to reread. More revenue won't fix a 62-day gap. What fixes it is a cash forecast that runs off your actual payout schedules, purchase orders, and supplier terms, updated every week. If you don't have one, a 13-week cash flow forecast is the right place to start, and I've written separately about why cash flow matters more than profit for any business with real timing gaps.
Clean ecommerce books are only half the job. The other half is seeing what next quarter's inventory orders will do to your bank balance before you place them.
Talk through your cash cycle with a fractional CFO →The Weekly, Monthly, and Quarterly Bookkeeping Routine
Books kept current on a fixed cadence cost far less to maintain than books cleaned up once a year. A workable routine for most online stores looks like this:
| Cadence | Tasks |
|---|---|
| Weekly | Clear each payout through its clearing account · categorize bank and card transactions · review refunds and chargebacks · check inventory levels against open purchase orders |
| Monthly | Reconcile every bank, credit card, and payment processor account · record COGS from inventory movement · accrue unpaid bills · review P&L and contribution margin by channel · file sales tax returns that are due |
| Quarterly | Physical or 3PL inventory count and shrinkage adjustment · review sales by state against nexus thresholds · estimated tax payments · update the cash forecast for the next two inventory cycles |
The monthly close is the one that matters most. If your books aren't closed within two to three weeks of month-end, the numbers arrive too late to change anything you do that month.
Software That Keeps Ecommerce Books Current
Most stores need four layers of tools, and it helps to think about them in that order.
- An accounting system as the ledger. QuickBooks Online and Xero are the two most common for small online sellers. Either works.
- A payout and settlement tool. A2X and Synder read your Shopify, Amazon, and processor data and post summarized entries, at gross, to your clearing accounts. For a multi-channel seller, this layer does more to fix the books than anything else on the list.
- Inventory management. Shopify's built-in inventory works early on. Once you have multiple warehouses, a 3PL, or bundles and kits, a dedicated inventory system earns its cost.
- Sales tax. TaxJar, Avalara, or Shopify Tax, once you're registered in multiple states.
Past those four, the missing piece is usually visibility rather than another data-entry tool. That's why I built Cash Flow Optimizer, an AI-powered cash flow forecasting and business intelligence platform for small businesses. Your ledger stays where it is. Cash Flow Optimizer sits on top of it so you can see cash position, forecasts, and margin trends in one place instead of across four tabs. Plans run $99/month for Starter, $299/month for Growth, and $39/month per additional user on Scale, with a 14-day free trial. You can compare what fits on the features overview.
DIY, Bookkeeper, or Fractional CFO: When to Hand It Off
Doing your own books makes sense early. I'd encourage it, honestly, because nothing teaches you your business faster than categorizing every transaction yourself for a season.
It stops making sense sooner than most owners expect. The signs I watch for are two or more sales channels, inventory held at a 3PL or FBA, sales tax registrations in multiple states, or books that are routinely more than a month behind. Any one of those is a reason to bring in a bookkeeper who knows ecommerce specifically, not a generalist who has never touched a clearing account.
A fractional CFO solves a different problem. Once the books are accurate, somebody has to decide how much inventory to buy, which channel to push, and whether you can afford the next hire, and that's the work a CFO does. If you're at that stage, my fractional CFO services page explains how those engagements work.
And there are situations where you don't need any of this yet:
- You're a solopreneur under $300K in annual revenue. A clean spreadsheet or a basic QuickBooks setup plus A2X will carry you. You don't need Cash Flow Optimizer or a CFO yet.
- You sell on one channel with a handful of SKUs and inventory that turns quickly. Your books are simpler than this guide makes them sound.
- You need a heavily customized ERP with multi-entity consolidation, manufacturing work orders, and dozens of warehouses. Look at NetSuite or a similar system instead.
The Ecommerce Bookkeeping Mistakes That Cost the Most
Most of these have already come up. Collected in one place, in the order I'd fix them:
- Booking net payouts as revenue. Revenue lands at the wrong number, fees disappear, and sales tax looks like income.
- Expensing inventory when you buy it. Gross margin turns into a random number.
- Leaving freight and duties out of product cost. Every unit looks more profitable than it is.
- Mixing personal and business spending on the same card. It wrecks the clean audit trail you'll want the first time a lender or buyer asks for your books.
- Ignoring nexus until a state sends a letter. Back taxes, interest, and penalties on sales where you never charged the customer.
- Never measuring margin by channel. You keep pouring money into the channel that feels busiest instead of the one that pays.
Frequently Asked Questions
How is ecommerce bookkeeping different from traditional bookkeeping?
The biggest difference is that an online store has to unpack netted platform payouts, track inventory as an asset until it sells, and manage sales tax across many states. A service business can usually match one invoice to one deposit. An online store can't, because every payout blends sales, fees, refunds, shipping, and tax into a single number.
Should an ecommerce business use cash or accrual accounting?
Use accrual for your management books if you hold inventory, even if your CPA files taxes on a simpler basis.
How do I record Shopify payouts in QuickBooks?
Record each Shopify payout through a clearing account rather than as a single sales deposit. Post gross sales, shipping income, and sales tax collected into the clearing account, then post refunds and processing fees out of it. When the bank deposit arrives, match it to the clearing account, and the balance should return to zero. Tools like A2X or Synder automate these entries for every payout, which is worth it once you're past a few dozen orders a month.
How do I track inventory in ecommerce bookkeeping?
Record inventory purchases, including freight and duties, as an asset, then move each unit's cost to COGS when it sells. Choose FIFO or weighted average costing and use it consistently. Count physical inventory at least quarterly and book the difference as shrinkage.
Do I have to collect sales tax if Amazon already collects it for me?
Yes, for sales on your own website, because Amazon only collects and remits tax on orders placed through its marketplace. In many states, marketplace sales count toward the economic nexus threshold, so strong Amazon sales can create a filing obligation for your Shopify store in states where you never expected one.
How often should an online store reconcile its books?
Clear payouts weekly and fully reconcile every bank, card, and processor account monthly.
When should I hire an ecommerce bookkeeper?
Hire one once you sell on two or more channels, hold inventory at a 3PL or FBA, or register for sales tax in multiple states. Books that keep falling a month or more behind are also a clear sign. Look for someone with specific ecommerce experience, since clearing accounts and landed cost aren't part of every bookkeeper's routine.
If your books still treat every Shopify deposit as a sale, you already know where to start. Fix that one line and half the other numbers start telling the truth.
Have more questions? Browse our complete FAQ hub →



