Ecommerce bookkeeping is the work of turning order-level activity from your sales channels — a Shopify store, Amazon, a payment gateway like Stripe — into accurate monthly books: revenue recorded gross when sales happen, platform and payment fees booked as expenses, cost of goods sold (COGS) matched to the units that actually sold, and sales tax tracked as money held for states, not income. It applies to any US business selling products online. The biggest limitation: bank deposits are not sales. Every deposit arrives net of fees, refunds, and reserves, so booking deposits as revenue misstates every month. The second boundary: the US has no federal sales tax — collection rules are set state by state.
Quick answer
Keep one set of books, but record each channel’s activity gross — not net. For every payout from Shopify Payments, Stripe, or Amazon, bridge from gross customer charges down to the net deposit by subtracting refunds, platform fees, and processing fees; book those deductions into refund and fee-expense accounts, park collected sales tax in a liability account, and post COGS from inventory movement, not from payouts. At month end, every gateway clearing account should tie to bank deposits plus documented amounts still in transit. The full month-end multichannel reconciliation map is below.
For broader sector guidance, see our industry finance guides for small businesses. This article covers the bookkeeping workflow; choosing a provider is covered separately in our guide to finding the right ecommerce accountant, and pricing or cash-runway strategy is a CFO-level topic, not bookkeeping.
What makes ecommerce bookkeeping different?
A service business invoices a client and later receives that exact amount. An ecommerce seller never does: each channel batches hundreds of orders, deducts its costs, and wires the remainder. Three differences follow.
Deposits are net figures, and they lag the sale. Shopify’s help center explains that payouts go to your designated bank account and provides a payout reconciliation report covering “balance activity, fees, and payouts” (Shopify Help Center, accessed July 27, 2026). Stripe pays out on a schedule — the standard US settlement cycle is T+2 business days, with the first payout typically 7 to 14 days after the first payment (Stripe payout documentation, accessed July 27, 2026).
Tax forms report gross, not net. As of July 2026, a third party settlement organization (TPSO) — the Internal Revenue Service (IRS) term for payment apps and online marketplaces — must issue Form 1099-K when payments for goods or services exceed $20,000 across more than 200 transactions, a threshold restored by the One, Big, Beautiful Bill Act, per the IRS page Understanding your Form 1099-K (accessed July 27, 2026). The form reports gross payments before refunds and fees — so neither your 1099-K nor your bank deposits equals revenue. Your books are the bridge between the two.
Sales tax rides along with revenue. Channels may collect tax you owe (your own store) or tax the marketplace owes (Amazon in facilitator states). The two must never mix in your accounts.
How should you set up the books?
Three decisions come before any reconciliation.
Accounting basis. Under US Generally Accepted Accounting Principles (GAAP), revenue is accrued when the sale occurs and costs are matched to that period. Cash-basis books are simpler but cannot show per-channel margins or month-end inventory — usually the point of ecommerce reporting. Practical approach: accrual-style management books, with the tax return filed under whatever method the business qualifies for.
Federal tax treatment of inventory. The general federal rule is that a business producing, purchasing, or selling merchandise “must keep an inventory and use an accrual method for purchases and sales of merchandise,” per IRS Publication 334. The exception: a “small business taxpayer” meeting the Internal Revenue Code section 448(c) gross receipts test — average annual gross receipts of no more than $32 million over the prior three tax years for tax years beginning in 2026, per IRS Rev. Proc. 2025-32 — may treat inventory as non-incidental materials and supplies or follow its financial accounting treatment. Book accounting and tax treatment can legitimately differ; decide the tax method with a tax professional.
Chart of accounts. At minimum: revenue per channel, shipping income, a refunds/contra-revenue account, fee expense per channel, sales tax payable (a liability), a clearing account per payment gateway, and inventory and COGS accounts. Clearing accounts power the map below: gross sales and fees are posted against the clearing account as sales occur, and each payout sweeps it to cash. A clearing account that does not return to roughly zero after payouts post is your first error signal.
The month-end multichannel reconciliation map
This is the core workflow — the path from a gateway deposit back to net sales, fees, COGS, returns, and inventory. Run it monthly, per channel, in this order.
- Pull the source reports. Shopify’s payout reconciliation report for the month, Stripe’s payout and balance-transaction reports, and each Amazon settlement report covering the month. Amazon’s seller documentation describes that report as follows:
“The Settlement Report includes all orders and adjustments for the settlement period, showing the details of the disbursement to your bank account.” — Amazon Services LLC, Selling on Amazon Guide to XML
- Match every bank deposit to a payout. Tie each bank credit to a Shopify payout, Stripe payout, or Amazon settlement ID. Unmatched amounts are usually deposits in transit (Stripe sales from the last business day or two settle next month); record them as reconciling items, not errors.
- Bridge each payout from gross to net. Verify: gross customer charges − refunds − platform fees − processing fees − amounts withheld = net deposit, as in the worked example below.
- Split sales tax out of revenue. Tax collected on your own store is a liability to the state; tax a marketplace collected as facilitator is neither your revenue nor your liability (details below).
- Post COGS from inventory, not payouts. Update units and cost, then compute COGS from the inventory roll-forward.
- Clear each gateway account to zero, leaving only documented timing differences.
Worked example: one hypothetical month across three channels
The following is a hypothetical illustration with made-up inputs for a fictional US seller, “Acme Trail Gear,” for July 2026 — a book-accounting (management) view, not a tax calculation. The store sells on its own Shopify site (paid through Shopify Payments), on Amazon (Fulfillment by Amazon, or FBA, where Amazon warehouses and ships the goods), and through a side storefront processing cards through Stripe.
Made-up inputs. Shopify: $40,000 product sales, $2,000 shipping charged, $2,400 sales tax collected, $1,100 refunds (of which $100 is refunded tax), $1,300 processing fees. Amazon: $23,000 product sales, $1,000 refunds, $1,900 marketplace-facilitator tax that Amazon collects, withholds, and remits; fees are a 15% referral fee of $3,450 (15% is the real rate for many categories on Amazon’s published fee schedule, accessed July 27, 2026), $2,200 FBA fulfillment fees, $250 storage fees, and the $39.99 Professional-plan subscription. Stripe: $8,700 product, $700 shipping, $600 sales tax, no refunds, $326 fees (a made-up blend of 2.9% of $10,000 plus $0.30 on 120 charges).
Table 1: Payout bridge per channel — gross customer charges down to net bank deposit (hypothetical, USD).
| Line item | Shopify | Amazon | Stripe | Total |
|---|---|---|---|---|
| Gross product sales | $40,000.00 | $23,000.00 | $8,700.00 | $71,700.00 |
| Shipping charged to customers | $2,000.00 | $0.00 | $700.00 | $2,700.00 |
| Sales tax collected | $2,400.00 | $1,900.00 | $600.00 | $4,900.00 |
| Refunds issued | ($1,100.00) | ($1,000.00) | $0.00 | ($2,100.00) |
| Marketplace-facilitator tax withheld by Amazon | $0.00 | ($1,900.00) | $0.00 | ($1,900.00) |
| Platform and payment fees | ($1,300.00) | ($5,939.99) | ($326.00) | ($7,565.99) |
| Net deposit to bank | $42,000.00 | $16,060.01 | $9,674.00 | $67,734.01 |
Interpretation: each column foots — for example, Shopify’s $40,000 + $2,000 + $2,400 − $1,100 − $1,300 = $42,000, which is what actually reached the bank. Note how far deposits ($67,734.01) sit from gross product sales ($71,700.00): an owner booking deposits would understate sales and miss $7,565.99 of deductible channel fees. Amazon’s facilitator tax appears once collected and once withheld, netting to zero — correctly excluded from revenue.
From the same inputs: net product revenue is $71,700.00 − $2,000.00 refunded merchandise = $69,700.00; adding $2,700.00 shipping income gives net revenue of $72,400.00. Sales tax payable is $2,400 − $100 refunded + $600 = $2,900.00. Cross-check: $72,400.00 − $7,565.99 fees + $2,900.00 tax held = $67,734.01 — exactly the deposits.
Table 2: COGS and gross profit for the same hypothetical month (accrual book view, USD).
| Line | Method | Amount |
|---|---|---|
| Beginning inventory, July 1 | count at cost | $30,000.00 |
| Plus: purchases (including freight-in) | invoices | $22,000.00 |
| Less: ending inventory, July 31 | count at cost | ($18,000.00) |
| Cost of goods sold | $30,000 + $22,000 − $18,000 | $34,000.00 |
| Net revenue (from Table 1 inputs) | $69,700 + $2,700 | $72,400.00 |
| Gross profit | $72,400 − $34,000 | $38,400.00 |
Interpretation: gross margin is $38,400 ÷ $72,400 = 53.0%, and channel fees consume $7,565.99 ÷ $72,400 ≈ 10.5% of net revenue — two numbers a deposit-only view cannot produce. COGS comes from the roll-forward (beginning inventory + purchases − ending inventory), never from what suppliers were paid this month, because payment timing and stock movement are different things. If inventory counts are unreliable, every downstream figure is unreliable.
How do returns, refunds, and chargebacks hit the books?
Book refunds as contra-revenue in the period the return is accepted, against the same channel, and restore sellable units to inventory at cost so COGS is not overstated. Refunds on your own store also reverse the associated sales tax liability — the $100 refunded-tax line above. Chargebacks behave like a forced refund plus a dispute fee; track them separately, because a rising dispute rate can trigger processor reserves or holds (both Shopify and Stripe document these in the payout pages cited earlier). The reconciliation consequence: a refund or chargeback reduces a later payout, not the original one — which is why payout-level bridging beats deposit-level guessing.
How does sales tax work for a US ecommerce seller?
There is no federal US sales tax; every rule in this section is state law. Two systems run in parallel for a multichannel seller.
Marketplace sales. Since the 2018 South Dakota v. Wayfair Supreme Court decision, states may require sellers with no physical presence to collect tax once they cross an economic nexus threshold, and states have adopted marketplace facilitator laws pushing collection onto the marketplace. The Texas Comptroller’s remote seller guidance (accessed July 27, 2026) shows both halves: a safe harbor below $500,000 of Texas revenue in the preceding twelve months, and the rule that a remote seller whose only sales run through a marketplace provider that certifies it is collecting and reporting the tax on the seller’s behalf:
“is not required to hold a Texas tax permit.” — Texas Comptroller of Public Accounts
Thresholds vary — $500,000 in Texas, $100,000 in many states — so confirm each state’s current rule; every state with a general sales tax now has an economic nexus rule, per the Sales Tax Institute’s state-by-state guide (accessed July 27, 2026). For multistate registration, 23 full member states plus one associate member participate in the Streamlined Sales Tax (SST) system, which lets a seller register in member states through one system, per the SST Governing Board (accessed July 27, 2026).
Own-store sales. On your own storefront you collect the tax and you owe it. The California Department of Tax and Fee Administration puts the default posture plainly in Publication 73:
“As a seller, you are responsible for paying the correct amount of sales tax to us.” — California Department of Tax and Fee Administration
Hence the liability treatment in Table 1: collected tax sits in sales tax payable until remitted and never touches revenue, while facilitator-collected tax is excluded except as settlement detail. RFS implemented this split for a US-based client — consolidating Shopify, Amazon, and eBay data and setting up multistate sales tax workflows for a Texas ecommerce retailer — documented in our ecommerce financial optimization case study. One client’s workflow is an example, not a promised outcome.
What records should you keep, and for how long?
“Good records will help you monitor the progress of your business, prepare your financial statements, identify sources of income, keep track of deductible expenses…” — Internal Revenue Service, Recordkeeping
Keep every channel’s settlement reports, payout reports, order exports, fee invoices, refund logs, inventory counts, and supplier invoices. Under IRS retention guidance, keep records supporting a return for at least 3 years generally, 6 years if income was underreported by more than 25% of gross income, 7 years for bad-debt or worthless-securities claims, at least 4 years for employment tax records, and indefinitely if a return was not filed or was fraudulent. States add their own layer — Texas requires records of marketplace sales for at least four years, per the Comptroller page cited above. Because Form 1099-K reports gross payments while your deposits are net, your reconciliation files are the documentation that explains the difference.
FAQs
Can I just record my bank deposits as sales?
No. Deposits are net of processing fees, platform fees, refunds, and reserves, and they arrive days after the sale. Booking deposits hides deductible fees, misstates monthly revenue, and will not tie to the gross amounts on Form 1099-K.
Do I have to collect sales tax in every state I ship to?
Not automatically. You collect where you have nexus — physical presence, or economic nexus after crossing a state’s threshold (for example, $500,000 of Texas revenue for remote sellers; $100,000 in many states). Marketplaces usually collect on marketplace sales under facilitator laws. Rules differ and change, so confirm with the state revenue department or a state-tax professional.
Is the sales tax Amazon collects my revenue?
No. Where Amazon acts as a marketplace facilitator, it collects and remits the tax; those amounts appear on your settlement report but are withheld from your disbursement — neither your revenue nor your liability. Tax collected on your own storefront is your liability until remitted.
When is it time to get help with ecommerce bookkeeping?
When clearing accounts do not tie out, when you add a third channel or a second nexus state, or when inventory counts and COGS are estimates. At that point, reconstructing payouts by hand usually costs more than a bookkeeper who runs this map monthly — see what is included in our remote bookkeeping services.
The bottom line
Run one monthly loop: pull each channel’s payout and settlement reports, bridge every deposit from gross charges to net cash, book revenue gross and fees as expenses, move sales tax into a liability account (excluding marketplace-collected tax), post COGS from the inventory roll-forward, and clear each gateway account to zero. Deposits stop being a mystery the first month you run it. If you would rather have a team run it for you, scope your ecommerce books with our remote bookkeeping services, review the US ecommerce client case study for the workflow in practice, and browse the Industry Finance Guides hub for related topics.
This article is general educational information, not tax, legal, or accounting advice. Federal tax rules, state sales tax thresholds, marketplace policies, and platform fee schedules change over time and apply differently to different facts; consult a qualified tax professional and your state revenue department before acting on any specific situation described here.