Your customer says the invoice has been paid. You may even see the transfer in your bank account. Yet the invoice remains open and another reminder is about to go out. Before asking for money again, establish where the information stopped: with the payer, in the bank feed, in the accounting records or in the system that schedules reminders. A reconciliation problem can become a relationship problem when the next message ignores a payment already received.
This article addresses French businesses receiving B2B payments, particularly euro transfers within SEPA. It does not replace a bank investigation when money is actually missing. It provides a practical route for deciding what to check, who should investigate and what can truthfully be said to the customer while the case remains open.
Separate the three events
A payment instruction, a credit to your bank account and an allocation against an invoice answer different questions. The instruction records an intention to move money. The bank credit establishes that funds appear in your transactions. The allocation identifies the debt those funds settle. A screenshot emailed by the customer does not establish all three events by itself.
Timing offers an initial reference. Banque de France states that a standard SEPA transfer takes at most one business day from receipt of the instruction by the sending bank; paper instructions can take two business days. The clock therefore starts with bank receipt, which may differ from the time your customer wrote an email. Banque de France, SEPA transfers.
After money arrives, the remaining discrepancy may be entirely within the records. Odoo 18 documentation distinguishes a payment linked to an invoice from a standalone payment. This explains how received cash and an apparently unpaid invoice can coexist. It does not establish how your particular accounting installation is configured. Odoo, payments.
Pause the incorrect action without losing the case
When a credible payment is reported, put the case under investigation with a named owner and a next review date. The purpose is to avoid an inaccurate request while checking, without permanently marking the invoice paid. The recorded balance, the reason for the pause and the available evidence should remain visible to colleagues who may receive the next customer call.
A useful reply is straightforward: “Thank you for the update. We are checking the allocation of your payment. Could you confirm the execution date, amount, reference and invoices covered?” If those details already appear in the conversation, do not ask for them again. Start with your own records whenever they contain enough information to investigate.
Avoid requesting a complete bank statement to identify a single transfer. A relevant payment notice or transaction details may be sufficient. Other transactions and unrelated account information do not improve your matching decision. When a document appears suspicious or requires opening an unfamiliar file, verify through an established communication channel before proceeding.
Search in a deliberate order
Begin with the legal entity that issued the invoice. A group may contain several companies and bank accounts. Then confirm the beneficiary account shown on the document actually sent to the customer. Looking only at the account normally used for collections can hide a transfer received in another active account.
Search from the bank transaction using amount, currency, date and reference. Allow a reasonable date range around the execution date reported by the payer. The visible name might belong to a parent company or central payment unit. That difference requires verification; a similar name is insufficient grounds for allocating money to a particular customer.
Next examine unallocated credits and transactions already matched. A payment may have been assigned to an older invoice, another customer record or an advance. Preserve the connection between the bank transaction and its current allocation before changing anything. Odoo’s bank reconciliation documentation describes matching transactions to accounting entries; an automatic suggestion still needs an appropriate matching decision.
Worked simulation: the cash is present but the balance is wrong
Consider a fictional business invoicing €4,800 including VAT. Its customer previously paid a €1,200 advance, recorded in the commercial file but never allocated to the invoice. The customer then transfers €3,600, quoting the project name instead of the invoice number. Both payments appear in the bank records, yet the unpaid invoice list still shows €4,800 outstanding.
Rebuilding the allocation gives €4,800 − €1,200 − €3,600 = €0 remaining. Correcting the record does not generate another cash receipt. It improves the information and prevents an unjustified reminder. Reporting the €4,800 as cash recovered by the latest reminder would therefore misrepresent what happened.
Now change one assumption: the second transfer is €3,500. The remaining difference is €100. The team must identify whether the difference reflects a stated deduction, an input error, charges or a disagreement. It should neither close the case simply because most of the invoice was paid nor request the original €4,800 again. The next conversation concerns the unexplained €100.
These figures are a teaching example, not a Billabex customer result or a market benchmark. The distinction matters when analysing an aged receivables report. A poorly allocated invoice can remain in an overdue bucket even while the corresponding cash is available in the bank.
Find out whether the problem travels between systems
If the invoice clears in accounting but remains open in the reminder system, investigate the handover after reconciliation. Compare the date of the latest imported payment with the date of the accounting correction. Check that both systems refer to the same invoice and issuing entity. Similar-looking references are particularly unhelpful when companies within a group use separate numbering sequences.
Do not create a series of manual corrections merely to make every screen agree. Parallel changes become difficult to maintain when the next import arrives. Establish which system owns the authoritative balance, correct the source record and then confirm that the change reaches downstream tools. If a temporary intervention is unavoidable, record its purpose and the condition for removing it.
A short incident record is enough to begin improving the process: invoice, cause, investigation time, corrective action and whether the problem recurred. After several weeks, the pattern may point to missing payment references, inconsistent identifiers or infrequent synchronisation. Those causes call for different changes. Sending reminders more often addresses none of them.
Check the outcome from the next user’s perspective
The investigation is complete when the payment is identifiable, the allocation is justified, the balance is accurate and the next scheduled action uses that balance. Also examine the customer’s other invoices. Correcting one allocation should not silently create a new inconsistency elsewhere. If a match was reversed, the released amount needs an explicit next treatment.
Tell the customer when the investigation is resolved. When everything is settled, acknowledge the payment and confirm that the records have been updated. When a difference remains, show the payments recognised before explaining the remaining amount. The customer can then check a shared calculation instead of having to defend a payment that has already been demonstrated.
Assign responsibility for the final check as well as the initial investigation. Otherwise, the accounting team may regard the case as fixed while the person handling customer communication assumes it is still blocked. A brief recorded confirmation is enough: the corrected balance, the affected invoice and the follow-up action that now applies. This closes the information loop without creating another spreadsheet that must be maintained indefinitely.
To prepare your own process, the guide to SEPA transfers in B2B collections covers the payment method, while tracking customer payments helps organise usable records. A debt collection system should fit into this verified process. During a demonstration, ask what happens when a payment is recorded, corrected and then transmitted to the reminder workflow. Seeing that sequence provides stronger evidence than a general automation promise.
Sources
- Banque de France: SEPA transfers, execution times, accessed 7 September 2026.
- Odoo 18: payments, linked and standalone payments and reconciliation.
- Odoo 18: bank reconciliation, matching transactions and entries.