Payment Intents
List Payment Intents
List a merchant's Payment Intents with status filtering and offset pagination.
GET /api/v1/payment_intents
curl "https://api-prod.paybytoken.io/api/v1/payment_intents?status=succeeded&offset=0&limit=25" \
-H "Authorization: Bearer $PAYBYTOKEN_SECRET_KEY"Query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
status | string | — | Filter by a persisted Payment Intent status. |
customer | string | — | Filter by merchant Customer ID. |
offset | integer | 0 | Number of matching records to skip. |
limit | integer | 10 | Number of records to return, from 1 to 100. |
Results are ordered by created_at descending. total counts all records matching the status
filter, not only the current page.
Response
{
"total": 1,
"data": [
{
"id": "pay_t24b28nbodnk4icGMyE7",
"account_id": "acct_1",
"payer_address": "0x1234...",
"one_time_address": "0xa1A0340cF7b9326eA4210AB49c17e20e0c32a2FB",
"chain": "base",
"currency": "USDC",
"amount": "15.25",
"amount_received": "15.25",
"amount_capturable": "0.0",
"amount_captured": "15.25",
"payment_method_types": ["crypto_transfer"],
"payment_method_type": "crypto_transfer",
"capture_method": "automatic",
"description": "Order 123",
"metadata": { "order_id": "order_123" },
"customer": null,
"customer_id": null,
"customer_email": "customer@example.com",
"receipt_email": "receipts@example.com",
"status": "succeeded",
"tx_hash": "0xabcd...",
"balance_detected_block": 32600123,
"error_message": null,
"expired_at": "2026-07-29T10:30:00.000Z",
"created_at": "2026-07-29T10:15:00.000Z",
"updated_at": "2026-07-29T10:18:00.000Z",
"token": {
"currency": "USDC",
"chain": "base",
"decimals": 6
}
}
]
}Did this page answer your question?
Your feedback helps us improve the integration path.