For the complete documentation index, see llms.txt. This page is also available as Markdown.

Fiat Payout API

Integrate fiat payouts from a USDT balance to third-party bank accounts.

The Fiat Payout API lets your organization send fiat currency from its USDT balance to a third-party bank account. A payout is created through a quote-first workflow and processed asynchronously.

A successful API response confirms that the request was accepted, not that the payout has completed. Use the query endpoint or an order webhook to obtain the final result.

Before you begin

  • Complete Authentication and include the required common parameters in every request.

  • Fund your partner basic account with sufficient USDT for the payout and applicable fees.

  • Implement order webhooks or plan to poll the query endpoint for asynchronous status updates.

Integration flow

1. Discover payout capabilities

Use the capabilities endpoints to select a supported country, currency, bank or wallet, and clearing network. Retrieve the required beneficiary fields for the selected route instead of hard-coding them.

2. Create a payout quote

Create a payout quote with the selected route, amount, remittance purpose, and beneficiary details. Store the returned order_no and note the quote expiry time.

3. Create the payout

Create the payout with the valid, unexpired quote order_no. Each quote can be confirmed only once.

4. Track the final status

Query the payout or process order webhooks until the payout reaches a final order status. Do not treat the create response as proof of completion.

Key rules

Rule
Description

Capability discovery

Query the support endpoints before quoting because available routes and required fields can vary by country, currency, bank, and amount.

Quote idempotency

Use a unique request_id for each quote request. Its scope includes the common partner_id.

Quote required

Create the payout with the valid, unexpired order_no returned by the quote endpoint. Each quote can be confirmed only once.

Beneficiary type

Use individual_beneficiary for account_type=01 or enterprise_beneficiary for account_type=03.

Dynamic fields

Send fields returned by /supports/fields in the case-sensitive beneficiaryFields object when creating a quote.

Remittance purpose

Use a supported purpose_code and preserve leading zeroes.

Asynchronous status

Creating a payout does not mean it has completed. Use the query API or order webhooks to obtain its final status.

Endpoint reference

For request parameters, response schemas, and endpoint details, see the Fiat Payout API Reference.

Last updated