curl --request GET \
--url https://api.next.orenda.finance/v1/payments/requests \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.next.orenda.finance/v1/payments/requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.next.orenda.finance/v1/payments/requests"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"success": true,
"total": 1,
"page": 1,
"limit": 10,
"data": [
{
"id": "c8d9e0f1-7777-4b8c-8d9e-ffff00001111",
"customerId": "c9f8e7d6-1111-4b2c-8d3e-444455556666",
"accountId": "e4f5a6b7-3333-4d4e-8f5a-bbbbccccdddd",
"type": "CUSTOMER",
"subType": "SEND",
"amount": 7000,
"currency": "EUR",
"status": "PENDING",
"transactionMonitoring": "SUBMITTED",
"isDirectDebit": false,
"createdDateTime": "2026-06-12T14:24:14.601Z"
}
]
}Search payments
Search payment requests, including pending and failed payments.
Two defaults on this endpoint are easy to trip over:
- Omitting
statusis not the same as “all”. With nostatusthe search returns onlyPENDING,PENDING_TM,INITIATEDandPENDING_CANCELLATION. Pass an explicitstatuslist to widen it. - The date filters are
startDate/endDate.fromDate/toDateare ignored here, so a request carrying them searches an unbounded range.
Other defaults: limit=10, page=1, sortBy=createdDateTime, sortOrder=desc. Pagination is ignored for resultType=file — the export always spans the whole result set. keyword is not supported.
All filters accept comma-separated values for multi-select.
Unlike the other search endpoints, items here follow a defined shape rather than returning the stored record as-is: the response carries the fields listed in the payments spec’s PaymentRequest, plus programId, transactionMonitoring, updatedAt, the provider-side reconciliation keys endToEndReference, originalEndToEndReference, providerStatus, entity, custodianId, debtorViban, batchId, unloadId and purpose, and the SEPA direct-debit cancellation context priorStatusBeforeCancellation, cancellationRequestedAt, cancellationReasonCode and cancellationSource. Those extra fields are back-office only — the customer-facing payment-request endpoints return the PaymentRequest shape alone, which does include subType, providerRequestId, batchItemId and childAccountId, because those are query filters on both surfaces. payee.currency — the FX target currency on an international payout, distinct from the top-level source currency — is returned on both. Internal fields on the underlying record (card authorisation detail and transaction-monitoring history among them) are not returned on either surface. The resultType=file CSV export carries the same fields. Its statusHistory is flattened one column per entry (statusHistory.0.status, statusHistory.1.status, …), unchanged from before.
curl --request GET \
--url https://api.next.orenda.finance/v1/payments/requests \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.next.orenda.finance/v1/payments/requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.next.orenda.finance/v1/payments/requests"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"success": true,
"total": 1,
"page": 1,
"limit": 10,
"data": [
{
"id": "c8d9e0f1-7777-4b8c-8d9e-ffff00001111",
"customerId": "c9f8e7d6-1111-4b2c-8d3e-444455556666",
"accountId": "e4f5a6b7-3333-4d4e-8f5a-bbbbccccdddd",
"type": "CUSTOMER",
"subType": "SEND",
"amount": 7000,
"currency": "EUR",
"status": "PENDING",
"transactionMonitoring": "SUBMITTED",
"isDirectDebit": false,
"createdDateTime": "2026-06-12T14:24:14.601Z"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
The program to scope results to. Required on every request — including when you pass allPrograms=true. A request without it is rejected before it reaches the search.
When true, widen the search from the single programId to every program your operator role is entitled to. It never reaches beyond your entitlements, and it does not remove the need to send programId. A role with no program entitlement matches nothing rather than everything.
true, false Filter by customer ID. Comma-separated for multi-select.
Filter by custodian ID. Comma-separated for multi-select. Ignored for guardian-bound roles, which are always scoped to their own guardian.
1-based page number. Defaults to 1.
x >= 1Maximum number of items per page.
x >= 1Sort direction.
asc, desc Result format. json (default) returns inline results; file returns a presigned S3 CSV URL (valid 1 hour) in place of the data array.
json, file Customises the filename of the exported CSV when resultType=file.
Field to sort by. Defaults to createdDateTime.
Filter by payment-request status. Comma-separated for multi-select. When omitted, defaults to PENDING,PENDING_TM,INITIATED,PENDING_CANCELLATION — pass an explicit list to search other statuses.
Lower bound (inclusive) on the payment-request date, ISO 8601. Note: fromDate is not accepted on this endpoint.
Upper bound (inclusive) on the payment-request date, ISO 8601. Note: toDate is not accepted on this endpoint.
Filter by payment-request ID. Comma-separated for multi-select. paymentRequestId is accepted as an alias; if both are sent, id wins.
Alias for id. Comma-separated for multi-select.
Filter by the provider's own request identifier. Comma-separated for multi-select.
Filter by the originating batch item ID. Comma-separated for multi-select.
Filter by account ID. Comma-separated for multi-select.
Filter by child account ID — used to find requests raised against a child of a prepaid master account. Comma-separated for multi-select.
Filter by payment type. Comma-separated for multi-select.
Filter by payment sub-type (e.g. SEND). Comma-separated for multi-select.
Filter by transaction-monitoring state, e.g. SUBMITTED, APPROVED, REJECTED. Comma-separated for multi-select.
Filter by currency (ISO 4217). Comma-separated for multi-select.
Response
Matching payment requests, or a presigned export URL when resultType=file.
- Option 1
- Option 2
Inline JSON results, or — when resultType=file — a presigned CSV export URL.