Reconcile transaction
Ignore, include, or unlink matches on a bank transaction. To allocate a payment to an invoice, use Create match.
This is inbox control for one transaction, identified by `transaction_code`. It does not create a settlement.
`ignore` cancels live matches and hides the line from invoice matching. `include` brings an ignored line back and re-runs matching. `unlink_all` cancels every live match on the line; set `ignore` to true to exclude it afterwards. `unlink_match` cancels one match. `save` only updates an existing live match (invoice, customer, payment method, and amount together) for the Invunion workbench. `matchId` is the match UUID, not the transaction code.
See also
- Update match (PUT
/api/v1/matches/:id). Change the amount or cancel one match without deleting the row. - Cancel match (DELETE
/api/v1/matches/:id). Permanently delete one match. - Matches . Which call to use for each change.
Path parameters
| Name | Type | Required |
|---|---|---|
codeTransaction code (`transaction_code`). Example: TX-8891 | string Max 50 | Required |
Body parameters
| Name | Type | Required |
|---|---|---|
actionignore, include, and unlink_all are the usual public actions. save updates an existing live match and cannot create one; use Create match. | string No maximum | Required |
Allowed values ignoreincludeunlink_allunlink_matchsave | ||
matchIdRequired for save and unlink_match. UUID of a live match on this transaction. Not used for ignore, include, or unlink_all. Example: 1c9e6679-7425-40de-944b-e07fc1f90ae7 | string No maximum | Optional |
counterpartyIdRequired for save. Counterparty code (`account_code`). Example: CPT-042 | string No maximum | Optional |
paymentMethodIdRequired for save. Catalog payment-method code that belongs to the counterparty. Example: PM-001 | string No maximum | Optional |
invoiceIdRequired for save. Invoice number billed to the counterparty. Example: INV-2026-0042 | string No maximum | Optional |
matchedAmountRequired for save. Positive amount allocated on this match. Example: 1000 | number | Optional |
ignoreFor unlink_all only. If true, also ignore the transaction after unlinking. Allowed values truefalse | boolean | Optional |
Errors
This operation can return the following errors in addition to generic HTTP failures.
| Error | HTTP code | Description |
|---|---|---|
Missing Bearer token | 401 | The Authorization header is missing or is not a Bearer token. |
Invalid or revoked API key | 401 | The API key is unknown, malformed, expired, or has been revoked. |
API key is missing scope transactions:write | 403 | The key does not include transactions:write. A write scope does not imply the matching read scope. |
Too many requests, please try again later | 429 | Wait and retry. The Retry-After header is the number of seconds to wait. |
Validation failed | 400 | The body failed schema validation. details lists field and message. |
Tenant required | 400 | The authenticated credential is not bound to a tenant. |
An ignored transaction cannot be reconciled | 400 | save and unlink_match are refused on an ignored transaction. Use include first. |
Invoice does not belong to the selected counterparty | 400 | invoiceId is not billed to counterpartyId. |
Payment method does not belong to the selected counterparty | 400 | paymentMethodId is not linked to counterpartyId. |
Transaction and invoice currencies must match | 400 | Cross-currency matching needs a conversion rate, or the currencies differ when no rate applies. |
No applicable currency conversion rate is available | 400 | The match needs FX and no rate is stored for that date. |
A live match already exists for this transaction and invoice | 400 | Another active match already links this pair. |
Transaction not found | 404 | No transaction with this code exists in the authenticated tenant. |
Match not found | 404 | matchId is missing, not on this transaction, or not live. |
Invoice not found | 404 | invoiceId does not exist in this tenant. |
Internal server error | 500 | Unexpected server error. The JSON body includes correlationId. Retry with backoff. |