Create a Payout

Overview

Payouts via the API are executed only from the balances of your master wallets.

Each payout request contains two key fields:

  • coin — the cryptocurrency in which the payout must be executed

  • auto_convert — defines whether the system is allowed to automatically convert other assets to complete the payout

The payout behavior depends on the value of auto_convert.


1. Payout in a specific cryptocurrency (auto_convert = false)

If auto_convert is set to false, the system will attempt to execute the payout strictly from the balance of the specified coin.

Requirements:

  • You must have enough balance in the selected coin

  • You must have sufficient native token to pay network fees

If the balance in this coin is insufficient, the payout will fail with an error.

Example: If you request a payout of 20 USD in LTC and auto_convert = false, the system will withdraw the equivalent amount only from your LTC balance. If the LTC balance is too low → the payout cannot be executed.


2. Payout with automatic conversion (auto_convert = true)

If auto_convert is enabled, the system will:

  1. Collect available balances across your assets

  2. Convert them to the required coin

  3. Execute the payout in that cryptocurrency

This allows payouts to succeed even if your master wallet does not hold enough balance in the selected coin.

Example: If you request a 20 USD payout in LTC, but only have USDT and ETH, the system will automatically convert them into LTC and execute the payout.

This mode is ideal when:

  • you receive deposits in multiple currencies

  • you want payouts to succeed regardless of which coins you hold

  • you rely on USDT or a stablecoin as your primary balance

Create a Payout

POST https://api-processing.crypto-chief.com/v1/payout

Headers

Name
Value

Content-Type

application/json

Signature

Signed request body

Merchant

Merchant ID

Body

Name
Type
Required
Description

amount

string

true

Amount to be paid. If the amount includes pennies, use a ‘.’ as a decimal separator. Example: 10.28

coin

string

true

Coin code

order_id

string

true

Order identifier in your system. Must be a string consisting of letters, digits, underscores, and hyphens. No spaces or special characters allowed. order_id must be unique among seller’s invoices

user_id

string

true

Unique user identifier

network

string

true

Blockchain network code

address

string

true

The address of the wallet to which the funds will be withdrawn

url_callback

string

false

After successful payment, the user can click a button on the payment form to return to this URL

auto_convert

boolean

false

default: false Allows the system to automatically convert any available assets to the required payout coin. If set to false, the payout will be executed only from the balance of the specified coin; insufficient balance will result in an error.

course_source

string

false

The service from which exchange rates are taken for recalculation in the invoice. Available values: Binance BinanceP2P Bybit BybitP2P Exmo Kucoin

memo

string

false

An additional identifier for the TON, which is used to indicate a specific recipient or target.

Response

{
 type: string, // Payment type PayIn/PayOut
 uuid: string, // Unique identifier in our system
 order_id: string, // Your order ID sent during creation
 user_id: string, // Unique user identifier
 lifetime: number | null, // Validity period of the issued invoice (in seconds)
 expires_at: number, // Unix timestamp for expiration date/time
 amount: string, // Amount of the created order
 currency: string, // Currency code
 payment_link: string | null, // Link to the payment terminal
 fact_amount: string | null, // Amount of actual execution of the order
 accuracy_payment_percent: number// Allowable payment inaccuracy
 address: string | null // Wallet address for payment
 qr_code: string | null, // Wallet address QR code
 from: string | null // The wallet address from which the payment was made
 txid: string | null // Transaction hash
 coins: string[] | null, // List of allowed coins for payment
 except_coins: string[] | null, // List of excluded coins for payment
 commission: string | null, // Amount taken as commission
 is_test: boolean, // Whether the order is a test order
 status: string, // Current order status
 additional_data: string | null, // Extra info sent at order creation
 convert: {
    coin: string  | null, // Cryptocurrency code for credited amount
	  network: string | null, // Blockchain network code
    rate: string | null, // Conversion rate
    course_source: string | null, // Service from which exchange rates are taken
 },
 extra: null, // Additional invoice information 
 created_at: string, // ISO-8601 order creation date/time
}

Last updated