Payout API
Tips
Payout API is used to initiate transfer requests to e-wallets or bank accounts.
- All requests are
Postrequests, and the data format isjson - API Documentation for Payout via PIX
Brief Description
Request URL
/v1/paypro/payout
Request Method
- POST
Header
| Header | Required | Type | Description |
|---|---|---|---|
| merchantNo | Yes | string | - |
Request Body Parameters
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| timestamp | Yes | string | Timestamp (e.g., 1715941383720) |
| sign | Yes | string | Generate the sign by sorting the body fields by their first letter into key1=value1key2=value2, then use the app secret as salt for MD5 encryption. The final sign should be in lowercase letters. |
| tradeNo | Yes | string | Unique transaction number (suggested format: YYYYMMDDHHMMSS + random number) |
| amount | Yes | string | Payment amount |
| name | Yes | string | Recipient's name |
| Yes | string | Recipient's email | |
| mobile | Yes | string | Recipient's mobile phone number |
| bankType | Yes | string | Bank account type (CPF/CNPJ/EMAIL/PHONE/EVP) |
| bankNumber | Yes | string | Recipient's bank account number |
| identityType | Yes | string | Recipient's ID type (CPF/CNPJ) |
| userIdentity | Yes | string | Recipient's ID number |
| notifyUrl | Yes | string | Asynchronous callback URL |
| remark | Yes | string | Request remark |
Request Parameter Example
{
"timestamp": "1724149702962",
"tradeNo": "123231222",
"amount": "300",
"name": "abc",
"email": "abc@xx.com",
"mobile": "123456789",
"bankType": "CPF",
"bankNumber": "10094038292",
"identityType": "CPF",
"userIdentity": "18171847084",
"notifyUrl": "xxxxxx",
"remark": "000000"
}
Response Result
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| msg | Yes | string | Request result (Returning "success" only indicates the request was successful; it should not be used for merchant-side logic) |
| code | Yes | string | Request response code (Returning "0000" only indicates the request was successful; it should not be used for merchant-side logic) |
| timestamp | Yes | string | Transaction timestamp |
| success | Yes | string | Transaction result |
| data | Yes | Object | Response object |
| data.platFormTradeNo | Yes | string | PayPro transaction number, unique |
| data.status | Yes | string | Request result. The merchant can use this for logical processing. "0000" indicates transaction success, "0015" indicates processing, and other codes are error codes that can be treated as failures. |
| data.desc | Yes | string | Error description |
Successful Response Example
{
"msg": "success",
"code": "0000",
"timestamp": 1719829933893,
"success": true,
"data": {
"platFormTradeNo": "32e936de44164512abe419a9d1b2449a",
"status": "0015",
"desc": "CREDIT_INPROGRESS"
}
}
