본문으로 건너뛰기

API Reference

Complete reference for all Checkout API endpoints.

Checkout Endpoints

List Checkouts

Retrieve a list of checkouts for your project.

GET /v1/checkouts

Headers

HeaderRequiredDescription
x-api-keyYesServer Key (volr_server_...)

Query Parameters

ParameterTypeDefaultDescription
statusstring-Filter by status: PENDING, PAID, SETTLED, EXPIRED, etc.
takenumber20Number of results (1-100)
skipnumber0Offset for pagination
referenceIdstring-Filter by your order ID

Response

{
"ok": true,
"data": [
{
"id": "cm5xyz123...",
"status": "PAID",
"amount": "10000000",
"referenceId": "ORDER-12345",
"createdAt": "2026-01-30T10:30:00.000Z"
}
],
"pagination": {
"total": 150,
"take": 20,
"skip": 0
}
}

Get Checkout

Retrieve details of a specific checkout.

GET /v1/checkouts/:id

Headers

HeaderRequiredDescription
x-api-keyYesServer Key (volr_server_...)

Response

Returns the full checkout object. See Create Checkout for field descriptions.


Get Checkout (Public)

Retrieve public checkout information for payment pages.

GET /c/:checkoutId

No authentication required. Returns limited public information suitable for displaying to customers.

Response

{
"ok": true,
"data": {
"id": "cm5xyz123...",
"chainId": 8453,
"tokenAddress": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"amount": "10000000",
"depositAddress": "0xabc123...",
"status": "PENDING",
"expiresAt": "2026-01-30T11:00:00.000Z",
"itemName": "Americano",
"fiatAmount": "4.50",
"fiatCurrency": "EUR",
"merchantName": "Coffee Shop",
"merchantLogoUrl": "https://...",
"token": {
"symbol": "USDC",
"name": "USD Coin",
"decimals": 6,
"iconUrl": "https://..."
},
"network": {
"name": "Base",
"blockExplorerUrl": "https://basescan.org"
},
"totalPaid": "0",
"isPaid": false,
"paymentTxHash": null
}
}

Verify Payment

Submit a transaction hash for payment verification.

POST /c/:checkoutId/verify

No authentication required. Customers can submit their transaction hash for faster payment confirmation.

Request Body

{
"txHash": "0xdef456...",
"chainId": 8453
}

Response

{
"ok": true,
"data": {
"status": "DETECTED",
"message": "Payment detected, awaiting confirmation"
}
}

Cancel Checkout

Cancel a pending checkout.

POST /v1/checkouts/:id/cancel

Headers

HeaderRequiredDescription
x-api-keyYesServer Key (volr_server_...)

Response

{
"ok": true,
"data": {
"id": "cm5xyz123...",
"status": "CANCELLED"
}
}
경고

Only PENDING checkouts can be cancelled. Checkouts with detected or confirmed payments cannot be cancelled.

Checkout Status Flow

PENDING → DETECTED → PAID → SETTLED
↓ ↓
EXPIRED LATE_PAID

CANCELLED
StatusDescription
PENDINGWaiting for payment
DETECTEDPayment detected on-chain, awaiting confirmation
PAIDPayment confirmed
SETTLEDFunds transferred to merchant
EXPIREDCheckout expired without payment
LATE_PAIDPayment received after expiry
CANCELLEDCancelled by merchant