Every e-commerce founder eventually asks a version of the same question: which channel, product or campaign actually makes money? The answer lives in accounting data, and whether you can get it depends on decisions made long before you thought to ask.
Why your platform analytics cannot answer this
Shopify knows what it sold. Meta knows what it spent. Stripe knows what it settled. None of them knows what your supplier charged, what the customs agent invoiced, what your VAT actually cost you in each country, or what the currency conversion took.
Accounting is the only system that sees every euro from every source. That is its structural advantage over every analytics dashboard you own. Most businesses waste it by structuring the books for the tax return instead of for the questions they will want answered.
The chart of accounts is a schema
A minimal chart of accounts satisfies the annual report and tells you nothing. The distinction that matters most is separating things that behave differently:
- Cost of goods separate from fulfilment. Product cost and shipping cost scale differently and respond to different decisions
- Platform fees separate from payment processing fees. One is a channel cost, the other a payment method cost, and they belong in different comparisons
- Advertising separate by platform, not one marketing account
- Refunds and chargebacks separate from discounts. All three reduce revenue and each means something completely different
- Currency conversion losses as their own line. Otherwise they silently distort margin
None of this is exotic. All of it is invisible if the bookkeeping posts a platform payout as one revenue line.
Dimensions are what actually unlock analysis
Accounts answer what was spent. Dimensions — tags on each transaction — answer where it belongs. Most accounting software supports them and most small companies never use them.
For e-commerce the dimensions worth having from day one:
- Channel. Own store, Amazon, Etsy, wholesale, each marketplace separately
- Country or VAT jurisdiction. Because your obligations and your margin both differ by country
- Product line or category. Not each SKU, which is unmanageable, but the groupings you actually make decisions about
With those three, questions that are otherwise a week of spreadsheet work become a report: margin by channel after all costs; whether your German sales are profitable once local VAT and returns are counted; which category funds the others.
Adding dimensions later does not fix history. You can start tagging today, but nobody is going back to recode two years of transactions, so the comparison you want in year three has to be set up in year one. This is the single cheapest decision in the whole of e-commerce accounting and the one most often skipped.
Reconciliation is what makes the data trustworthy
Structure is worthless if the numbers are wrong. For e-commerce that means platform and processor reconciliation every month: gross sales, fees, refunds, chargebacks and reserves each recorded separately, and the resulting balance matching what the processor says it holds.
A business that reconciles monthly has a dataset. A business that posts payouts as revenue has a bank statement with extra steps, and no amount of analysis on top of it will produce a correct answer.
Where inventory changes things
If you hold stock, when you recognise cost of goods determines whether monthly margin means anything. Expensing purchases as you buy makes a month with a large restock look catastrophic and the following month look excellent, when nothing changed. Proper cost of goods matching is more work; without it, monthly reporting is noise.
What good looks like at each stage
- Starting out. Correct account separation and monthly reconciliation. Dimensions on channel even with one channel, because you will add the second
- Multi-channel. All three dimensions live, monthly margin by channel, VAT tracked by jurisdiction
- Holding stock. Cost of goods properly matched, inventory valued, margin by product line meaningful
- Scaling. Accounting data feeding a reporting layer that operations actually reads, not just a set of statements filed once a year
Frequently asked questions
Why can't Shopify analytics tell me my real profit?
Because it only sees what it sold. It does not see supplier invoices, customs charges, VAT in each country, currency conversion or refunds settled elsewhere. Accounting is the only system that sees every cost.
What dimensions should an e-commerce business track?
Channel, country or VAT jurisdiction, and product line or category. With those three you can measure margin by channel after all costs, profitability by country, and which categories subsidise others.
Can I add accounting dimensions later?
You can start tagging at any time, but historic transactions do not get recoded in practice. Any comparison you want across years has to be set up before the period you want to compare.
How does inventory affect monthly reporting?
If purchases are expensed when bought rather than matched to sales, a month with a large restock looks like a loss and the next looks unusually profitable. Without proper cost of goods matching, monthly margin is noise.
Tagsecommerce accountingchart of accountsdata structureunit economics
General information, not tax advice
This article reflects Estonian law as it stands on the date shown. Rules change and individual circumstances differ - confirm your own position with us before acting.