How do I find and handle duplicate receipts and documents?
Applies to: United States · Updated 2026-09-30
Duplicates come from how documents enter the business. Treat two documents as copies only when they are the same kind of document, issuer, date and total, with the same document number or, without one, the same items and payment; never on amount, date or name alone. Keep the copy attached to a recorded transaction, check whether the purchase reached the books twice, log each removal, and give each source one capture route and owner.
Where do duplicates come from?
Duplicates come from the intake more than from carelessness: every extra route into your records is another chance to capture a document twice. The usual routes are these:
- Two routes for one document. A paper receipt is photographed and its emailed copy is captured too.
- Re-capture. A document is uploaded again because nothing showed it was already in.
- Forwarding. A colleague forwards a supplier's email to an inbox the supplier already sends to.
- Bulk import. A folder or export is imported twice, or two imports overlap.
- Several capturers. Two people each capture the same document.
List the routes you use first: they show where copies came from and which detection method can see them. Where several people capture, duplication is structural; the lasting fix is changing who captures what.
Is it a true duplicate or a look-alike?
Only the first two rows are duplicates; never remove a file because its name or amount matches another's:
| What you have | What it is |
|---|---|
| The same file twice, such as one PDF saved from two forwards | An exact duplicate: one copy is redundant |
| A photo of a paper receipt and the emailed PDF of the same receipt | One document captured twice: one copy is redundant |
| An order confirmation and the final receipt for one purchase | Two documents for one transaction: keep both, linked |
| Identical monthly charges, one purchase paid in two parts, or a deposit and its balance | Separate transactions: keep all |
Identical recurring charges need particular care: removing one understates real costs.
What details show two documents record the same transaction?
Compare these details together:
- Type. Note what each is: order confirmation, invoice, receipt, statement or credit note.
- Issuer. Note who issued it, as printed.
- Document number. Compare the receipt or invoice number. An order number is not enough, because an order's confirmation, invoice and receipt can all print it.
- Date. Compare the sale date, and the time where both print one.
- Total. Compare the total, including tax.
- Items. Compare what was bought.
- Payment. Compare the payment method and any printed card digits.
Two documents are copies only when they are the same type from the same issuer, with the same sale date and total, and the same document number or, where there is none, the same items and payment. A shared number with a different sale date is not a copy: keep both, check the Parts row, and log the pair. Amount alone matches every recurring charge of that size; date alone, every purchase that day; issuer alone, every purchase from a regular supplier.
Same-type documents from one issuer that share a number but differ in total or sale date are versions or parts:
| If the pair | Then |
|---|---|
| Has one document marked corrected or revised | Versions: keep both, linked, and make sure the books carry only the corrected amount |
| Is two parts of one purchase, such as a deposit and its balance or two part-payments on one invoice | Parts: keep both, and make sure the books carry both amounts once: as two expenses, or as two payments against one bill, not both |
| Shows neither of these | Remove nothing, and log the pair as unresolved |
What if there is no document number?
A pair that passes on date, items and payment alone still needs confirming, because two identical purchases on one day pass too. For a card or bank payment, check the card issuer's or bank's own statement, not only the transactions in your software: your software can hold the same card charge twice. In Expensify, for example, its article on why expenses duplicate says this most often happens when a card connection is reconnected with a start date earlier than the last imported transaction. Read the statement this way:
| On the card issuer's or bank's own statement | Then |
|---|---|
| One matching charge | One purchase: the pair is one receipt captured twice |
| Two charges, and the documents show one sale (the same printed time or till reference) | Keep one copy against one charge, and attach nothing to the second charge |
| Two charges, and nothing shows whether the documents are one sale or two | Remove neither, and log the pair as unresolved |
Two charges show two payments, not two receipts. In the last two rows, follow up the second charge at once, not after the clean-up, and leave its entry in place until you know whether it is a second purchase or a charge taken twice.
For cash, compare the images: two photos of one piece of paper share its creases and marks. If you still cannot tell, remove neither and log the pair as unresolved.
How do I find duplicates, and what does each method miss?
Use several methods, and put every pair they surface through the identity test:
| Method | Finds | Misses | Wrongly flags |
|---|---|---|---|
| Exact-file comparison (same size and content) | The same file captured twice | A second photo or scan, which is a new file | Almost nothing |
| File name and capture date | Repeat imports that kept their names | Renamed copies; capture date is not purchase date | Generic names such as scan001.pdf |
| A list sorted by issuer, then date, then total | Two renderings of one document, and two-document pairs | Misread totals or dates, and issuer names written differently | Recurring charges, split payments, deposits and balances, same-day purchases |
A tool's duplicate flag sees only what that tool holds, so list every store's documents together before sorting. With a large backlog, work open periods and the largest totals first, logging each pair as you go.
Check what your own tool's flag compares, skips and flags wrongly. Expensify's help for New Expensify, in its article on finding and resolving flagged duplicates (undated), says the product compares amount, currency and date (for invoices, up to the due date) and, for scanned receipts, details such as the merchant, order or invoice number and the card's last four digits when available, and says these extra details make two separate same-day purchases at one merchant less likely, not impossible, to be flagged. It also says the product places a potential duplicate on hold; may review a flag in the background and dismiss it when the expenses are clearly not duplicates; does not flag expenses split from a single expense, imported from a credit card, or from matching email receipts with different timestamps; and offers detection on the Collect and Control plans only. Its article on why expenses duplicate adds that the warning does not appear on Approved, Paid or Done reports.
Which copy do I keep, and what happens to the other?
Keep the copy already attached to a recorded transaction. The IRS's Publication 583 counts receipts and invoices among supporting documents and says it is important to keep them because they support the entries in your books and on your tax return. It says an electronic storage system must index, store, preserve, retrieve and reproduce the stored books and records in legible format. Removing the attached copy breaks the link from the entry to its document. If another copy has to survive instead, attach it to the same entry first, as in the table below.
Which copy survives depends on what is attached:
| Situation | What to do |
|---|---|
| One copy is attached to a recorded transaction | Keep it; the other is redundant |
| The attached copy is illegible or incomplete | Attach the better copy to the same transaction first, check it opens there, then treat the old attachment as redundant |
| Neither copy is attached | Keep the most complete, legible rendering, usually the supplier's own electronic document, and record from it only |
| Each copy is attached to its own entry | The purchase may be in the books twice: resolve the entries first, as below |
Before removing anything in bulk, check whether your tool can undo a removal, and try one pair first. In Expensify's flagged-duplicates article for New Expensify, Keep all retains all matched expenses and removes the hold, the choice for a look-alike, and Keep selected keeps the selected expense and discards the duplicates; the article does not say whether a discarded duplicate can be restored. A flagged two-document pair is one purchase entered as two expenses. Do not choose Keep all: it leaves both on the report. Save the second document first. Then, before the report is approved, leave one expense for the purchase, with both documents on it or the second document's location logged. The flagged-duplicates article allows either choice only while the expense you keep is on a report in the Draft or Outstanding state, and says to retract a report that has been approved, closed or reimbursed; read the closed-period paragraph below before retracting one.
For a two-document pair, remove neither document: attach both to the one entry. How long to keep the survivor is a separate question.
Did the duplicate also put the purchase in the books twice?
If you caught the pair before either copy was used to record a transaction, only the documents need resolving. Otherwise, check the books before touching the files:
- Open the entry each copy is attached to, or search the books for the issuer, date and total. A bill and a payment applied to that bill are one purchase recorded once. Two expense entries, two bills, or a bill plus a separate expense entry for the same purchase put the cost in the books twice. One sign is a bill that still shows unpaid because the card charge was recorded as an expense.
- If there is one entry for the purchase, it is in the books once and the repair is document-only.
- If there are two entries for one purchase, the cost is in the books twice. For a card or bank payment, check that the card issuer's or bank's own statement shows one charge; if it shows two, go back to the statement check above.
- Keep the entry matched to that statement line (if neither is matched yet, either one), and make sure the surviving document is attached to it.
- Send the other entry to a transaction correction (in a closed or reported period, read the next section first), and only then remove the redundant copy and log both.
A two-document pair recorded twice also gives two entries, although neither document is a duplicate: keep both documents on the surviving entry. If a duplicate entry was also paid out, for example reimbursed to whoever submitted it, the second payment is money to recover: start that at once, alongside the clean-up.
Do both halves: removing only the file leaves the cost counted twice, and removing only the entry leaves a copy supporting nothing.
Where does fixing the documents stop and correcting the books begin?
The seam is the moment you confirm a second entry. Removing or reversing it is a transaction correction in your accounting software; take into it the identity-test result, which entry survives and which document supports it. If the duplicates arrived through a bank or card feed rather than from receipts, removing them is its own question.
If the entry sits in a period you have closed, or whose figures have gone into a filed return or statements someone relies on, do not delete it: that would change figures already reported, so the repair becomes a closed-period correction with its own path. Log the pair as found, and leave the entry and both documents in place until that correction is made.
What record should I keep of each removal?
The IRS's Publication 583 also says all electronic storage systems must provide a complete and accurate record of your data that is accessible to the IRS. It does not mention a removal log, but an unexplained gap would look like a lost record, so keep one line per resolved pair, beside the document store, with these details:
- Date resolved and who resolved it
- What was removed: file name or ID, the route it came in by, and where it was held
- Where the surviving copy is, and the entry it supports
- Which identity-test details matched
- Why that copy survived
- The ledger result: no second entry, or the reference of the correction
Log look-alikes you checked and kept, and unresolved pairs, so nobody starts them again from scratch. A later reviewer should be able to go from any entry to its document, and from any removed file to its line.
What does one repair look like from start to finish?
Harbor Office Supply sold 212.40 of supplies on March 9, paid by card. Its emailed PDF receipt was recorded as an expense and matched to the card statement line. Later the owner photographed the paper receipt, creating a second 212.40 card expense with the photo attached. March is open and unreported, and the repair runs in this order:
- Detection. Sorting documents by issuer puts the PDF and the photo side by side: Harbor Office Supply, March 9, 212.40.
- Identity test. Both are sales receipts numbered 55812, timed 2:14 p.m., with the same three items and a card ending 4417: one document captured twice.
- Surviving copy. The PDF is legible and attached to the entry matched to the card statement, so it survives.
- Ledger. The photo has its own entry, so the purchase is in the books twice, while the card issuer's statement shows one 212.40 charge. The photo's entry goes to a transaction correction; then the photo is removed and the pair logged.
The correction changes the books like this:
| Harbor purchase in the March books | Before | After |
|---|---|---|
| Office supplies expense | 424.80 | 212.40 |
| Owed on the card for this purchase, per the books | 424.80 | 212.40 |
| Charge on the card issuer's statement | 212.40 | 212.40 |
March profit is 212.40 higher after the correction.
The same sort puts two Brightline Print invoices for 180.00 side by side, dated March 1 and April 1. Type, issuer and total match, but the invoice numbers (BP-3031 and BP-3107) and service months differ: two monthly charges, both kept and logged as checked.
How do I stop duplicates coming in?
Change the intake, or the clean-up has to be repeated. Make these changes:
- One route per source. Suppliers email one capture address, paper receipts are photographed in one app, and nobody forwards what already arrives directly. Where a supplier both emails a receipt and hands over paper, capture only the emailed copy, and mark the paper as not to be captured (for example, file it straight into the captured envelope).
- One named owner per source. One person captures each card, supplier or inbox, and anyone else who receives a document hands it to that person.
- A captured mark at the source. Mark paper once captured, with the date and initials or by filing it in a captured envelope; label or move emails once captured; and move files out of any import folder.
- A look before capturing. Search the tool for the issuer, date and total before adding a document, so each capturer can see what is already in.
- No overlapping imports. Before a bulk import, check the dates the last import covered.