Ecommerce bookkeeping fails in a specific way: the bank feed shows deposits from Shopify, Amazon, or Stripe, and those deposits get recorded as revenue. They aren't. A payout is revenue minus fees, minus refunds, minus holds — and until the books unpack that, every number downstream is wrong.
Payouts are not revenue
A $9,400 Shopify payout might be $10,000 of sales, minus $290 of processing fees, minus $310 of refunds. Recorded as '$9,400 revenue,' your books understate sales, hide your true fee cost, and make refund problems invisible. The fix is recording gross sales, fees, and refunds as separate lines, with the payout just moving money to the bank.
Every platform publishes a settlement or payout report that breaks this down. The bookkeeping job is reconciling those reports to the bank deposits — monthly, every month, for every channel.
Inventory and cost of goods sold
Inventory purchases are not an expense when you buy; they become cost of goods sold when units sell. Expensing a $20,000 container on arrival makes the purchase month look disastrous and the following months look like pure profit, which is exactly backwards for deciding ad budgets. A monthly COGS entry from units sold — even using a reasonable average cost — beats pretending the problem doesn't exist.
Sales tax is someone else's money
Sales tax collected rides inside your payouts but was never yours. Book it to a liability account as it's collected and clear the account when you remit. Sellers who leave it mixed into revenue spend it by accident and meet the shortfall at filing time.
When the channels are months behind
Unpacking months of payouts across multiple channels is tedious, mechanical work — which is exactly why it's worth handing off. We catch up behind books at $199 for each month behind, reconciled to your settlement reports, within 2 days and guaranteed in writing. Ongoing it's $199/month flat with your P&L and Balance Sheet delivered by day 2. No contracts — instant quote on our homepage.