An ecommerce chart of accounts is retail’s COA with three new characters: platforms that take fees before you see the money, chargebacks, and shipping economics that can quietly eat the margin. Template below, ecommerce-specific accounts marked.
The numbering backbone
1000s Assets · 2000s Liabilities · 3000s Equity · 4000s Revenue · 5000s Direct costs / COGS · 6000s Operating expenses
Leave gaps between codes (1000, 1010, 1020…) so new accounts slot in without renumbering — the classic rookie regret is a packed sequence in year one.
Sample chart of accounts — ecommerce
| Code | Account | Type / note |
| 1000 | Operating bank account | Asset |
| 1050 | Platform clearing accounts (Amazon, Shopify, Stripe…) | Asset — one per platform; gross sales awaiting payout |
| 1100 | Inventory — on hand | Asset |
| 1110 | Inventory — at 3PL / FBA | Asset — stock you own in someone else’s warehouse |
| 2000 | Accounts payable | Liability |
| 2100 | Sales tax / VAT payable | Liability — multi-jurisdiction in ecommerce |
| 2200 | Customer deposits / unshipped orders | Liability until shipped |
| 3000 | Equity / retained earnings | Equity |
| 4000 | Sales revenue — by channel | Revenue — one per platform |
| 4100 | Refunds | Contra revenue |
| 4150 | Chargebacks | Contra revenue — track separately from refunds |
| 5000 | Cost of goods sold | COGS |
| 5100 | Platform fees & commissions | COGS-adjacent — the cost of the channel |
| 5200 | Merchant/payment processing fees | Cost of sale |
| 5300 | Shipping & fulfillment out | Cost of sale — the margin-eater |
| 6000 | Software subscriptions, ads, salaries… | Operating expenses |
Why the platform accounts matter most
The classic ecommerce bookkeeping error is recording the payout as revenue — netting away fees, refunds and reserves, and destroying every margin number downstream. The clearing-account structure fixes it: gross sales in, each fee to its own expense line, payout clears the balance. Suddenly “what does Amazon actually cost us as a channel?” is a report, not a research project. Chargebacks stay separate from refunds because they carry fees and signal fraud/dispute problems refunds don’t.
Channel-level revenue minus channel fees is exactly the input your CPA and LTV:CAC math needs — the COA is where unit economics start being measurable.
FAQ
What accounts are unique to ecommerce? Platform clearing accounts, inventory at 3PL/FBA, chargebacks separate from refunds, platform commissions, processing fees, and outbound shipping as a cost of sale.
Should I record Amazon/Shopify payouts as revenue? No — record gross sales and each fee separately via a clearing account; recording net payouts hides your true margins.
Are platform fees COGS or operating expense? Treat them as cost of sale (channel cost) — they scale with revenue and belong in gross-margin math, wherever your software files them.
Why separate chargebacks from refunds? Chargebacks carry penalty fees and dispute risk — they’re a fraud/quality signal, and blending them with routine refunds hides it.
