Retrieve a payment intent
GET/v1/payment-intents/:id
Returns the current state of a payment intent. The received_amount_cents field reflects the sum of all confirmed blockchain transactions. Use this endpoint to poll for status changes or to reconcile state after missed webhooks.
Path parameters
| Field | Type | Required | Description |
|---|---|---|---|
| id | string | required | Payment intent ID (e.g. pi_3L9kX42). |
Example
curl https://api.bchainpay.com/v1/payment-intents/pi_3L9kX42 \
-H "Authorization: Bearer $BCHAINPAY_API_KEY"Response — 200 OK
The response body is the same PaymentIntentResponse shape returned by all payment intent endpoints. See Create a payment intent for the full field reference.
{
"id": "pi_3L9kX42",
"merchant_id": "merch_abc123",
"amount_cents": 4999,
"received_amount_cents": 4999,
"remaining_amount_cents": 0,
"currency": "USD",
"network": "ethereum",
"token": "USDC",
"crypto_amount": "4990000",
"crypto_amount_decimal": "4.99",
"token_price_cents": 100,
"status": "completed",
"reference": "order_2026_001",
"metadata": {
"blockchain_address": "0x9f3a...b41C"
},
"created_at": "2026-04-27T12:00:00Z",
"updated_at": "2026-04-27T12:08:11Z"
}Errors
| Status | Code | Meaning |
|---|---|---|
401 | unauthorized | Invalid or missing API key. |
404 | not_found | No payment intent with that ID exists for this merchant. |