Ecommerce Bookkeeping Guide
A bookkeeping guide for ecommerce sellers: how to reconcile Shopify, Amazon and WooCommerce sales, track COGS, break out marketplace fees, handle returns and watch sales tax nexus.
Ecommerce bookkeeping looks nothing like a traditional shop. Sales come from three or four platforms, inventory sits in several places, fees reduce every transaction and the list of states where you owe sales tax can change from one quarter to the next.
These challenges are specific to online selling, and generic bookkeeping advice rarely covers them. This guide covers the records to keep and the routine that keeps ecommerce books accurate.
The Unique Challenges of Ecommerce Bookkeeping
Multi-Channel Sales Create Multi-Channel Chaos
Most ecommerce businesses sell on more than one platform. You may have started on Etsy, expanded to Shopify and added Amazon. Each platform has its own dashboard, transaction format and payout schedule.
Here is how that looks in practice. You sell a $45 product on Amazon on Tuesday. Amazon takes a $6.75 referral fee, a $5.40 FBA fee and charges $0.30 for the shipping label. That transaction is batched with 47 others and deposited as a lump sum on Friday. Meanwhile a customer on Shopify buys the same product through Shop Pay, and the deposit arrives the next business day minus the processing fee.
Multiply that by hundreds of transactions a month and reconciliation becomes the main job. The fix is to reconcile at the transaction level, not the deposit level, and to do it on a fixed schedule.
Inventory and COGS: The Numbers That Matter
Revenue is vanity. Cost of goods sold (COGS) is sanity. Without your true COGS you do not know your true profit, and pricing decisions rest on bad data.
COGS for ecommerce includes:
- Product cost: what you paid your supplier per unit
- Inbound shipping: freight, duties and customs fees to get inventory to your warehouse
- Warehousing: storage fees, including Amazon FBA storage fees, which change seasonally
- Packaging: boxes, mailer bags, branded inserts and tape
- Shrinkage: damaged, lost or expired inventory
Record the landed cost of each shipment and apply your chosen method every time that product sells, across every channel.
Example: You sell phone cases. You buy them at $4.50 each, pay $0.80 per unit for shipping and spend $0.40 on branded packaging. Your true COGS per unit is $5.70, not $4.50. On a $24.99 selling price, that is the difference between believing in an 82% margin and knowing it is closer to 77%. At 500 units a month, the gap is $600 of phantom profit a month.
Sales Tax Nexus: The Hidden Compliance Burden
Sales tax nexus is one of the most confusing parts of running an ecommerce business. Since the 2018 South Dakota v. Wayfair Supreme Court decision, states can require you to collect and remit sales tax without a physical presence, once you exceed their economic nexus threshold.
The simplified version: sell enough into a state and you owe that state sales tax.
Thresholds differ by state and are usually based on sales, transaction counts or both. Some states count marketplace sales, where the marketplace collects the tax for you, and others do not. Check each state’s rules directly.
Track sales by state throughout the year. Rates also vary within states down to the city and county level.
Marketplace Fees Eat Into Margins
Amazon alone has more than a dozen fee types: referral fees, FBA fulfillment fees, monthly storage fees, long-term storage fees, removal fees, advertising fees, return processing fees and more. Each one needs the right line on your books.
Putting every marketplace fee in a single “Amazon fees” bucket hides critical data. Break fees into their proper expense categories: advertising, fulfillment, storage and payment processing. Then you can see where the money goes and decide what to change.
Returns and Refunds Distort Revenue
Return rates vary a lot by product category, and apparel is usually higher than most. Each return triggers a chain of bookkeeping entries: revenue reversal, COGS adjustment, a possible restocking fee, return shipping cost and sometimes a write-off for damaged inventory.
Matching returns to original orders keeps monthly revenue and COGS accurate. Without matching, both numbers drift.
Payment Processor Reconciliation
Stripe batches payouts. PayPal holds funds. Amazon settles on its own cycle. Shop Pay deposits on yet another schedule. Every processor groups transactions differently, so matching a bank statement to individual orders takes a method.
Work from each processor’s payout report. Break each deposit into its orders, fees and adjustments, and check that the total matches the bank line to the penny.
A Monthly Routine for Each Platform
Shopify
Each month, pull:
- Every order, including line items, discounts and taxes collected
- Payout reports, matched to individual orders
- Refunds and exchanges, linked to original orders
- Transaction fees and subscription charges
- Third-party gateway data from PayPal, Stripe and others
Amazon
Amazon’s settlement reports are hard to read. Break them into:
- Product sales by SKU and marketplace
- FBA fees separated into fulfillment, storage and removal
- Advertising spend for Sponsored Products, Brands and Display
- Reimbursements for lost or damaged FBA inventory
- Returns and refund adjustments
Reconcile each deposit against the itemized settlement data so nothing is missed.
WooCommerce
Self-hosted stores give you more raw data. Export:
- Order data including product, shipping and tax line items
- Payment gateway records from Stripe, PayPal and Square
- Refund and cancellation records
- Subscription renewal data, where you sell subscriptions
Sample Monthly P&L for an Ecommerce Business
The tables below use illustrative figures for a mid-size seller doing about $50,000 a month across Shopify and Amazon. They show the layout, not a benchmark.
Revenue
| Line Item | Amount |
|---|---|
| Shopify gross sales | $28,500 |
| Amazon gross sales | $24,200 |
| Less: returns and refunds | ($5,270) |
| Net Revenue | $47,430 |
Cost of Goods Sold
| Line Item | Amount |
|---|---|
| Product cost (landed) | $14,800 |
| Packaging and shipping materials | $1,420 |
| Inbound freight | $980 |
| Inventory shrinkage and write-offs | $340 |
| Total COGS | $17,540 |
Gross Profit: $29,890 (63.0% margin)
Operating Expenses
| Line Item | Amount |
|---|---|
| Amazon referral fees | $3,630 |
| Amazon FBA fulfillment fees | $2,900 |
| Amazon storage fees | $480 |
| Shopify subscription and apps | $380 |
| Payment processing (Stripe and PayPal) | $1,190 |
| Shipping (Shopify orders) | $2,850 |
| Advertising (Amazon PPC and Meta) | $4,200 |
| Software and tools | $320 |
| Returns processing and restocking | $410 |
| Virtual assistant and contractor labor | $1,500 |
| Total Operating Expenses | $17,860 |
Net Profit: $12,030 (25.4% net margin)
In this example, Amazon’s referral and FBA fees ($6,530) cut into margins compared with the direct-to-consumer channel. A fee breakdown at this level shows whether one channel is much less profitable than another, which can change how you split ad spend.
COGS Tracking Method
Getting COGS right is the most useful thing you can do for ecommerce books.
Step 1: Record Your Landed Cost
When you receive inventory, record the per-unit cost including product price, shipping, duties and any other costs to get the product to your warehouse. This is your landed cost, the true cost of each unit.
Step 2: Choose Your Cost Method
- FIFO (First In, First Out): the oldest inventory is sold first. A common choice for ecommerce, especially when costs change over time.
- LIFO (Last In, First Out): the newest inventory is sold first. Less common for ecommerce.
- Weighted average: averages the cost of all units in stock. Simple and effective when costs are fairly stable.
Step 3: Apply It to Every Sale
Each time a sale occurs on any channel, move the matching cost from inventory to COGS under your chosen method. Doing this monthly is a minimum. Weekly is better.
Step 4: Adjust for Returns
When a customer returns an item, check whether it goes back into sellable inventory. When it does, reverse the COGS. When the item is damaged and written off, the COGS stays recognized and the write-off is logged separately.
Getting Started
A basic ecommerce setup looks like this:
- List your sales channels and decide how often you will export data from each
- Link bank accounts and payment processors to a single set of books
- Build a product list with landed costs for every SKU
- Set categories for marketplace fees so each fee type has its own line
- Review a sample of transactions each month and correct anything mis-categorized
Free spreadsheet and checklist downloads in the resources section can speed up the setup.
Common E-commerce Bookkeeping Challenges
Multi-Channel Sales Tracking
Selling on Amazon, Shopify, Etsy, eBay and your own site means transactions scattered across five or more dashboards. Reconciling them by hand takes hours every week.
Sales Tax Nexus Complexity
Economic nexus rules can create sales tax obligations in many states. Each state has different thresholds, rates and filing deadlines, and they change.
Inventory and COGS Accounting
Calculating cost of goods sold across multiple SKUs, suppliers and warehouses requires precise records that a basic spreadsheet struggles to hold at scale.
Marketplace Fees and Deductions
Amazon referral fees, FBA fees, Shopify transaction fees, PayPal holds and chargebacks all take a cut and each platform reports them differently.
Returns and Refunds
Returns create reversals that must be matched to the original orders and reflected correctly in revenue and COGS.
Payment Processor Reconciliation
Stripe, PayPal, Shop Pay and Amazon payouts each batch deposits differently. Matching bank deposits to individual orders is a daily headache.
What to Set Up for E-commerce
Reconcile Each Sales Channel Separately
Download or export orders from Shopify, Amazon, WooCommerce, Etsy and eBay on a set schedule. Keep a separate revenue line for each channel so you can compare them.
Watch Sales Tax Nexus by State
Record sales and transaction counts by state. Compare the totals with each state's economic nexus threshold and review them every quarter.
Calculate COGS Per SKU
Record landed cost for each shipment, then apply one consistent method (FIFO, LIFO or weighted average) to work out cost of goods sold per SKU, per channel and per period.
Break Out Marketplace Fees by Type
Split referral fees, fulfillment fees, storage fees, shipping labels and ad spend into separate expense lines. One combined fees line hides where margin goes.
Match Refunds to Original Orders
Link each refund to its source order, reverse the revenue and decide whether the item returns to sellable stock. Adjust COGS only when it does.
Compare Profit by Channel and SKU
Calculate profit after fees, COGS and returns for each channel and each product. The numbers show where to spend ad money and which products to drop.
Reconcile Payouts to Orders
Break each batched payout back into its orders, fees and adjustments so every deposit in the bank account is explained.
Frequently Asked Questions
How do I reconcile Shopify sales?
Export orders, refunds, transaction fees and payout reports from Shopify each month. Match each payout to the orders and fees it contains. Record the difference between gross sales and the bank deposit as processing fees and adjustments.
How do I read Amazon seller settlement reports?
Download the settlement report for each period. Separate product sales, FBA fees, referral fees, advertising costs, reimbursements and returns into their own categories, then compare the total with the bank deposit.
How do I track sales tax across multiple states?
Record sales volume and transaction counts by state. Compare them with each state's economic nexus threshold and check the rules for marketplace facilitator sales. Register and collect once you cross a threshold. A tax professional can confirm the details for your states.
Which COGS methods can I use?
Common choices are FIFO (first in, first out), LIFO (last in, first out) and weighted average cost. Many ecommerce sellers use FIFO or weighted average. Pick one method, apply it consistently and ask your accountant before changing it.
How do I handle foreign currency sales?
Convert each sale at the exchange rate on the date of the sale, record any exchange gains or losses separately and report totals in your home currency.
Free e-commerce bookkeeping resources
Templates, checklists and calculators you can use with any spreadsheet or accounting software.