Cleaning Up a 5 years of Fast-Growing App Developer’s Books 5 days before tax deadline with Claude and Numbers Game
Five years of unreconciled books, corrected in seven days and ready five days before the 2025 tax deadline. A bookkeeper for California app developer LLC used Claude through Numbers Game, reviewing and approving every change.
A fast-growing app developer with books no longer safe to trust.
The client is a small California LLC that builds consumer apps. Most revenue arrives through App Store payouts, with B2B marketing-services invoices and direct product sales through Stripe.
- One W-2 employee on an outside payroll service and a rotating group of contractors in the US, UK, and Europe.
- Contractors paid through wire, Wise, Zelle, PayPal, and credit card.
- QuickBooks Online for the ledger; invoices and contracts in email and a shared Dropbox folder.
- Details are anonymized. The client’s name and identifying details are not published.
The timeline from first read to CFO session.
- October 3: engagement starts.
- October 6: read-only first look; client profile and open-items list built in Numbers Game.
- October 7: five years of bank statements processed; correcting journal entries for 2021–2025; payroll double count removed; contractor invoices matched.
- October 7–9: Stripe revenue mapped and the revenue recognition waterfall built; 2025 cutoff entries moved to December 31.
- October 10: financials ready for the 2025 return and a strategic CFO session using accrual-basis reports.
Numbers Game matched statements to the ledger, drafted entries, and tied out totals. Bookkeeper’s time went to reviewing and approving the proposed work.
The ledger said profitable. Almost no balance could be trusted.
Duplicate card payments
Eight duplicates in January through July 2026 alone, about $211,000, booked once from the checking feed and once from the card feed without a match.
Cash and liabilities
Checking was understated by roughly the same amount, while the credit card carried a large debit balance that made total liabilities negative.
No reconciliations
No account had been reconciled in any year. Card and checking feeds were out of step, with August and September largely missing.
Dormant balances
A payments clearing account held $22,703 untouched since early 2024, and a second checking account held a negative balance.
Revenue and payroll
App Store payouts were booked net on receipt, creating artificial monthly losses of $50,000 to $80,000. Wages and employer taxes were lumped together, and no workers’ compensation premium was visible.
Contractors and receivables
About $287,000 paid through five channels had no W-9 or W-8 process, while A/R had been frozen for eight months on 2022 and 2024 invoices. Owner draws, personal payments, and possible personal tax payments were mixed into operating expenses.
Claude read the systems. Numbers Game controlled the ledger work.
Numbers Game connector for QuickBooks Online
Bank statements against the ledger; P&L, balance sheet, general ledger, and A/R aging; correcting journal entries; expenses, payments, credit memos, client profile, and open-items list.
Numbers Game Stripe integration
Stripe revenue, fees, payouts, and the Stripe revenue recognition waterfall.
Dropbox connector
The client’s records index, contractor invoices, contracts, W-9s, workers’ compensation policy, and tax notices.
Claude Project
A company file with realm ID, firm rules, and red-flag thresholds so each session began with the same context.
- Claude read the ledger and supporting records, then quantified the issue.
- Claude proposed the change in plain language, including transactions, accounts, and amounts.
- Bookkeeper approved, changed, or rejected the proposal.
- Claude wrote only approved changes, then re-ran the report and tied every total out in code.
The largest correction removed $101,012.63 of duplicated payroll.
The remaining work corrected owner activity and five years of prior-period errors.
Payroll counted twice
After the January through September 2026 payroll sync, wages had risen to about $28,000 each month. Claude confirmed that bank-feed debits duplicated sync entries paid from the same checking account, then zeroed 14 duplicates with a VOID memo. Wages dropped to $13,750 a month and expenses fell by exactly the duplicate amount.
Retirement contributions
Eight 401(k) remittances, totaling $3,300, had been expensed while payroll sync also built the liability. They were recoded to Payroll Liabilities, leaving only the current month open.
Owner activity
Recurring transfers to the owner of $5,041.28 and $23,925 of personal 2026 payments moved out of employee benefits and contractor expense into owner’s draws, including removal from the 1099 account.
Contractor support
Claude matched every 2026 contractor invoice in Dropbox to its QuickBooks payment. Most tied out to the cent after FX and Wise fees. Remaining missing invoices, unbooked payments, W-9s, and W-8s became a clear client action list.
Five years of statements
Numbers Game processed the operating-account statements back to 2021 and matched them to the ledger. Claude drafted one correcting journal entry per year for duplicate card payments, deposits booked twice, and expenses never booked.
Prior-year corrections
Because the 2025 return was not filed, Bookkeeper approved moving relevant corrections and the dormant clearing account to December 31, 2025: seven journal entries, a linked payment, and a receivable write-off.
Gross revenue, fees, payouts, and a revenue recognition waterfall.
Stripe revenue had been recorded net of fees, leaving processing costs invisible. Numbers Game let Claude read Stripe directly rather than reconstruct it from bank deposits.
- Stripe product sales now book to a dedicated revenue account, separate from App Store revenue.
- B2B install-fee products now book to marketing-services revenue, and that customer remains invoiced through Stripe.
- Stripe fees book gross to one Payment Processing Fees account, with Stripe as payee.
- Payouts land in main operating checking, with Stripe accruals beginning January 1, 2026.
- The Stripe revenue recognition waterfall now records revenue in the month earned, making accrual-basis reports possible for the CFO session.
One item remains pending client approval: invoices the B2B customer paid outside Stripe must be marked paid in Stripe.
Claude never wrote to QuickBooks without a plain-language yes.
- No deletes: duplicates were zeroed with a VOID memo and the original amount retained, preserving the audit trail.
- Batch approval: related changes were grouped for one decision per batch.
- Prove it: after each approved batch, Claude re-ran the report and tied the change out to the cent.
- Reconciled items: where an edit touched a reconciled transaction, the connector stopped it and Claude confirmed the reconciliation would not move before proceeding.
The tools also caught things before they became mistakes. Claude checked that the payroll sync paid from checking before voiding the bank-feed entries; otherwise cash would have been wrong. Some decisions stayed with the bookkeeper: keeping contractors in Contractors rather than Advertising, leaving one contractor’s coding as is with a classification flag, and holding a receivable write-off until the client approves. Tax questions went to tax review rather than the bookkeeping session.
The cleanup made the next close possible to run well.
- Complete bank reconciliations from Chase statements.
- Gross up and accrue App Store revenue monthly.
- Attach invoice PDFs to each contractor payment.
- Collect W-9s and W-8s before 1099 season.
What this shows: connect the systems, not just the ledger; put firm rules and red-flag thresholds in the company context once; and keep approval as the gate. Claude handled reading, matching, and arithmetic. Every write still went through a person.
Bring the messy books. Keep the judgment.
See how Numbers Game gives your firm controlled access to approved QuickBooks Online and Stripe workflows, with a professional approving every material conclusion and write.