Skip to main content
POST
Create payment

Headers

X-API-Key
string | null

Path Parameters

wallet_uuid
string<uuid>
required

UUID of the wallet to sign and submit the payment from. Obtain this value from the wallet creation or list-wallets response. The wallet must be active (not archived).

Body

application/json

Unified payment request.

Protocol-specific fields are prefixed with protocol name (x402_ / mpp_).

protocol
enum<string>
required

Payment protocol: 'x402' or 'mpp'

Available options:
x402,
mpp
request_id
string | null

Idempotency key

Maximum string length: 255
x402_payment_required
string | null

Base64-encoded JSON from Payment-Required header

mpp_www_authenticate
string | null

WWW-Authenticate header raw value

mpp_session
MppSessionParams · object | null

Session parameters for MPP session actions (open/voucher/close)

Response

Successful Response

result
PaymentResult · object
required

Unified payment result.

CLI uses retry_headers to retry the original request.

success
boolean
default:true
suggestion
string
default:""
message
string
default:""
meta
PaginationMeta · object | null

Pagination metadata for list responses.

Supports both legacy offset-based and cursor-based pagination. Cursor fields (has_more, after, before) are populated for cursor-paginated endpoints. Legacy fields (offset, limit) are populated when the caller uses the deprecated offset parameter.