curl --request GET \
--url https://api.sandbox.paypathiq.com/v1/clients/{clientCode}/payment-reconciliations/{externalReconciliationId} \
--header 'Authorization: Bearer <token>'{
"acceptedAt": "2026-10-15T12:30:00.000Z",
"allocations": [
{
"allocatedAmount": {
"amount": "100.00",
"currency": "EUR"
},
"externalReceivableId": "REC_EXAMPLE_1",
"matchedAmount": {
"amount": "100.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "0.00",
"currency": "EUR"
}
},
{
"allocatedAmount": {
"amount": "200.00",
"currency": "EUR"
},
"externalReceivableId": "REC_EXAMPLE_2",
"matchedAmount": {
"amount": "0.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "200.00",
"currency": "EUR"
}
}
],
"externalPaymentRequestId": "PAYREQ_EXAMPLE",
"externalReconciliationId": "RECON_EXAMPLE",
"lines": [
{
"amount": {
"amount": "100.00",
"currency": "EUR"
},
"externalReceiptLineId": "RCPT_LINE_1",
"externalReceivableId": "REC_EXAMPLE_1",
"state": "matched"
}
],
"paymentAmount": {
"amount": "300.00",
"currency": "EUR"
},
"revision": 1,
"status": "matched",
"unappliedAmount": {
"amount": "0.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "200.00",
"currency": "EUR"
}
}{
"detail": "API key is invalid, inactive, revoked, or for another environment.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 401,
"title": "API key is invalid, inactive, revoked, or for another environment.",
"type": "https://docs.paypathiq.com/problems/invalid_api_key"
}{
"detail": "The Client code is unknown, the grant lacks the required scope, or the calling address is outside the grant's IP allowlist.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 403,
"title": "The Client code is unknown, the grant lacks the required scope, or the calling address is outside the grant's IP allowlist.",
"type": "https://docs.paypathiq.com/problems/client_scope_denied"
}{
"detail": "No reconciliation exists at this authorized resource URL.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 404,
"title": "No reconciliation exists at this authorized resource URL.",
"type": "https://docs.paypathiq.com/problems/financial_event_not_found"
}{
"detail": "Route parameters or the representation are invalid. Route parameters are checked before authentication. Field errors carry a code such as invalid_format, unrecognized_keys, custom, sensitive_external_id, or sensitive_source_reference.",
"errors": [
{
"code": "invalid_format",
"detail": "Invalid ISO date",
"pointer": "/dueDate"
}
],
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 422,
"title": "Route parameters or the representation are invalid. Route parameters are checked before authentication. Field errors carry a code such as invalid_format, unrecognized_keys, custom, sensitive_external_id, or sensitive_source_reference.",
"type": "https://docs.paypathiq.com/problems/validation_error"
}{
"detail": "Each API key may send 60 requests per minute and run 1 request at a time. In sandbox, the same limits also apply per Client across all of its keys. Every request, including GET, counts.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 429,
"title": "Each API key may send 60 requests per minute and run 1 request at a time. In sandbox, the same limits also apply per Client across all of its keys. Every request, including GET, counts.",
"type": "https://docs.paypathiq.com/problems/rate_limit_exceeded"
}{
"detail": "An unexpected error prevented a safe commit, and nothing was saved. Retry with backoff.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 503,
"title": "An unexpected error prevented a safe commit, and nothing was saved. Retry with backoff.",
"type": "https://docs.paypathiq.com/problems/projection_unavailable"
}Get a payment reconciliation
Requires payment_observations:read. Returns one reconciliation with its receipt lines and the Payment’s current allocation, matched and unmatched amounts.
curl --request GET \
--url https://api.sandbox.paypathiq.com/v1/clients/{clientCode}/payment-reconciliations/{externalReconciliationId} \
--header 'Authorization: Bearer <token>'{
"acceptedAt": "2026-10-15T12:30:00.000Z",
"allocations": [
{
"allocatedAmount": {
"amount": "100.00",
"currency": "EUR"
},
"externalReceivableId": "REC_EXAMPLE_1",
"matchedAmount": {
"amount": "100.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "0.00",
"currency": "EUR"
}
},
{
"allocatedAmount": {
"amount": "200.00",
"currency": "EUR"
},
"externalReceivableId": "REC_EXAMPLE_2",
"matchedAmount": {
"amount": "0.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "200.00",
"currency": "EUR"
}
}
],
"externalPaymentRequestId": "PAYREQ_EXAMPLE",
"externalReconciliationId": "RECON_EXAMPLE",
"lines": [
{
"amount": {
"amount": "100.00",
"currency": "EUR"
},
"externalReceiptLineId": "RCPT_LINE_1",
"externalReceivableId": "REC_EXAMPLE_1",
"state": "matched"
}
],
"paymentAmount": {
"amount": "300.00",
"currency": "EUR"
},
"revision": 1,
"status": "matched",
"unappliedAmount": {
"amount": "0.00",
"currency": "EUR"
},
"unmatchedAmount": {
"amount": "200.00",
"currency": "EUR"
}
}{
"detail": "API key is invalid, inactive, revoked, or for another environment.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 401,
"title": "API key is invalid, inactive, revoked, or for another environment.",
"type": "https://docs.paypathiq.com/problems/invalid_api_key"
}{
"detail": "The Client code is unknown, the grant lacks the required scope, or the calling address is outside the grant's IP allowlist.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 403,
"title": "The Client code is unknown, the grant lacks the required scope, or the calling address is outside the grant's IP allowlist.",
"type": "https://docs.paypathiq.com/problems/client_scope_denied"
}{
"detail": "No reconciliation exists at this authorized resource URL.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 404,
"title": "No reconciliation exists at this authorized resource URL.",
"type": "https://docs.paypathiq.com/problems/financial_event_not_found"
}{
"detail": "Route parameters or the representation are invalid. Route parameters are checked before authentication. Field errors carry a code such as invalid_format, unrecognized_keys, custom, sensitive_external_id, or sensitive_source_reference.",
"errors": [
{
"code": "invalid_format",
"detail": "Invalid ISO date",
"pointer": "/dueDate"
}
],
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 422,
"title": "Route parameters or the representation are invalid. Route parameters are checked before authentication. Field errors carry a code such as invalid_format, unrecognized_keys, custom, sensitive_external_id, or sensitive_source_reference.",
"type": "https://docs.paypathiq.com/problems/validation_error"
}{
"detail": "Each API key may send 60 requests per minute and run 1 request at a time. In sandbox, the same limits also apply per Client across all of its keys. Every request, including GET, counts.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 429,
"title": "Each API key may send 60 requests per minute and run 1 request at a time. In sandbox, the same limits also apply per Client across all of its keys. Every request, including GET, counts.",
"type": "https://docs.paypathiq.com/problems/rate_limit_exceeded"
}{
"detail": "An unexpected error prevented a safe commit, and nothing was saved. Retry with backoff.",
"requestId": "29400000-0000-4000-8000-000000000001",
"status": 503,
"title": "An unexpected error prevented a safe commit, and nothing was saved. Retry with backoff.",
"type": "https://docs.paypathiq.com/problems/projection_unavailable"
}Authorizations
Integration-owned environment-specific API key. Never paste a production key into documentation tools.
Path Parameters
Stable non-sensitive Client code authorized by the Integration grant.
^[A-Za-z0-9_-]{1,128}$Caller-assigned identifier of this reconciliation. Reusing it with an identical body is a safe retry.
^[A-Za-z0-9_-]{1,128}$Response
Accepted reconciliation.
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$The Payment's allocations as of this read, across every reconciliation of the Payment. unmatchedAmount is the allocated amount no Source receipt line has acknowledged yet.
Show child attributes
Show child attributes
^[A-Za-z0-9_-]{1,128}$^[A-Za-z0-9_-]{1,128}$Show child attributes
Show child attributes
Show child attributes
Show child attributes
Increases each time the reconciliation's state changes. It matches the revision in change-feed events.
1 <= x <= 9007199254740991matched: every line fits the allocated amounts. held: at least one line differs and affected recovery and Payment actions are held. resolved: every difference was cleared by matching evidence or an authorized correction.
matched, held, resolved Funds of the Payment that no allocation covers. They are never acknowledged by receipt lines.
Show child attributes
Show child attributes
The total allocated amount of the Payment that no Source receipt line has acknowledged yet.
Show child attributes
Show child attributes
Show child attributes
Show child attributes