What Undeposited Funds is supposed to do
It's a holding tray. When you receive a customer payment, QuickBooks parks it in Undeposited Funds so that when three checks go to the bank as one $2,700 deposit, you can group them, and your QuickBooks deposit matches the bank statement line exactly. Payment → tray → grouped deposit → matches bank. That's the whole design: it exists so reconciliation works.
How it goes wrong
The failure pattern is always the same: payments get recorded (invoice marked paid → into the tray), but the 'Bank Deposit' step never happens. Meanwhile the actual deposit shows up in the bank feed, and whoever's doing the books adds it as new income. Now the money exists twice, once as the payment in the tray, once as the feed deposit, income is overstated, and the tray balance grows forever. If your Undeposited Funds balance is older than a week or two, this is almost certainly what happened.
The cleanup, step by step
- Run the account's register (Chart of Accounts → Undeposited Funds → view register) and see what's stuck and how old it is
- For each stuck payment, find its real bank deposit: same amount (alone or as part of a group) on the bank statement around that date
- If the feed deposit was added as separate income: delete or recategorize that duplicate, then create the proper Bank Deposit from the tray payments so it matches the statement line. Work oldest-first, one month at a time
- If the payment never actually banked (a bounced check, a duplicate payment entry): fix the record accordingly, delete the duplicate, or handle the NSF properly
- Re-reconcile the affected months as you go; the statement is your referee
- When the tray holds only the last few days' genuine in-transit payments, you're done
Warning before you start: if prior years are involved, the duplicates you're deleting may have inflated income on a filed tax return. Note the totals by year before fixing, if the correction is material, your tax preparer needs to know, because you may have overpaid tax on income that never existed. (Cleanup projects surface this constantly: Cleanup & Catch-Up Bookkeeping Services .)
Preventing it forever
- Adopt the two-step rhythm: receive payments to the tray, then record Bank Deposits that mirror real bank runs, daily batches if you take daily payments
- In the bank feed, always Match deposits to existing records; 'Add' is how duplicates are born
- Payment processors (Stripe, Square, card readers): use the integration or a clearing-account workflow so gross payments, fees, and net deposits tie out, processor deposits added straight from the feed as income is the same disease in processor clothing
- Put 'Undeposited Funds ≈ $0' on your monthly close checklist ( QuickBooks Cleanup Checklist: The 12 Steps That Actually Fix Messy Books ), it's a one-glance health check
Frequently asked questions
Can I just journal-entry the balance to income or equity?
Please don't, a journal entry hides the symptom while leaving payments unmatched and history unauditable. The fix is matching, not overwriting. (Files where someone JE'd it away are measurably harder to clean later.)
My balance is huge and old. DIY or professional?
A handful of stuck payments: DIY with the steps above. Years of accumulation tangled with filed returns: that's a structured cleanup with tax implications, get it quoted. Cleanup & Catch-Up Bookkeeping Services