Skip to main content

Batch Payout

Payout API used for Merchant/Partner to make transfers in batch.

EndPoint#

POST /binancepay/openapi/payout/transfer

Request Parameters#

AttributesTypeRequiredLimitationDescription
requestIdstringYMaximum length 32The unique ID assigned by the merchant to identify a payout request.
bizScenestringNEnum valueDescribe the business scene of this payout. Limited to:

DIRECT_TRANSFER: the default value
CRYPTO_REWARDS: gift or rewards payout
SETTLEMENT: settlement or commission fee
REIMBURSEMENT: reimburse employees
MERCHANT_PAYMENT: payment to partners/users
OTHERS
batchNamestringYMaximum length 32The name of the batch payout.
currencystringYCrypto token only, fiat NOT supported. All characters must be in uppercaseAll the transfers under this batch must use the same currency.
totalAmountdecimalYMin amount of each token limited by C2C limitIt must be equal to the sum of all the detail transfers.
totalNumberintYMaximum value 1000The total number of transfers. It must be equal to the detail transfer count.
transferDetailListlist[TransferDetailReq]YMaximum size 1000Detail transfer list

Child Attribute#

TransferDetailReq#

AttributesTypeRequiredLimitationDescription
merchantSendIdstringYMaximum length 32The unique ID assigned by the merchant to identify a detail transfer.
receiveTypestringYEnum valueReceiver's ID type, either be

PAY_ID: payment account ID or
BINANCE_ID: Binance user ID.
receiverstringYReceiver's ID
transferAmountdecimalYMin amount of each token limited by C2C limitTransfer amount.
transferMethodstringYEnum stringWallet to be used. Currently support:

FUNDING_WALLET
SPOT_WALLET
remarkStringNMaximum length 128Remark

Sample Request Body#

{    "requestId":"samplerequest1234",    "merchantId":32131,    "batchName" :"sample batch",    "currency" : "BUSD",    "totalAmount": 200.4,    "totalNumber": 2,    "bizScene": "SETTLEMENT",
    "transferDetailList":[        {            "merchantSendId" : "21231313131",            "transferAmount": 110.3,            "receiveType":"PAY_ID",            "transferMethod":"SPOT_WALLET",            "receiver":"354205155",            "remark":"test1"        },                {            "merchantSendId" : "21231313132",            "transferAmount": 90.1,            "receiveType":"PAY_ID",            "transferMethod":"SPOT_WALLET",            "receiver":"354205153",            "remark":"test2"        }         ]}

Response Parameters#

AttributesTypeRequiredLimitationDescription
statusstringY"SUCCESS" or "FAIL"status of the API request
codestringY-request result code, refer to
dataPayoutTransferResponseY-response body, refer to
errorMessagestringN-

Child Attribute#

PayoutTransferResponse#

AttributesTypeRequiredLimitationDescription
requestIdstringYMaximum length 32The passed-in request ID
statusstringYEnum stringACCEPTED: accepted the request, will process it soon

Sample Response#

{  "status": "SUCCESS",  "code": "000000",  "data": {    "requestId": "samplerequest1234",    "status": "ACCEPTED"  }}
{    "status": "FAIL",    "code": "400003",    "errorMessage": "Timestamp for this request is outside of the recvWindow."}

Result Code#

NameCodeReasonSolution
UNKNOW_ERROR400000An unknown error occurred while processing the request.Try again later
INVALID_REQUEST400001Parameter format is wrong or parameter transferring doesn't follow the rules.Please check whether the parameters are correct.
INVALID_SIGNATURE400002Incorrect signature resultCheck whether the signature parameter and method comply with signature algorithm requirements.
INVALID_TIMESTAMP400003Timestamp for this request is outside of the time window.Sync server clock
INVALID_API_KEY_OR_IP400004API identity key not found or invalid.Check API identity key
BAD_API_KEY_FMT400005API identity key format invalid.Check API identity key.
MANDATORY_PARAM_EMPTY_OR_MALFORMED400100A parameter was missing/empty/null, or malformed.
INVALID_PARAM_WRONG_LENGTH400101A parameter was not valid, was empty/null, or too long/short, or wrong format.
INVALID_PARAM_WRONG_VALUE400102A parameter was not valid, the value is out of range.
INVALID_PARAM_ILLEGAL_CHAR400103A parameter was not valid, contains illegal characters.
INVALID_REQUEST_TOO_LARGE400104Invalid request, content length too large.
INVALID_REQUEST_CURRENCY_NOT_SUPPORTED400105Invalid request, the transfer currency is not supported or not in upper case.
PAYMENT_MERCHANT_STATUS_INVALID403035Invalid request, Merchant status invalid, frozen or locked
PAYMENT_C2C_RECEIVER_ACCOUNT_NOT_FOUND403201Invalid request, payee not found
PAYEE_ACCOUNT_LOCKED403303Invalid request, payee account is locked
PAYEE_ACCOUNT_FROZEN403304Invalid request, payee account is frozen
PAYMENT_C2C_RECEIVER_ACCOUNT_INVALID403202Invalid request, payee status invalid, payee account has been deleted
USER_IN_BLACK_KYC200003003Caller status invalid, merchant not in KYC list
USER_IN_BLACK_IP_AND_NO_KYC200003004Caller status invalid, merchant has no KYC
USER_IN_BLACK_IP_AND_KYC200003005Caller in IP blacklist
USER_IN_BLOCK_KYC403315Payee is unable to access Binance due to his/her residential region, you will not be able to proceed with the transfer.
PAYEE_KYC_NOT_PASSED405001We are unable to initiate the transfer as payee has not completed identity verification.
PAYMENT_INSUFFICIENT_BALANCE403020Insufficient Balance.
PAYMENT_EXCEED_MERCHANT_DAILY_LIMIT403073Exceeds merchant's payment limit in USD.
PAYMENT_EXCEED_MERCHANT_ANNUAL_LIMIT403074Exceeds merchant's payment limit in USD.
RISK_HIT_REJECTED403043The deal is rejected and there may be risks in the current transaction.