All articles

Clean Up Accounts Payable in QuickBooks: Clear Old Unpaid Bills

11 min read CSVQBO Team
csv / xls / xlsx → .qbo
No file handy?

No account needed for your first conversions. We never store your bank login.

Short answer: To clean up accounts payable in QuickBooks, run the A/P Aging Detail report, then sort every old bill by cause rather than by age. Most stale payables are not money you owe at all: they are bills that were paid with a check or expense instead of the Pay Bills window, vendor credits that were never applied, or duplicates. Fix those by linking the payment to the bill. Only what survives that pass gets written off, and on accrual basis you reverse it with a vendor credit coded to the original expense account.

An A/P aging report full of five year old bills is not a debt problem, it is a data problem. It tells your balance sheet you owe vendors money that in most cases went out the door years ago, which understates equity, distorts your current ratio, and makes the report useless for the one thing it exists to do, which is tell you what to pay this week. The cleanup is worth doing properly because the wrong shortcut, deleting the bills, quietly changes prior year financials you may have already filed a return on.

Step 1: Run the A/P Aging Detail report

Open Reports and run the Accounts Payable Aging Detail report, not the Summary. The summary gives you a total per vendor; the detail gives you the individual bills, which is what you actually have to act on. Set the date to today and the aging buckets to current, 1 to 30, 31 to 60, 61 to 90 and over 90 days. Everything in the 90 plus column is a cleanup candidate.

Print or export that list before you touch anything. You are about to change transactions that feed prior period reports, and having a before picture is the difference between an adjustment you can explain and one you cannot. If the file is shared, get everyone out of it first, and take a backup.

Step 2: Sort the old bills by cause, not by age

This is the step people skip, and skipping it is why so many A/P cleanups end up as one giant journal entry that hides the real problem. Go down the aged list and put each bill into one of five buckets:

1. Paid by check or expense instead of Pay Bills. By far the most common. Someone entered the bill, then later wrote a check to the vendor and coded it straight to the expense account. The vendor got paid, but the bill stayed open and the expense got recorded twice.
2. A vendor credit that was never applied. The credit and the bill both sit open, offsetting each other, and the net is zero.
3. A duplicate bill. Entered once by hand and once by an import or a second person.
4. Still genuinely owed. Rare in the 90 plus column, but it happens, and finding one is the best possible outcome of the exercise.
5. Genuinely dead. The vendor is gone, the debt was forgiven, or it is old enough that nobody is coming for it.

Buckets 1 through 3 are corrections and they are the majority. Only bucket 5 is a write off. Doing the sort first means you fix most of the report without touching the P&L at all.

Step 3: Fix bills that were paid with a check

Intuit's own guidance on this is specific, because creating a check instead of using Pay Bills keeps the bill open. You do not delete anything. You relink the check you already wrote to the bill it actually paid.

Open the check, and change the account on it from the expense account to Accounts Payable, keeping the vendor name in the Customer:Job or name field. That converts the check into an available credit sitting in A/P. Then go to the Vendors menu, choose Pay Bills, and select the bill you need to close. Click Set Credits, go to the Credits tab, tick the credit you just created, choose Done, and then Pay Selected Bills. The bill closes, the check stays in the register for the reconciliation, and the double counted expense disappears because the check no longer hits the expense account.

Two cautions. If the check falls in a period you already reconciled, changing its account does not affect the reconciliation as long as you leave the date, amount and bank account alone. And if the check was in a closed period, changing it will change that period's expenses, which is the correct outcome here, since the expense was recorded twice, but it is a change your accountant should know about.

Step 4: Apply the vendor credits that are just sitting there

Open credits are the second big bucket, and they are the easiest fix on the list. In QuickBooks Desktop, go to Vendors, then Pay Bills, select the bill, click Set Credits, tick the matching credit, and pay the bill at zero. Nothing hits the bank and both lines drop off the aging report.

If you have dozens of these, QuickBooks Desktop Accountant Edition and Enterprise 18.0 or later include a batch tool for exactly this: Accountant, then Client Data Review, then Fix Unapplied Vendor Payments and Credits. It lists every unapplied bill payment and credit next to the open bills for the same vendor and lets you link them in one screen. If you are on Pro or Premier you do not have it and will work bill by bill, which is still faster than a journal entry because the audit trail stays intact.

In QuickBooks Online the equivalent is to open plus New, choose Expense or Bill Payment, pick the vendor, and then use the panel on the right that lists that vendor's outstanding transactions. Add the credit and the bill together so they offset, and save. The net expense is zero and the aging report clears.

Step 5: Write off what is genuinely dead

Only bucket 5 reaches this step, and how you clear it depends entirely on your reporting basis.

On accrual basis you already recorded the expense when you entered the bill, so clearing the bill has to reverse that expense. Create a vendor credit for the amount and code it to the same expense account the original bill used. Not to a generic other income account, and not to a catch all adjustment account: matching the original account is what keeps the two entries visible as a pair in the account history and stops the write off from distorting a category you might benchmark. Then apply the credit to the bill in Pay Bills so both close together.

On cash basis the bill never touched your P&L, because on cash basis an unpaid bill is not an expense yet. That makes the cleanup simpler, and it also means a cash basis balance sheet should not be showing an A/P balance in the first place. If it is, see the next step, because you have a data issue rather than a debt.

If the debt was genuinely forgiven by the vendor rather than never owed, that is a different transaction with tax consequences, and forgiven debt can be reportable income. Talk to your CPA before booking it as a simple reversal.

Why does accounts payable show on my cash basis balance sheet?

Because something in A/P is not properly linked. On cash basis, QuickBooks should exclude open bills entirely, so a balance appearing there almost always means bill payments that were never applied to a bill, or credits that were never applied, or a journal entry posted directly to the Accounts Payable account without a vendor name attached.

Intuit publishes a resolution article for this in both Desktop and Online, and the fix is the same as steps 3 and 4: find the unlinked payments and credits and apply them to the bills they belong to. Journal entries hitting A/P directly are the nastiest version, because they cannot be applied through Pay Bills unless the entry has a vendor name on the A/P line. Where that is the problem, re-enter the transaction as a proper bill or vendor credit and delete the journal entry.

The two traps that ruin an A/P cleanup

The closed period. Intuit is direct about this: there is no supported way to clear bills dated on or before your closing date without affecting closed books. Anyone who tells you otherwise is describing a workaround that changes filed numbers. If your old payables sit in a closed year, the honest options are to reverse them in the current period with a dated adjustment your accountant signs off on, or to reopen the period deliberately. Pick one on purpose rather than discovering it afterward.

Inventory. If a bill was created from an item receipt for inventory items, deleting or zeroing it does not just clear a payable, it reverses the quantity on hand. You will clear $8,000 of A/P and blow a hole in your inventory valuation and cost of goods sold at the same time. Check the bill for item lines before touching it. Where there are items, use a vendor credit against an expense account rather than editing the item lines, so the quantities stay put. The same care applies to the negative inventory and COGS cleanup, which frequently surfaces from the same set of bills.

Stop it from coming back

Most stale A/P is created by one habit: paying a vendor without going through Pay Bills. If bills get entered, payments must go through Pay Bills, every time. If your business does not enter bills at all and simply pays vendors as the money goes out, that is a legitimate approach, but then nothing should be entered as a bill, because mixing the two methods is precisely what generates the phantom payables.

Review the A/P aging monthly alongside the A/R aging, not annually. Anything over 90 days should be explainable in one sentence, and if it is not, it goes on the cleanup list while the people who remember the transaction still work there. Where old payables trace back to goods that were received but never properly billed, tightening up how purchase orders are matched to receipts and invoices removes the source rather than the symptom.

Frequently asked questions

How do I clear accounts payable in QuickBooks Desktop?

Run the A/P Aging Detail report, then clear each bill by its cause. For bills paid by check, change the check's account to Accounts Payable and link it through Vendors, Pay Bills, Set Credits. For open vendor credits, apply them to the bill in the same window. For genuinely dead payables on accrual basis, create a vendor credit to the original expense account and apply it. Avoid deleting bills, which erases the audit trail.

How do I clean up accounts payable in QuickBooks Online?

Run the A/P Aging Detail report from the Reports menu, then use plus New, Expense or Bill Payment, and select the vendor. QuickBooks Online lists that vendor's outstanding bills and credits in the right hand panel, so you can add a credit and a bill together and let them offset to zero. For dead payables, create a vendor credit coded to the original expense account first, then apply it the same way.

Can I just delete old bills in QuickBooks?

You can, but it is usually the wrong move. Deleting removes the transaction history entirely, changes prior period financials with no trace of why, and if the bill carried inventory items it also reverses your quantity on hand. A vendor credit accomplishes the same balance change while leaving a documented pair of entries anyone can follow later. Reserve deletion for genuine duplicates that were never paid.

Does cleaning up accounts payable change my taxes?

It can, on accrual basis. Reversing an old bill removes an expense you previously deducted, so if that bill fell in a prior tax year, clearing it in the current year shifts income between years. On cash basis the unpaid bill was never deducted, so clearing it changes nothing on the return. Either way, run the write off list past your CPA before you post it rather than after.

How often should I clean up accounts payable?

Review the aging monthly as part of the close and act on anything past 90 days while it is still traceable. A deeper pass each quarter catches unapplied credits before they accumulate, and a full review at year end keeps the balance sheet honest for the tax return. Monthly review is what keeps the quarterly pass small; skip it for a year and the cleanup becomes a project instead of a task.

For related cleanup work, see the A/R aging cleanup guide, which is the mirror image of this one, the unapplied cash payment cleanup for the customer side of the same linking problem, and the month end close checklist that both fit into. If getting the bank side of the ledger in is the bottleneck, the best CSV to QBO converter comparison covers the options for turning bank CSV exports into a file QuickBooks will import.

Convert your CSV to QBO now

Upload your CSV or Excel statement, map the columns, and download a QuickBooks ready QBO file in seconds.

Start converting