List orders

Returns the profile's orders, newest first, one page at a time.

  • Each row is a short summary, not the full order. To get the full order, show it.
  • Filters combine: a row must match every filter you send. A filter with several values matches any of them.
  • A filter value that matches nothing returns an empty page, not an error.
  • Page size is 20 by default, up to 100.
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
integer
required
≥ 1

Your merchant profile ID. Required in every request.

Find it in the BillPro dashboard address, after /profiles/. For example, in /profiles/1234/orders the profile ID is 1234.

Query Params
string

Search term. Matches part of the customer's first name, last name, full name or email, your customer reference, your order reference (invoice_id) or the card registration ID. Not case-sensitive. The term is matched as one phrase, not split into words. It doesn't search the order ID: use id for that.

integer

ID of the order. Exact match. One ID only: a comma list matches nothing.

integer

ID of the customer, as returned by the Customers endpoints. Lists all of that customer's orders. One ID only. To search by your own customer reference, use query.

integer

ID of the user who owns the order.

integer

ID of the card the order charges. One ID only. Orders with no card yet, such as drafts, never match.

order_type
array of strings

One or more order types. Send a single value (order_type=subscription), a comma list (order_type=single_payment,metered) or a repeated array parameter (order_type[]=single_payment&order_type[]=metered). Unrecognised values are dropped. If none are left, you get an empty page.

order_type
Allowed:
status
array of strings

One or more statuses. See the order's status for what each one means. Accepts the same forms as order_type, such as status[]=active&status[]=failed. Unrecognised values are dropped. If none are left, you get an empty page.

status
currency
array of strings

One or more currency codes, such as EUR. Case-sensitive. Accepts the same forms as order_type, such as currency[]=EUR&currency[]=GBP.

currency
string
enum

Latest delivery state of the payment link email, as in the row's link_delivery_status. none matches orders with no state recorded. One value only: a comma list or array matches nothing.

Allowed:
date

Orders created on or after this date, such as 2026-09-01. A date that can't be read is ignored, so the list isn't narrowed.

date

Orders created on or before this date, such as 2026-09-30. A date that can't be read is ignored.

date

Orders whose status last changed on or after this date, such as 2026-09-01. A date that can't be read is ignored.

date

Orders whose status last changed on or before this date. Use it with status=pending to find orders that have waited too long for payment. A date that can't be read is ignored.

string
enum

Sorts by creation date (created_at) or by the customer's first name (first_name). Any other value returns 422. Leave it out for newest first.

Allowed:
string
enum
Defaults to asc

Sort direction: asc or desc. Default asc. Only used with sort.

Allowed:
integer
Defaults to 1

Page number, starting at 1. A page past the last one returns 404, so stop when next_page is null. Send a positive whole number: 0, negative or non-numeric values return 500.

integer
≤ 100
Defaults to 20

Orders per page. Default 20. Values above 100 are reduced to 100. Other invalid values use 20.

Responses

Language
Credentials
Bearer
API token
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json