# How to stop paying invoices twice in Xero

Search the supplier's bills before you enter or approve a new one. Keep one reference format. Read any duplicate warning Xero shows. Check the bills to pay list for the same supplier and amount before each pay run.

## Short answer

1. Search the supplier's existing bills before you enter or approve a new one.
2. Type the invoice number exactly as printed.
3. Open any duplicate warning before you carry on.
4. Look for the same supplier and amount twice before each pay run.

## Before you start

You need access to Xero bills and the supplier's contact. It helps to have the supplier's statement open, because a statement shows what they think you owe. See [reconcile a supplier statement](/how-to/reconcile-a-supplier-statement-to-your-bills/).

A duplicate is the same invoice entered twice, or the same invoice that came in by two routes, for example by email and by post.

## The manual way in Xero

1. Go to Business > Bills to pay. Search by the supplier name or invoice number.
2. Open the supplier's contact and look at their recent bills, paid and unpaid.
3. Enter the bill. Put the supplier's invoice number in the Reference field exactly as printed.
4. When you approve, read any possible duplicate warning. Open the other bill to compare date and amount.
5. Before a payment batch, sort bills to pay by contact. Look for the same amount twice for one supplier.
6. If you find a duplicate, delete or void it while it is unpaid. If it is paid, ask the supplier for a credit note. See [credit notes](/guides/credit-notes/).

Limits of this way:

- Xero staff and users say the warning compares contact, reference and amount. A reference of INV-1234 and 1234 is a different reference.
- Two contacts for one supplier are two suppliers to Xero.
- Users report the warning does not appear for imported bills.
- It is a warning. You can still save the bill.

## The Pulsify way

1. Forward the invoice to your Pulsify address or upload it.
2. Pulsify compares the invoice number with other documents in Pulsify and with active bills in Xero. It ignores punctuation and case. The numbers must match, plus one more: the same supplier, the same invoice date or the same tax ID.
3. A match shows a Possible duplicate warning with the matching bill. Open the match to compare.
4. Archive or reject the new one. Or dismiss the flag if it is not a duplicate. Approving a flagged bill asks "Possible duplicate: approve anyway?".
5. If the bill is held for approval, it shows "Held for approval · possible duplicate".

Pulsify does not use amount or due date to find duplicates. Voided and deleted Xero bills are not compared. It flags. It does not pay anything. Try the free [duplicate invoice checker](/free-tools/duplicate-invoice-checker/) to see the idea on a few of your own numbers.

## Worked example

Example Plumbing Supplies has bill INV-1234 for $2,310.00 dated 3 October, paid. On 17 October the supplier emails the same invoice again, and a colleague types the reference as "INV 1234".

In Xero the two references are different text, so a match on exact reference can miss it. In Pulsify both numbers become "inv1234" once punctuation and spaces are ignored. The supplier is the same, so the new bill is flagged as a possible duplicate and shows the paid bill beside it. The bookkeeper archives it. Saved: $2,310.00.

## Common mistakes

- Entering the supplier's number in a different format each time. Pick one.
- Creating a second contact for the same supplier.
- Trusting the warning on imported bills. Check those by hand.

## Next step

[Try an invoice](https://app.pulsify.tech/sign-up) and see which checks fire. Related help: [invoice checks](/guides/invoice-checks/). Read why this matters in [implementing duplicate invoice detection](/blog/implementing-duplicate-invoice-detection-workflows-in-practice/).

## Common questions

### Does Xero warn about duplicate bills?

Xero shows a warning in some places. Xero staff and third-party guides say it compares the contact, reference and amount. Users report it does not appear on every route in, such as imports. Treat it as a help, not a guarantee.

### Why did Xero miss my duplicate?

Usually the reference differed. INV-1234 and 1234 look like different bills to a match on exact text. A second contact record for the same supplier causes the same miss.

### What does Pulsify check?

It compares the invoice number with punctuation and case ignored. It also needs the same supplier, the same invoice date or the same tax ID. It checks other Pulsify documents and active bills in Xero. It flags. You decide.

Source: https://www.pulsify.tech/how-to/stop-paying-invoices-twice-in-xero/ (last checked 2026-10-19)
