List matches

GET https://api.invunion.com/api/v1/matches matches:read Markdown

List reconciliation matches for the authenticated tenant.

Returns a paginated list of matches with joined transaction and invoice fields. Filters combine with AND.

This is how you find a match without a UUID from the product. Filter with invoice number (invoiceId) and transaction code (transactionId). A live auto-match is unique for that pair. Each item’s id is the UUID required by Get match, Update match, Reverse match, and Delete match.

See also

  • Matches . Which call to use for each change.
  • Get invoice (GET/api/v1/invoices/:code). Live matches are also nested on the invoice.
  • Get transaction (GET/api/v1/transactions/:code). Live matches are also nested on the transaction.

Query parameters

NameTypeRequired
pageSize

Page size. Default 20, maximum 100.

Example: 20

integer
Optional
cursor

Opaque cursor: pass the nextCursor of the previous response. Valid only with the same sortBy, sortOrder, and filters. Omit it for the first page.

Example: Y3JlYXRlZF9hdDpkZXNjfDIwMjYtMDktMDhUMTQ6MTA6MDAuMDAwWnw3ZDljMTNlNA

string

Max 512

Optional
includeTotal

total is returned on the first page unless includeTotal=false, and on cursor pages only when includeTotal=true. Skip it to save a count.

Allowed valuestruefalse
boolean
Optional
page

Deprecated. Offset page number kept for older integrations; use cursor instead. Ignored when cursor is sent.

Example: 2

integer
Optional
sortBy

Sort column. Default created_at.

string

No maximum

Optional
Allowed valuescreated_atmatched_amountconfidence_score
sortOrder

Sort direction. Default desc.

Allowed valuesascdesc
string

No maximum

Optional
status

Filter by match status.

string

No maximum

Optional
Allowed valuesactivecancelledpending_reviewconfirmedrejected
statuses

Comma-separated list of statuses, for example confirmed,active. Takes precedence over status. Unknown values are ignored; if none is valid, the list is empty.

Example: confirmed,active

string

No maximum

Optional
matchType

Filter by how the match was created.

string

No maximum

Optional
Allowed valuesai_automanualrulewallet
minConfidence

Minimum confidence_score (0-100).

Example: 80

number
Optional
transactionId

Filter by transaction. Despite the name, pass the transaction code (transaction_code) shown in Invunion.

Example: TX-8891

string

No maximum

Optional
invoiceId

Filter by invoice. Despite the name, pass the invoice number shown in Invunion.

Example: INV-2026-0042

string

No maximum

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 matches:read 403 The key does not include matches:read. A write scope does not imply the matching read scope.
Too many requests, please try again later 429 More than 100 requests in one minute from this API key or IP address. Wait for the Retry-After header (seconds) and retry.
Invalid query parameters 400 A query value failed validation. details lists field and message.
Internal server error 500 Unexpected server error. The JSON body includes correlationId. Retry with backoff.