-
- abort-payment-on-terminal
- capture-payment
- filter-payments
- find-payment
- initiate-payment-flow
- list-activity-logs
- list-payment-activities
- list-payments
- list-payments-by-contact
- list-payments-by-terminal
- refund-payment
- request-payment
- resume-payment-on-terminal
- retrieve-refund-performance
- retrieve-sales-performance
- reverse-payment
- start-payment-on-terminal
- void-payment
Filter payment links
Returns a paginated list of payment links for the authenticated merchant with advanced filtering capabilities.
This endpoint provides comprehensive search functionality using database-driven filtering, allowing you to filter links by status, usage, batch, amount ranges, and date ranges.
The response includes pagination controls with previous and next cursors that can be used
to navigate through the payment link history efficiently.
Features:
- Full-text search: Search across payment link descriptions and UIDs
- Advanced filtering: Filter by status (active, disabled, expired, paid), usage (single, multiple), and batch ID
- Range support: Support for amount ranges and date ranges
per_page
number
Optional. Number of payment links to return per page. Default: 10, Maximum: 100
page
number
Optional. Page number for pagination. Default: 1 (first page)
terms
string
Optional. Full-text search across payment link descriptions and UIDs. Uses fuzzy matching for partial text matches.
status
string
Optional. Filter by status (active, disabled, expired, paid)
Allowed values:ACTIVEDISABLEDEXPIREDPAID
usage
string
Optional. Filter by link usage. SINGLE matches one-time links; MULTIPLE matches reusable links.
SINGLEMULTIPLE
batch_id
string
Optional. Filter by the payment link batch that created the link. Example: bat_1234567890
amount
string
Optional. Filter by amount. Supports: exact amount (1000), range (1000..5000), or boundless ranges (1000.. or ..5000). Amounts are in the smallest currency unit (cents for USD).
created_at
string
Optional. Filter by creation date. Supports: specific date (YYYY-MM-DD), date range (YYYY-MM-DD..YYYY-MM-DD), or keywords (today, yesterday, this_week, last_week, this_month, last_month)
expires_at
string
Optional. Filter by expiration date. Supports: specific date (YYYY-MM-DD), date range (YYYY-MM-DD..YYYY-MM-DD), or keywords.
| Attribute | Description |
|---|---|
previousobject
|
Nullable. Pagination for the previous page. Contains 'before' (page number) and 'per_page' (page size) parameters. Use these values in the 'page' and 'per_page' parameters of the next request to get the previous page. Returns null if there is no previous page. |
pagearray<object.payment_link>
|
Always present. The current page of records, ordered by creation date (newest first). Each record is serialized according to the specified record_serializer option. |
nextobject
|
Nullable. Pagination for the next page. Contains 'after' (page number) and 'per_page' (page size) parameters. Use these values in the 'page' and 'per_page' parameters of the next request to get the next page. Returns null if there is no next page. |
| Attribute | Description |
|---|---|
payment_link_idstring
|
Always present. The ID of the payment link. |
batch_idstring
|
Nullable. The ID of the batch that created this payment link, if any. |
payment_link_urlstring
|
Always present. The URL of the payment link. |
statusstring
|
Always present. The current status of the payment link. Possible values:
|
amountnumber
|
Always present. The amount of the payment link in subunits. |
currencystring
|
Always present. The 3-letter ISO currency code. |
descriptionstring
|
Always present. The description of the payment link. |
external_idstring
|
Nullable. The merchant's internal reference for this link. |
expires_atnumber
|
Nullable. When the link becomes invalid (Unix timestamp). |
single_useboolean
|
Always present. If true, the link expires after one successful payment. |
send_confirmation_emailboolean
|
Always present. If true, sends a confirmation email to the customer after each successful payment. |
installationobject.installation
|
Always present. The installation associated with this payment link. |
created_atnumber
|
Always present. The creation timestamp (Unix timestamp). |
deletableboolean
|
Always present. If true, the payment link has no associated payments and can be removed. |
| Attribute | Description |
|---|---|
installation_idstring
|
Always present. The ID of the installation. |
enabledboolean
|
Always present. Whether the installation is enabled and active. |
namestring
|
Always present. The name of the installation. |
platformstring
|
Always present. The platform type of the installation (e.g., 'WEB', 'IOS', 'ANDROID', 'TERMINAL'). Possible values:
|
identifierstring
|
Nullable. The unique identifier for the installation on the platform. |
payment_methodsarray<object.payment_method>
|
Always present. List of payment methods supported by this installation. |
email_capturestring
|
Always present. Email capture configuration for this installation. 'disabled' means no email collection, 'optional' means email is collected if provided by customer, 'required' means email is mandatory for all customers. Possible values:
|
mobile_capturestring
|
Always present. Mobile phone capture configuration for this installation. 'disabled' means no mobile number collection, 'optional' means mobile number is collected if provided by customer, 'required' means mobile number is mandatory for all customers. Possible values:
|
address_capturestring
|
Always present. Billing address capture configuration for this installation. 'disabled' means no billing address collection, 'optional' means billing address is collected if provided by customer, 'required' means billing address is mandatory for all customers. Possible values:
|
created_atnumber
|
Always present. The timestamp of the key creation as a Unix timestamp. |
| Attribute | Description |
|---|---|
namestring
|
Always present. The name of the payment method. |
display_namestring
|
Always present. The display name of the payment method. |
flowstring
|
Always present. The flow of the payment method. |
categorystring
|
Always present. The category of the payment method. |
UNHANDLED_ERROR
This error occurs when the server encounters an unexpected internal error that it cannot handle gracefully. This typically happens due to bugs, infrastructure issues, or edge cases that weren't anticipated during development.
INVALID_ARGUMENTS
This error occurs when the request contains invalid or missing parameters. Common cases include missing required fields, or values that don't match the expected format or type.
BAD_VERSION
This error occurs when making requests to an API version that does not exist. This commonly happens when using an outdated SDK or when the API version specified in the request URL is incorrect.
curl "https://api.reservepay.com/merchants/filter-payment-links" \
-X POST
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Bearer $(RESERVEPAY_API_KEY)" \
-d '{
"amount": "1000..5000"
}'
