Multi-channel revenue reconciliation: Shopify + Amazon + Stripe + PayPal
One $120 order can be recorded three times across a channel report, a processor payout and a bank feed. Here is the structure that makes every sale land exactly once — and checks itself.
One channel is a bookkeeping task. Four channels is a reconciliation problem,
and it is where most ecommerce books quietly stop being trustworthy — not
because anyone did anything stupid, but because the same sale can now arrive
through two different doors and be counted twice.
Why the double counting happens
Consider a business selling on Shopify and Amazon, taking payment through
Shopify Payments, Stripe and PayPal. A single $120 Shopify order paid by PayPal
can appear in the books three separate times:
- As an order in the Shopify sales summary
- As a PayPal payout landing in the bank
- As a bank deposit matched to “sales” in the bank feed
Record all three and you have $360 of revenue from a $120 order. This is the
single most common way multi-channel books overstate revenue, and it is almost
never noticed, because each individual entry looks completely reasonable on its
own.
Every sale must enter your books exactly once, from exactly one source. Everything else is a movement of cash, not a sale.
The rule that fixes it
Sales channels create revenue. Payment processors move money.
Shopify and Amazon are where sales happen, so revenue is recorded from their
reports. Stripe, PayPal and Shopify Payments are how the money travels, so their
payouts are recorded as transfers of cash that has already been recognised
— not as new income. Set up that way, the bank feed never books a sale at
all; it only ever matches a transfer.
The clearing account structure
The practical mechanism is one clearing account per processor, and it is the
thing that makes multi-channel reconciliation tractable.
| Step | Debit | Credit |
|---|---|---|
| Sale recorded from Shopify report | PayPal clearing $120 | Revenue $120 |
| PayPal fee | Fee expense $4.08 | PayPal clearing $4.08 |
| PayPal pays out to bank | Bank $115.92 | PayPal clearing $115.92 |
| PayPal clearing balance | $0.00 |
Revenue is recognised once, the fee is visible as a cost, and the bank entry is a transfer rather than a sale. A clearing account that does not return to zero is telling you something is missing.
That last line is the real prize. A clearing account is a self-checking
mechanism: if PayPal clearing does not come back to roughly zero once everything
has settled, either a sale was never recorded or a payout was booked twice.
Without clearing accounts, nothing tells you.
Setting it up
- List every channel and every processor and decide, explicitly,
which are revenue sources and which are money movers. Write it down; this is
the decision everything else depends on. - Create one clearing account per processor. Shopify Payments
clearing, Stripe clearing, PayPal clearing, Amazon clearing. - Record sales from channel reports only, at gross, with fees, refunds
and sales tax split out. - Turn off automatic bank-feed rules that create sales. This is the
step people skip, and it is what silently reintroduces the double count. - Reconcile every clearing account monthly. Balance near zero after
settlement, or a small balance equal to genuinely in-transit funds.
The in-transit balance is not an error. A clearing account will hold
a real balance at month end for payments taken but not yet paid out —
usually two to three days of sales. That is correct, and it should roughly
match your processor’s pending balance. What matters is that it clears next
month rather than growing indefinitely; a clearing balance that only ever gets
bigger is an unrecorded payout or a duplicated sale.
How to tell whether this is already wrong in your books
Three checks, and any one of them failing is enough:
- Compare total recorded revenue against the sum of your channel
reports for the same period. Recorded revenue higher than the channels
combined means something is being counted twice. - Look for clearing accounts. If there are none, sales and payouts are
almost certainly both hitting revenue. - Check your bank rules. Any rule that categorises a processor
deposit as income is creating a duplicate every time it fires.
If revenue is overstated, the damage is not limited to a wrong number. You
have been paying tax on income you never earned, and every margin and
acquisition-cost figure you have used to make decisions has been computed on an
inflated base.
Questions we get asked
01How does the same sale get counted twice?
02Which source should revenue come from?
03What is a clearing account for?
04Should my clearing account always be zero?
05How do I know if my revenue is currently overstated?
Not sure whether this is happening in your books?
Give us view-only access and we will tell you, in plain English, what is misclassified, unreconciled or wrong — within 48 hours. Free, and you are under no obligation to do anything about it.