Skip to main content
In a nutshell
A payment order represents a single expected fiat collection. When you use the one-time virtual account rail, each order is backed by a dedicated bank account that is valid for one payment only. The Payment Orders endpoints let you list and track every order at the master wallet level or scoped to a specific child address.

Prerequisites

Before using the Payment Orders API, ensure you have:
1

API Key

Get your API key from the Blockradar Dashboard. Navigate to Developers to generate one.
2

Wallet Created

Create a wallet via the Create Wallet API or dashboard. You’ll need the walletId for payment order operations.
3

Compliance Approved

Complete the Due Diligence process on the Dashboard: My wallets > Settings > Compliance
4

Feature Enabled

Request virtual accounts feature activation after compliance approval. Contact [email protected] or use live chat on the dashboard.
5

Mainnet Environment

Virtual accounts are only available on MAINNET. Testnet environments do not support virtual account operations.
6

Stablecoin Support

Depositing Fiat and converting it to a stablecoin is a paid feature. Ensure your account plan includes stablecoin access. Upgrade from Dashboard → Settings → Subscription.

How It Works

A payment order is created whenever a customer initiates a fiat deposit. For the one_time_virtual_account rail, Blockradar issues a fresh virtual bank account tied to that order and set of amounts. Once the customer pays, the order moves through its lifecycle and the matching stablecoin is minted and settled to the linked wallet or address.

Order Created

An order is generated with a reference, an expected amount, and its collection rail.

Account Issued

For the one-time virtual account rail, a single-use bank account is attached in paymentInstructions.

Payment Received

The customer pays the account before expiresAt; the order transitions to processing then paid.

Settlement

The stablecoin equivalent is minted and settled to the linked wallet or child address.

Order Status

Every order reports its current lifecycle status. Use the status query parameter to filter results.

Collection Rails

The rail field identifies how the order is collected. Single-use virtual accounts use the one_time_virtual_account rail.

Listing Master Wallet Payment Orders

Returns a paginated list of every payment order created under a master wallet. Use the query parameters to filter by status, rail, currency, asset, date range, or free-text search. GET /v1/wallets/{id}/deposit/fiat/orders

Query Parameters

Response Example

Listing Child Address Payment Orders

Returns the payment orders scoped to a single child address. The response includes the same order fields plus additional settlement, provider, and customer details. GET /v1/wallets/{walletId}/addresses/{addressId}/deposit/fiat/orders

Path Parameters

Query Parameters

Response Example

Response Fields

The amountFiatReceived, amountSettled, providerReference, provider, and customer fields are returned on the child address endpoint and populate as the order progresses through settlement.

API Reference

Discovery & Configuration

Master Wallet

Child Address

Retrieving, refreshing, and cancelling an order need only the order ID, so there is no child address equivalent. Use the master wallet endpoints above for any order, including one created against a child address.The API also exposes a Find Fiat Deposit operation (POST /v1/wallets/{id}/deposit/fiat/finder) that locates a fiat deposit and its processing details from a payment reference. It is useful for reconciling a payment a customer says they sent against the order it belongs to.