Accounting for E-commerce Businesses

A complete bookkeeping guide for Estonian online stores — chart of accounts, revenue recognition, inventory valuation, payment processor reconciliation, multi-currency management, and the monthly close process.

Chart of Accounts Gross Revenue Inventory Returns Stripe Shopify Multi-Currency Monthly Close
5th Monthly Close Target
FIFO Standard Inventory
Gross Revenue Recognition
3 Processor Types
7 yrs Record Retention
€500 Equipment Write-Off

5 Key Takeaways From This Page

Gross revenue — not net settlements — belongs in your P&L
Recording what Stripe or Shopify deposits in your bank as revenue understates your top line, hides platform costs, and violates accounting standards. Always record gross sales and fees separately.
Inventory must be reconciled every month — not annually
Stock levels change daily through sales, purchases, returns, and write-offs. An inventory value that is only updated at year-end creates materially incorrect COGS figures in every monthly P&L produced during the year.
Every non-EUR transaction requires a rate at the transaction date
Foreign currency orders, supplier payments, and processor settlements must each be converted to EUR at the exchange rate on the specific date of the transaction — not an average rate or the month-end rate.
Payment processor reconciliation is its own monthly workstream
Each processor — Stripe, PayPal, Shopify Payments, Wise — generates its own transaction history, fee structure, and settlement timing. Each needs its own reconciliation before the monthly close is complete.
Your chart of accounts determines whether your reports mean anything
A generic chart of accounts built for a service company produces meaningless e-commerce financials. The right structure — with separate accounts for each revenue channel, payment processor, and cost category — makes every report actionable.

What does accounting for an e-commerce business involve? Double-entry bookkeeping that captures gross revenue from each sales channel separately, records all platform fees as cost of revenue, values inventory using FIFO or weighted average, reconciles each payment processor to the accounting system monthly, handles returns and credit notes correctly, revalues foreign currency balances at month-end, and produces a monthly P&L, balance sheet, and cash flow statement. This page covers each of those workstreams in full.

Section 1 — Chart of Accounts for an E-commerce OÜ

How to structure your accounting codes to produce meaningful reports — by channel, by cost type, by processor

Why a Dedicated E-commerce CoA Matters

A chart of accounts designed for a standard Estonian OÜ will have a single ‘Revenue’ account and a ‘Cost of Goods Sold’ account. For an e-commerce business, that structure makes it impossible to answer the most basic management questions: which channel is most profitable, what is my true gross margin after platform fees, how much of my COGS is shipping vs product cost?

The structure below creates the granularity needed for meaningful reporting without becoming so complex that the monthly close takes too long. Adapt it to your specific channels and cost profile — not every account will be relevant for every business.

Code Account Name Notes
1000–1999 ASSETS
1010 Cash — Estonian Bank (EUR) Primary operating account
1020 Cash — Wise Business (EUR) Wise EUR balance
1030 Cash — Wise Business (USD) Wise USD balance — revalue monthly
1040 Cash — Stripe Reserve Stripe rolling reserve; not immediately available
1050 Cash — PayPal Balance PayPal EUR/USD balance
1060 Cash — Shopify Payments Shopify payout pending balance if applicable
1100 Trade Receivables Outstanding customer invoices (B2B only)
1110 VAT Receivable Input VAT reclaimable from EMTA
1200 Inventory — Finished Goods Stock held for sale; FIFO or weighted average
1210 Inventory — In Transit Stock paid for but not yet received
1220 Inventory — Held by 3PL Stock at third-party logistics warehouse
1300 Prepayments Annual subscriptions, deposits paid in advance
1500 Fixed Assets — Equipment Packaging machines, warehouse equipment > €500
2000–2999 LIABILITIES
2010 Trade Payables Supplier invoices unpaid at month-end
2100 VAT Payable — Estonian KMD Output VAT owed on Estonian sales
2110 VAT Payable — OSS EU B2C VAT collected; payable via OSS return
2120 VAT Payable — IOSS Import VAT collected; payable via IOSS return
2200 Customs Duty Payable Duties assessed on imports not yet paid
2300 Deferred Revenue Prepaid orders not yet shipped / gift cards sold
2400 Refunds Payable Refunds approved but not yet processed
2500 Loans and Borrowings Inventory financing, credit lines
3000–3999 EQUITY
3000 Share Capital Registered share capital (minimum €2,500)
3100 Share Premium Investment above par
3300 Retained Earnings Accumulated profit/loss from prior periods
3400 Current Year Result Net P&L for current financial year
4000–4999 REVENUE
4010 Revenue — Shopify Store Gross product sales via Shopify direct
4020 Revenue — Amazon (EU) Gross Amazon EU marketplace sales
4030 Revenue — Amazon (US) Gross Amazon US marketplace sales
4040 Revenue — Etsy / Other Marketplace Other platform gross sales
4050 Revenue — Wholesale / B2B Direct B2B invoiced sales
4060 Revenue — Shipping Charged to Customer Shipping revenue billed separately
4090 Revenue — Other Miscellaneous income
5000–5999 COST OF REVENUE (COGS)
5010 Product Cost — Domestic Supplier Cost of goods purchased locally
5020 Product Cost — Import CIF/DDP cost of imported goods
5030 Customs Duty Import duties — capitalised into product cost or expensed
5040 Shipping Cost — Outbound Courier cost to deliver to customers
5050 Fulfillment — 3PL Fees Pick, pack, store fees from 3PL provider
5060 Platform Fees — Shopify Payment processing and subscription fees
5070 Platform Fees — Amazon FBA Referral fees, FBA storage and fulfilment
5080 Platform Fees — PayPal/Stripe Transaction processing fees
5090 Packaging Materials Boxes, tape, inserts — directly attributable to orders
5100 Returns and Write-offs Cost of goods written off on return or damage
6000–6999 OPERATING EXPENSES
6010 Marketing and Advertising Google Ads, Meta, influencer, email marketing
6020 Software and Subscriptions Shopify plan, apps, analytics tools
6030 Accounting and Legal Professional fees
6040 Warehouse and Storage Rent and operating costs if own warehouse
6050 Payroll — Operations Staff salaries + social tax
6060 Travel and Office Trade fairs, supplier visits, office costs
7000–7999 FINANCIAL ITEMS
7010 FX Gain / (Loss) Realised and unrealised currency movements
7020 Interest and Bank Charges Bank fees, loan interest

Section 2 — Revenue Recognition: Gross Sales, Returns, and Marketplace Rules

When to recognise revenue, how to handle deferred revenue, and what changes when a marketplace is the deemed supplier

The Revenue Recognition Timing Rule

For e-commerce, revenue is recognised when control of the goods transfers to the customer — typically when the order is shipped for physical goods, or when the digital product is made available for download. Payment received in advance (before shipment) creates a deferred revenue liability. Payment received after delivery (credit terms for B2B) creates a trade receivable.

For most DTC (direct-to-consumer) online stores using Shopify or WooCommerce, revenue is recognised at the point of dispatch. Orders placed in December but not shipped until January are January revenue. This timing rule affects both the P&L and the VAT period — VAT is owed in the period of supply, not the period of payment.

Journal Entry 1 — Customer Order Placed and Paid (B2C, Estonian customer)

Account Debit (DR) Credit (CR)
Cash / Stripe €124.00
Revenue (gross sale) €100.00
VAT Payable — KMD €24.00

€100 net + €24 VAT. Revenue recognised at point of dispatch — if not yet shipped, substitute ‘Deferred Revenue’ for Revenue until shipment.

Journal Entry 2 — Goods Dispatched (and COGS recognised)

Account Debit (DR) Credit (CR)
COGS — Product Cost €42.00
Inventory €42.00
COGS — Shipping Outbound €6.50
Cash / Courier Payable €6.50

COGS is recognised at the same time as revenue — when goods leave the warehouse. Both entries happen on the same date.

Deferred Revenue — Pre-Paid Orders and Gift Cards

Any payment received before the corresponding goods are delivered or service performed creates a deferred revenue liability. For e-commerce, the two most common deferred revenue scenarios are pre-orders (customer pays now, product ships in 6 weeks) and gift cards (customer buys a gift card; revenue is recognised when the card is redeemed, not when it is sold).

Scenario Cash Received Revenue Recognised Balance Sheet Effect
Pre-order — paid now, ships in 6 weeks On payment date On shipment date DR Cash / CR Deferred Revenue on payment; reverses on shipment
Gift card sold On sale date On redemption date DR Cash / CR Deferred Revenue; stays on balance sheet until redeemed
Subscription box — monthly plan, paid annually On payment date 1/12 per month as boxes are shipped DR Cash / CR Deferred Revenue; release monthly as performance obligation met

Marketplace Deemed Supplier Rules — When the Marketplace Collects VAT

Under the EU’s 2021 VAT reform, online marketplaces (Amazon, Etsy, Zalando, ASOS Marketplace, etc.) are treated as ‘deemed suppliers’ for VAT purposes on certain transactions. This means the marketplace — not you — collects and remits the VAT on those sales. Your invoice to the marketplace is then zero-rated, and the marketplace issues its own VAT receipt to the consumer.

Sale Type Goods Location Consumer Location VAT Collected By Your Invoice to Marketplace
B2C goods ≤ €150, imported from outside EU Outside EU EU consumer Marketplace (via IOSS) Zero-rated — no VAT
B2C goods from EU warehouse, sold via marketplace EU (e.g. Amazon DE FBA) Same EU country consumer Marketplace Zero-rated — marketplace remits
B2B goods via marketplace Any VAT-registered business Reverse charge — buyer accounts for VAT Zero-rated invoice to business buyer
Goods sold via your own website (not marketplace) Any EU consumer You (via OSS) Not applicable — you charge and remit

Deemed supplier rules affect your revenue recording — not your gross marginWhen a marketplace collects VAT on your behalf, you still record the full gross sale value as revenue in your accounts. The VAT collection by the marketplace is their obligation — it does not reduce your revenue figure. What does happen: you cannot also claim input VAT on the transaction (because you did not charge the output VAT). Ensure your accounting correctly reflects that these transactions have a different VAT treatment in your KMD and OSS returns compared to sales where you collect the VAT yourself.

Section 3 — Inventory Valuation

FIFO vs weighted average — with fully worked examples showing how each method affects COGS and taxable profit

Why Inventory Valuation Method Matters

The inventory valuation method you choose directly determines your COGS figure each month — and therefore your gross profit and taxable income. In a period of rising supplier costs (inflation), FIFO produces a lower COGS (older, cheaper stock is sold first) and therefore higher gross profit. Weighted average smooths the effect. Neither method is more ‘correct’ — both are permitted under Estonian GAAP and IFRS — but once chosen, it must be applied consistently and disclosed in your accounting policies.

FIFO Method — Worked Example (T-shirt supplier, prices rising)

Event Units Unit Cost Total Cost Running Inventory Value
Opening balance (100 units @ €8.00) 100 €8.00 €800.00 €800.00
Purchase (200 units @ €8.50) 200 €8.50 €1,700.00 €2,500.00
Purchase (150 units @ €9.00) 150 €9.00 €1,350.00 €3,850.00
Sale of 220 units
COGS — 100 units @ €8.00 (oldest) −100 €8.00 €800.00
COGS — 120 units @ €8.50 −120 €8.50 €1,020.00
= Closing inventory (230 units) 230 €2,030.00
= Total COGS recognised €1,820.00

FIFO: oldest units sold first. Closing inventory held at most recent purchase costs. COGS = €1,820.

Weighted Average Method — Same Purchases and Sales

Event Units Unit Cost Total Cost Running Inventory Value
Opening balance (100 units @ €8.00) 100 €8.00 €800.00 €800.00
Purchase (200 units @ €8.50) 200 €8.50 €1,700.00 €2,500.00
Weighted avg after purchase: €2,500 ÷ 300 = €8.33
Purchase (150 units @ €9.00) 150 €9.00 €1,350.00 €3,850.00
Weighted avg after purchase: €3,850 ÷ 450 = €8.56
Sale of 220 units @ €8.56 avg
COGS — 220 units @ €8.56 −220 €8.56 €1,882.22
= Closing inventory (230 units @ €8.56) 230 €8.56 €1,967.78
= Total COGS recognised €1,882.22

Weighted average: COGS = €1,882 vs FIFO = €1,820. Difference of €62 reduces gross profit under WA in this rising-cost scenario.

Method COGS (in rising-cost environment) Closing Inventory Value Gross Profit Impact Best For
FIFO Lower (older, cheaper stock sold first) Higher (recent, higher cost stock remains) Higher gross profit Most e-commerce; favoured by IFRS; simpler to explain
Weighted Average Higher (blended cost sold each time) Lower (blended cost remains) Lower gross profit High-volume businesses with homogeneous SKUs; volatile pricing

Inventory Write-Offs and Adjustments

Stock that is damaged, expired, lost, or obsolete must be written off — its cost removed from inventory and expensed. This reduces your inventory balance and increases COGS for the period. Write-offs are a legitimate and tax-deductible expense but require documentation: a written record of what was written off, why, when, and at what value.

Journal Entry — Inventory Write-Off (damaged goods)

Account Debit (DR) Credit (CR)
COGS — Returns and Write-offs €340.00
Inventory €340.00

Write off 20 units at their carrying cost of €17 each. Document: date, SKU, reason (water damage in warehouse), units, unit cost, approver.

Section 4 — Payment Processor Reconciliation

Stripe, Shopify Payments, PayPal, and Wise — a complete reconciliation framework for each

The Reconciliation Principle — Three Layers

Every payment processor sits between your customers and your bank account. Money passes through three layers: customer charges (gross), processor fees (deducted), and bank settlement (net). Your accounting must capture all three layers, with the gross charge as revenue and the fees as COGS — even though only the net settlement appears in your bank statement.

The most common e-commerce reconciliation error is using the bank statement as the primary source for revenue entry. The bank statement shows only net settlements — it hides the fee structure, the individual order breakdown, and any refunds already netted off before settlement. Always start from the processor’s transaction report, not the bank.

Stripe Monthly Reconciliation — October 2024

Item Amount (€) Running Total (€)
Gross charges to customers €18,450.00 €18,450.00
· Successful payments €19,100.00
· Refunds issued −€650.00
Less: Stripe processing fees −€553.50 €17,896.50
· Per-transaction fee (1.4% + €0.25 per txn) −€553.50
Less: Stripe reserve movement +€120.00 €18,016.50
· Reserve held from prior periods released +€120.00
Expected bank settlement (October) €18,016.50 €18,016.50
Actual bank receipts (Stripe deposits) €18,016.50
Reconciliation difference €0.00

Monthly Stripe Journal Entry (October 2024)

Account Debit (DR) Credit (CR)
Cash — Stripe (gross charges) €18,450.00
Revenue — Shopify Store €15,163.93
VAT Payable — KMD (24% on EST B2C) €3,336.07
COGS — Platform Fees (Stripe) €553.50
Cash — Stripe €553.50
Cash — Estonian Bank (settlement) €17,896.50
Cash — Stripe €17,896.50

Revenue split: €15,163.93 net + €3,336.07 VAT = €18,500 gross for Estonian B2C sales. Non-Estonian sales recorded separately with appropriate VAT treatment.

PayPal Reconciliation — Key Differences

PayPal complicates reconciliation because it holds balances in multiple currencies, applies fees differently to domestic and international transactions, and may hold funds for extended periods. The reconciliation approach is the same as Stripe but requires an additional FX conversion layer for non-EUR balances.

PayPal Complexity Issue Solution
Multi-currency balances PayPal holds GBP, USD, SEK separately Maintain separate ledger accounts for each PayPal currency; revalue monthly
Auto-conversion PayPal sometimes converts currencies automatically at unfavourable rates Disable auto-conversion; receive in native currency; convert manually via Wise
Pending and held funds Some funds held for 21+ days for new sellers Track as ‘PayPal Reserve’ account; only move to bank account when settled
Fee structure Domestic vs cross-border fees differ Record gross charge; fees as separate COGS line; verify per transaction report
Refund timing Refund processing time may span months Credit note in the month issued; PayPal balance adjustment in the same month

Wise Business — Multi-Currency Account Reconciliation

Wise is not a payment processor — it is a multi-currency receiving account. It does not charge per-transaction fees on incoming transfers, making it popular for international B2B invoice payments and supplier transactions. The reconciliation is straightforward but requires monthly FX revaluation for each non-EUR balance.

Wise USD Balance — Month-End FX Revaluation

Account Debit (DR) Credit (CR)
Cash — Wise USD (opening balance, at prior rate)
Transaction: received $5,000 @ 1.0800 $5,000 €4,630
Transaction: paid supplier $2,200 @ 1.0850 $2,200
Closing USD balance: $2,800
Prior month-end rate used: 1.0800 → €2,593
Current month-end rate: 1.0950 → €2,557
FX Loss (unrealised) €36
Cash — Wise USD €36

Revalue all foreign currency monetary balances at the closing rate each month-end. FX gain or loss recognised in P&L — even if no actual conversion occurred.

Section 5 — Multi-Currency Management

Recording transactions in foreign currencies, monthly revaluation, and managing FX risk

The Rule: Transaction Date Rate for Every Entry

Every foreign currency transaction must be recorded at the exchange rate on the date the transaction occurs — not an average monthly rate, not the month-end rate, not the rate you wished you had received. The transaction date rate is what creates an accurate EUR equivalent for each individual sale, purchase, or payment.

At month-end, all monetary items still denominated in foreign currency (bank balances, receivables, payables) must be restated at the month-end closing rate. The difference between the rate used when the item was first recorded and the month-end rate is an unrealised foreign exchange gain or loss — posted to P&L even though no cash conversion has occurred.

Currency Pair Rate Source When to Use When NOT to Use
EUR/USD Bank of Estonia daily rate OR bank statement rate Transaction date; month-end closing rate Average rates; invoice date rate for cash-basis payments
EUR/GBP Bank of Estonia daily rate OR bank statement rate Same as above Approximate rates from internet searches
EUR/SEK, EUR/DKK etc. European Central Bank or Bank of Estonia Same as above Prior month rates applied to current month transactions

Wise and Revolut show the transaction rate — use itWise Business and Revolut Business show the exact exchange rate applied to every transaction in your account statement. This eliminates the need to look up rates separately. When you download your monthly Wise statement and import it to your accounting software, the EUR equivalent is already calculated at the correct transaction-date rate. This is one practical reason why online stores that handle multiple currencies benefit from using Wise or Revolut as primary accounts rather than traditional banks, which often apply their own (less favourable) conversion rates without clear rate disclosure per transaction.

Realised vs Unrealised FX Gains and Losses

Type When It Occurs P&L Impact Cash Impact Example
Realised FX gain When a foreign currency monetary item is settled (converted or paid) Posted to P&L immediately Yes — cash received differs from recorded EUR value USD receivable recorded at 1.05; collected when rate is 1.02 → FX gain of €30 per $1,000
Unrealised FX gain/loss At month-end revaluation of open foreign currency balances Posted to P&L; reverses if rate moves back No — no cash changes hands USD bank balance of $10,000 revalued from 1.08 to 1.10 → unrealised FX loss of €168

Section 6 — Returns, Refunds, and Credit Notes

The complete accounting treatment — revenue, inventory, VAT, and payment processor effects

Why Returns Are a Multi-Entry Event

A return is not a single transaction in accounting — it is a chain of four linked entries that must all happen in the correct period and reference the correct original transactions. Missing any one of the four creates a discrepancy that will surface in the bank reconciliation, the KMD return, or the inventory count.

1
Revenue Reversal
Issue credit note — reduces revenue and VAT liability. Post in the month the credit note is issued.
2
Inventory Effect
If goods returnable: DR Inventory / CR COGS to restore stock at original cost. If damaged: write off as expense.
3
VAT Adjustment
Output VAT on the original sale is reduced by the VAT on the credit note. Declare on KMD in the month the credit note is issued.
4
Processor Refund
Stripe/PayPal processes the refund. Record the refund against the processor account, not as a new expense.

Return Scenario — Customer Returns €124 Order (€100 + €24 VAT)

Account Debit (DR) Credit (CR)
Revenue — Shopify Store €100.00
VAT Payable — KMD €24.00
Cash — Stripe (refund) €124.00
Inventory (if goods saleable) €42.00
COGS — Product Cost €42.00

Two separate journal entries on the same date. Inventory restored only if goods are confirmed saleable on inspection. Damaged goods: DR COGS Write-offs / CR Inventory instead.

Cross-Period Returns — When the Sale Was in a Prior Month

If a customer returns goods purchased in a prior month, the credit note is issued in the current month and all accounting entries (revenue reversal, VAT adjustment, inventory restoration) occur in the current month. You do not restate prior-month accounts. This is correct under both Estonian GAAP and IFRS — events in the current period are recorded in the current period.

The only exception is a material year-end adjustment: if a significant volume of December orders are returned in January, the year-end accounts should include an accrual for expected returns based on historical return rates. This ensures the December P&L is not overstated by sales that are subsequently reversed.

Year-End Returns Accrual — ExampleDecember gross revenue: €45,000

Historical return rate (last 3 months avg): 4.2%

Expected January returns of December sales: €45,000 × 4.2% = €1,890 gross value

Net value (excluding VAT): €1,890 ÷ 1.24 = €1,524

VAT component: €365

Product cost (COGS at 42%): €650

Year-end accrual entry:

Account Debit (DR) Credit (CR)
Revenue €1,524 (reversal of expected returns)
VAT Payable €365 (VAT on expected returns)
Returns Provision €1,890 (balance sheet liability)
Inventory €650 (expected stock to be returned)
COGS €650 (reverse cost of goods)

Provision reverses in January as actual returns are processed.

Section 7 — The E-commerce Monthly Close

Complete checklist from day 1 to day 5 after month-end

Why E-commerce Close Takes Longer Than a Service Business

A service OÜ closes the month with bank reconciliation, a few journal entries, and a VAT return. An e-commerce OÜ needs all of that plus: payment processor reconciliation (one per processor), inventory reconciliation, return processing, FX revaluation for every non-EUR balance, and a cross-check between the e-commerce platform’s revenue report and the accounting system totals. Done systematically, this takes 1–3 days. Done unsystematically, it takes a week and still leaves errors.

1
Day 1: Data Pull
Export transaction reports from all processors (Stripe, PayPal, Shopify). Pull order data from e-commerce platform. Download bank statements.
2
Day 2: Processor Recon
Reconcile each processor: gross charges → fees → refunds → settlement → bank arrival. One reconciliation per processor.
2
Day 2: Inventory Recon
Compare opening balance + purchases − COGS = closing balance. Investigate any discrepancy > €50. Write off confirmed losses.
3
Day 3: FX Revaluation
Revalue all non-EUR monetary balances at month-end closing rate. Post FX gains/losses to P&L.
3
Day 3: Journal Entries
Post all monthly journals: revenue by channel, COGS by category, returns, accruals, depreciation.
4–5
Day 4–5: Review & Sign-off
P&L, balance sheet, and inventory reviewed against prior month and budget. Unexplained variances investigated before close confirmed.

Monthly Close Checklist

Task Source Data Expected Output Sign-Off When
Stripe reconciliation Stripe transaction CSV + bank statement Gross revenue, fees, net settlement tied to bank Stripe balance = bank + reserve
PayPal reconciliation PayPal activity report + bank statement All transactions accounted for; FX noted PayPal balance reconciled to bank
Shopify revenue check Shopify Finance summary Shopify gross revenue = sum of channel accounts Shopify ≈ accounting revenue (within returns timing)
Inventory reconciliation Opening balance + purchase invoices − COGS Closing inventory = physical count (quarterly) Inventory balance within €100 tolerance
Returns and credit notes Return authorisations + credit notes issued All returns posted; inventory and VAT adjusted Zero outstanding unprocessed returns
FX revaluation Month-end rates from Bank of Estonia or ECB All foreign currency balances restated FX G/L account has current-month entries
VAT calculation Output VAT from sales; input VAT from purchases KMD figures ready for filing by 20th Output − input = KMD liability tied to ledger
P&L and balance sheet review Accounting system Management accounts ready for client No unexplained variances > 5% of prior month

Frequently Asked Questions

Yes — Shopify and Stripe serve different functions and produce different data. Shopify records your orders, products, and customer data — it shows you what was sold. Stripe (if you use Shopify Payments, Stripe is the underlying processor) records the financial transactions — what was charged, what fees were taken, and what was settled to your bank. Your revenue reconciliation starts with Shopify order data for the gross sale amounts, and the Stripe transaction report for the payment processing view. When Shopify Payments is enabled, Shopify’s Finance reports consolidate some of this — but you still need to trace from gross order value to net bank settlement for each month.

Each inventory location is a separate sub-account in your chart of accounts: Inventory — Estonian warehouse, Inventory — UK warehouse, Inventory — Amazon FBA (Germany). Stock transfers between locations are not sales — they are movements within your inventory system (DR Inventory Location B / CR Inventory Location A, at cost). Sales from each location are COGS entries at the carrying cost of that specific location’s stock. For Amazon FBA specifically: Amazon holds your stock and reports inventory levels in Seller Central — this report is your source for the FBA inventory balance each month-end.

Yes — shipping charges billed to customers are revenue. They should be recorded on a separate revenue line (e.g. ‘Revenue — Shipping Charged to Customer’) rather than netted against shipping costs. Your actual shipping cost (what you pay the courier) is recorded as COGS — Shipping Outbound. The difference between what you charge customers and what you pay the courier is your shipping margin, which appears in your gross profit. Many e-commerce businesses subsidise shipping (charging less than cost) — keeping these on separate lines makes that subsidy visible and measurable.

Each sale is recorded at the actual price charged to that customer — there is no need to normalise for different country pricing. If you sell a product for €25 to a German customer and €28 to a Swedish customer (different price lists), each sale is recorded at its actual amount in EUR. If the Swedish sale is in SEK, convert at the transaction-date rate to EUR. The different prices will naturally produce different per-unit gross margins — this is expected and visible in your channel-level P&L if you have separate revenue accounts by geography or channel.

The marketplace settlement is a single bank receipt that covers many individual orders. For accounting purposes, you should record the individual order-level revenue (from the marketplace’s settlement report, which itemises each order, its gross value, fees, and refunds) rather than treating the lump payment as a single revenue entry. Accounting software with marketplace integrations (e.g. A2X for Amazon or Shopify) can automate this breakdown, posting each order’s gross sale, fees, and refunds to the correct accounts and reconciling to the single bank settlement. For lower-volume sellers, the marketplace’s monthly settlement report provides the data needed to create monthly summary journal entries by category.

Ready to set up proper e-commerce accounting from day one?

Book a free 30-minute consultation. We configure your chart of accounts, connect your payment processors, and deliver clean monthly financials so you can focus on growing your store.

companyforbusiness.ee →