GET /v1/orders
List orders for the organization the API key belongs to. Results are paginated and can be filtered by status, product, provider, and date range.Request
Query Parameters
| Param | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number |
size | integer | 20 | Page size (max 100) |
status | string | — | Filter by display status (e.g. Paid, Pending, Refunded) — matches the displayStatus field, not status |
product_id | string | — | Filter to a single product |
provider | string | — | Filter by payment provider: STRIPE or CRYPTO |
from_address | string | — | Filter crypto orders by buyer wallet address |
merchant_reference | string | — | Filter by your correlation ID (contains-match) |
date_from | integer | — | Unix timestamp lower bound for createdAt |
date_to | integer | — | Unix timestamp upper bound for createdAt |
Response
Response Fields
| Field | Type | Description |
|---|---|---|
id | string | Order ID — ORD + 2-digit year + 12 uppercase chars. |
status | string | Canonical status: PENDING, PAID, FAILED, CANCELED, or REFUNDED. |
displayStatus | string | Human-facing status: Pending, Paid, Processing, Failed, Canceled, Disputed, Refunded, Partially Refunded, Action Required, Authorized, Incomplete. The status query parameter filters on this value. |
amountCents | integer | Amount in minor units (cents). 1000 = 10.00 USDC. |
currency | string | Settlement currency, e.g. USDC. |
customerId | string | Customer ID, or CRYPTO_PAYER / X402_PAYER / CREDITS_PAYER for crypto, on-chain x402, and credit-funded orders. |
customerEmail | string? | Buyer email when known; omitted otherwise. |
productId | string? | Product ID (PRD…); omitted when unset. |
productName | string? | Product name; omitted when unset. |
disputed | boolean | Whether the order is under dispute. |
refunded | boolean | Whether the order was refunded. |
amountRefunded | integer | Refunded amount in cents; omitted when 0. |
txHash, fromAddress, chain | string? | On-chain settlement details; populated only for crypto / x402 orders, omitted otherwise. |
paymentLinkId | string? | Originating payment link (PL…); omitted when unset. |
merchantReference | string? | Your correlation ID, set when the order was created. Filterable via merchant_reference. |
createdAt | string | RFC 3339 UTC timestamp. |
provider, providerPaymentId, or providerStatus — fetch a single order to get those.
GET /v1/orders/:id
Get a single order, including the underlying provider payment details.Request
Path Parameters
| Param | Type | Description |
|---|---|---|
id | string | The order ID to retrieve |
Response
| Field | Type | Description |
|---|---|---|
provider | string | Payment provider: STRIPE, CRYPTO, X402, or CREDITS. |
providerPaymentId | string? | Upstream payment ID (e.g. Stripe PaymentIntent); omitted for on-chain orders. |
providerStatus | string? | Upstream status — Stripe PaymentIntent status, or chain settlement status for crypto orders. |
Errors
| Status | Description |
|---|---|
401 | API key missing or invalid. |
404 | Order does not exist or does not belong to your organization. |