Skip to main content

What an unmatched bank payin is

An unmatched bank payin is an incoming bank transfer that reached one of your pooled receiving accounts but could not be automatically attributed to any of your payin orders — typically because the transfer reference (concept) was missing, invalid, or ambiguous. Instead of being credited, the funds are held and the payin is surfaced to you for manual resolution: you either assign it to the account it belongs to, or reject it so it can be returned to origin.

Why a payin ends up unmatched

The reason field tells you why the automatic matching failed:
ReasonDescription
NO_REFERENCEThe transfer arrived without any payment reference (concept)
NO_VALID_CODEThe reference was present but does not correspond to any valid payment code
AMBIGUOUS_CONCEPTThe reference matches more than one candidate and cannot be attributed safely
NO_MATCHING_METHODNo active payin method was found for the transfer’s rail and currency

Lifecycle and states

StateDescription
PENDINGDetected and awaiting resolution. Funds are held and not credited to any account.
ASSIGNEDYou attributed the payin to one of your accounts. The provider replays it and it settles as a regular bank payin.
REJECTEDYou rejected the payin; it is marked to be returned to origin.
When you assign an unmatched bank payin, the funds are credited through the standard payin flow: a regular bank payin order is created for the selected account, and you also receive the usual payin events for it. The unmatched_bank_payin_assigned webhook carries the resulting orderId.

Available endpoints

How to resolve them

1

Get notified

Subscribe to the unmatched_bank_payin_detected webhook event to know when a transfer could not be attributed automatically.
2

Review the payin

Use List unmatched bank payins or Get unmatched bank payin to inspect the sender, amount, concept and destination bank details.
3

Assign it to the right account

Call Assign unmatched bank payin with the accountId the funds belong to. The account must support payins on the transfer’s rail.
4

Or reject it

If the transfer is not yours (or cannot be attributed), call Reject unmatched bank payin with a reason, and the payin is marked to be returned to origin.
5

Track the resolution

You will receive unmatched_bank_payin_assigned (with the resulting orderId) or unmatched_bank_payin_rejected once the resolution is processed.
All amounts are expressed in minor units (e.g. 150000 = 1,500.00 EUR).