For bookkeepers and small-business finance teams
Invoice payment
matching.
Check an exported list before you mark invoices paid. Paste invoice and payment records, retain partial balances, and download every match and exception.
1. Paste invoices and payments
Private · runs in your browserInvoices: InvoiceId, Counterparty, Amount. Payments: PaymentId, Reference, Counterparty, Amount. Use CSV or columns copied from a spreadsheet, including the headers.
2. Confirm the matching policy
This label does not convert or verify currency. Supply positive amounts with up to two decimals, all in the same currency. Use one exact invoice reference per payment. IDs and counterparty names are case-sensitive after trimming spaces.
Referenced payments can add up to a full or partial payment. A one-cent difference stays open. Missing references, different counterparties and overpayment groups stay unapplied for review.
Your reconciliation
Keep the exceptions visible.
Find paid and partially paid invoices, list every unapplied payment, and check both control totals. Load the fictional example to see a one-cent short payment and a missing reference.
Prepare two CSV lists
Download the invoice sample and payment sample, replace the fictional rows, and paste both lists including their headers. Each list accepts up to 500 records and 100,000 characters. Reordered columns, comma-separated text and spreadsheet tabs are supported; keep each record on one line.
Invoice IDs must be unique within this input batch. If separate customers reuse an invoice number, supply a unique source identifier and use that same identifier in payment references. Payment IDs must also be unique. Use only positive amounts in one currency with two-decimal precision; credits, refunds and mixed currencies require a separate process.
How invoice reconciliation works here
A payment is eligible only when its reference points to an invoice and the counterparty matches exactly. IDs and names are case-sensitive after leading and trailing spaces are removed. Eligible payments are summed per invoice using integer cents. A lower total leaves a partial balance; an exact total is paid under these rules.
Missing or unknown references and different counterparties remain unapplied. If an eligible payment group exceeds an invoice's amount, the entire group stays unapplied for manual allocation. The checker never picks which payment to apply based on row order and never invents a rounding tolerance.
Try the preserved six-invoice example
The fictional example comes from our AI invoice reconciliation test: six invoices and seven payments, including a one-cent short payment, a partial payment and missing references. Expected outstanding invoices total USD 1,180.01; unapplied payments total USD 1,300.00. This browser tool reruns the arithmetic; it is not a new AI test.
Check the control totals and review exceptions
Invoice total must equal applied payments plus outstanding invoices. Payment total must equal applied payments plus unapplied payments. The exported CSV includes both totals, every invoice, every payment and the matching policy. Use the five-check reconciliation guide to verify completeness and review decisions against your original records.
Limits and privacy
This checks the records you paste; it cannot confirm source completeness or detect duplicate bank transactions with different IDs. It does not handle opening balances, previously applied payments, credits, fees, tax calculations, foreign exchange, bundled invoice allocations or accounting-system posting. Prepare a batch of invoice balances and payments that have not already been applied, then have the responsible person review exceptions.
Your pasted records stay in memory in this browser tab. They are not uploaded, sent to AI or stored. Clear the fields or close the tab to discard them. Downloaded reports stay on your device.