Your payment processor, your bank, and your accounting software each record a different moment in the life of a sale. The processor records the charge when the customer pays. The bank records a deposit days later, after fees and refunds come out and several sales are batched together. Your accounting software records revenue according to your accounting method, which may be when the revenue is earned rather than when the cash arrives. In most cases, three different numbers mean three different measurements, and a short monthly reconciliation shows how they connect.
I’ve seen this plenty in operating businesses. An owner compares last month’s sales across two or three systems, gets different totals, and starts wondering whether the bookkeeper made a mistake or whether money is missing. Usually the numbers are fine. Nobody has written down how they relate to each other.
Why Does Each System Show a Different Number?
Each system sits at a different step of the same transaction. Follow one sale through all of them, and the differences stop looking mysterious.
A Sample Scenario: A client pays a $1,000 invoice by card on a Friday.
- Accounting software. The invoice was entered when the work was billed, perhaps the previous month. Entering the invoice is not what created the revenue. Under accrual accounting, the $1,000 counted as revenue when it was earned, typically when the work was completed, under the business’s accounting policy. That can fall in a different month from both the invoice and the payment.
- Payment processor. The charge is approved on Friday and shows $1,000 in gross sales.
- Processor balance. The processor takes its fee. At Stripe’s standard US price for domestic cards, 2.9% plus 30 cents per successful charge, that is $29.30, leaving $970.70 in the processor balance.
- Bank account. The money is not available the moment the card is approved. On Stripe’s standard two-business-day timing for US accounts, Friday’s sale becomes available for payout the following Tuesday. When it actually lands in the bank is a separate question, set by your payout schedule and your bank’s own processing, and it arrives batched with other sales in a single payout.
- Back in accounting. Someone matches that combined deposit to the invoices it paid and records the $29.30 as a processing expense.
The same $1,000 now appears as revenue in one month, a $1,000 charge on a Friday, and part of a larger bank deposit some days later. All three are correct.
The Business Data You Already Have describes what each of these records can tell you on its own. This article covers how to connect them.
What Are the Four Reasons the Numbers Disagree?
1. Timing
Cash lags sales. Funds are not available for payout until the processor’s settlement timing has run; payouts then follow whatever schedule the account is on, and weekend or holiday payouts move to the next business day. Stripe says a new account’s first payout typically takes 7 to 14 days, and later payouts follow a schedule the business can set to daily, weekly, or monthly.
The lag matters most at month end. Sales on the last two days of March may be in the processor’s March report but in the bank’s April statement. Sales from the end of February land in March deposits. The two months never contain exactly the same transactions.
2. Fees, Refunds, and Disputes
Processors usually pay out the net amount. Fees, refunds, and chargebacks come out of the balance before the money moves, so the deposit is smaller than the sales that produced it.
The problem gets worse when the books record only the deposit. If $970.70 is booked as revenue, sales look lower than they were and the $29.30 processing cost disappears from the expense lines. The usual setup is to record the full sale and the fee separately. Confirm how your bookkeeper handles it.
3. Cash Versus Accrual
Under cash accounting, income counts when it is actually or constructively received. Under accrual accounting, it generally counts when it is earned, typically when the work is done or the goods are delivered, regardless of when the customer pays. A business on accrual accounting can show strong March revenue with little March cash, because the invoices are still open.
Multi-month contracts, deposits, retainers, and milestone billing make this more complicated. Revenue recognition rules for those arrangements are a question for your CPA. Confirm your policy with them before you decide which revenue number a dashboard should show.
4. Different Definitions
The same word can mean different things to different teams. Take a signed two-year service contract. Sales may report the whole contract value as a win. Finance may record most of it as deferred revenue, to be recognized month by month. Operations may call the remaining work backlog. Each number is legitimate. They answer different questions, and a report that uses one without saying which will contradict a report that uses another.
What Does a Monthly Reconciliation Look Like?
[Illustrative Example — Synthetic Scenario] A service business reviews March and finds three totals:
| System | March total | What it measures |
|---|---|---|
| Accounting software | $52,700.00 | Revenue recognized in March: $48,200 paid by card plus $4,500 invoiced and still unpaid |
| Payment processor | $48,200.00 | Gross card charges in March |
| Bank account | $45,441.80 | Processor payouts that reached the bank in March |
The gap between accounting and the processor is the $4,500 in open invoices. It will turn into cash when those clients pay.
The gap between the processor and the bank takes a few more lines:
| Bridge line | Amount |
|---|---|
| Gross card charges | $48,200.00 |
| Less refunds | −$600.00 |
| Less processing fees | −$1,697.80 |
| Net processor activity | $45,902.20 |
| Plus balance not yet paid out on March 1 (late-February sales) | +$2,950.00 |
| Less balance not yet paid out on March 31 (late-March sales) | −$3,410.40 |
| Other balance activity (disputes, reserves, adjustments) | $0.00 |
| Expected bank deposits | $45,441.80 |
The expected figure matches the bank total, so the month ties out. If the bank had shown $44,900, the unexplained $541.80 would be the thing to investigate.
The bridge works because it follows the processor’s balance: what was waiting to be paid out at the start, plus the month’s net activity, less what was still waiting at the end, equals what was paid out. This example is deliberately simplified, which is why the “other balance activity” line is zero. A real month can also carry disputes and dispute fees, reserves or holds on the balance, failed or reversed payouts, taxes withheld, and account adjustments, and any of those changes what reaches the bank. Processors such as Stripe provide balance and payout reports that show these items, and each one earns its own line in the bridge.
How Do You Stop Arguing About Which Number Is Right?
Decide in advance which system answers which question, and write it down.
| Question | System of record |
|---|---|
| How much cash do we have? | Bank |
| How much revenue did we earn? | Accounting software, under the policy your CPA confirmed |
| How much did customers pay us, and how? | Payment processor or POS |
| How much work have we sold? | CRM, booking system, or sales tracker |
Once each metric has a home, a dashboard can label the source beside every number: “Revenue (accounting, accrual)” or “Cash (bank, as of the 5th).” People stop comparing numbers that were never meant to match.
This matters beyond the finance office. When two managers bring different revenue figures to the same meeting, the meeting turns into an argument about the data. After a few of those, people stop trusting the dashboard and go back to their own spreadsheets. Why Nobody Looks at Your Dashboard covers that problem in more detail.
How Do You Reconcile the Systems Each Month?
Step 1: Assign a System of Record to Each Metric
Use the table above as a starting point. Keep the list short and share it with anyone who builds or reads reports.
Step 2: Record Sales and Fees Separately
Ask your bookkeeper whether card sales are recorded at the gross amount with fees, refunds, and chargebacks in their own accounts. If the books record only net deposits, you cannot see what processing costs you, and revenue is unlikely to tie to the processor’s report.
Step 3: Reconcile on a Fixed Schedule
Pick a day each month, after the books close, to match processor payouts to bank deposits. Use the processor’s payout report, which lists which transactions went into each deposit. Reconcile the same way every month so differences are easy to spot.
Step 4: Keep a Simple Bridge
Build the bridge from the March example in a spreadsheet: gross sales, refunds, fees, any other balance activity, the unpaid balance at the start and end of the month, and the bank deposits. Anything left over after those lines is what needs investigating. Once the monthly numbers tie out, they can feed a scorecard; How to Build a Monthly KPI Scorecard shows how to set one up.
Is It a Timing Difference or a Real Problem?
Work through these checks before assuming anything is wrong:
- Does the gap match the balance waiting to be paid out? Compare it with the processor’s pending or in-transit amount at month-end.
- Does the gap match fees? Divide last month’s total fees by gross charges to get your own fee rate, then see whether the difference is close to that share of sales.
- Are refunds or disputes involved? Check the processor for refunds, chargebacks, and any reserve or hold on your balance.
- Are both reports covering the same dates? Confirm the start and end dates, and whether each system uses the same time zone for its cutoff.
- Is anything counted in one report and not the other? Look for open invoices, cash or check payments, sales tax, tips, or deposits for future work.
If a difference remains after these checks, it deserves a closer look. Duplicate entries, a payout that never arrived, a sale recorded in the wrong period, and a missing connection between systems are all possible causes. Bring the bridge to your bookkeeper or accountant. It shows exactly how much is unexplained, which makes the conversation much shorter.
Frequently Asked Questions
Why doesn’t my Stripe total match my bank deposit?
Stripe pays out your balance after fees and refunds come out, and it groups transactions into payouts on a schedule. A single deposit usually covers several days of sales, and the amount is net of costs.
Should my systems match every day?
No. Daily totals will almost always differ because of settlement timing. Monthly totals should tie out once you account for fees, refunds, and the balance still waiting to be paid out.
Do I need an accountant to do this?
You can build and review the bridge yourself. Questions about how revenue should be recognized, especially for contracts, deposits, or milestone billing, belong with your CPA.
Can software do the reconciliation for me?
Accounting tools such as QuickBooks and Xero can import bank transactions and suggest matches. Someone still needs to review exceptions and decide which system answers which question.
Where to Start
List every system that records money coming in, who has access, and what each one exports. The Small Business Data Audit Checklist walks through that inventory. With the list in hand, pick last month, pull the three totals, and build the bridge once. After the first month, the process gets much faster.