Skip to main content
POST
Create payment request for account
Creates a payment request for an account, reserving funds from its wallet for settlement. The response carries the request status (PENDING/RESERVED) and an executions array with the on-chain transactionHash; the amount moves to the wallet’s reserved balance. Send a unique idempotencyKey per request (safe retries). Concept guide: Payment requests
The account must be verified, and (self-custody) its wallet ACTIVE with an allowance, before a payment can be reserved. See Account verification and Approving transfers without gas.
amount and originalAmount are returned as objects{ "fiat": <number>, "crypto": "<string>" } — not scalars. There is no GET endpoint for payment requests: the full object (including executions) is only returned on this create call, so persist the response if you need it later.

Authorizations

Path Parameters

accountId
string<uuid>
required

Unique account identifier

Body

application/json
amount
number
required

Payment amount

currency
string
required

Currency code (e.g. EUR, USD)

Minimum string length: 1
idempotencyKey
string
required

Unique key to prevent duplicate operations on retry

Minimum string length: 1
externalId
string

Optional external reference ID

description
string

Optional payment description

Response

Payment request created

success
boolean

Indicates whether the request was successful

result
object