Endpoint#
POST
https://YOUR_GATEWAY_HOST/Payment_Dfpay_add.htmlapplication/x-www-form-urlencoded
Parameters#
| Field | Requirement | Signed | Description |
|---|---|---|---|
mchid | Required | Yes | Merchant number shown in the panel, not the internal user ID. |
out_trade_no | Required | Yes | Original merchant payout order ID; use a unique ID for each new request. |
money | Required | Yes | BRL amount string with two decimal places. Limits and fees depend on merchant and product. |
bankname | Required | Yes | PIX key type: PIX_CPF, PIX_PHONE, PIX_EMAIL or PIX_EVP. Supported types and formats depend on the assigned product. |
cardnumber | Required | Yes | Recipient PIX key matching bankname, as a string. Preserve CPF/CNPJ leading zeros and follow product-specific phone formats. |
accountname | Recommended | When nonempty | Recipient legal name; recommended, and required when the product mandates it. |
notifyurl | When applicable | When nonempty | Merchant notification URL; supply it to receive payment results. |
subbranch | As required by the assigned product | When nonempty | Bank branch details, when required by the assigned product. |
province | Optional | When nonempty | State/city as required by the assigned product; not required in the common PIX example. |
city | Optional | When nonempty | State/city as required by the assigned product; not required in the common PIX example. |
extends | As required by the assigned product | When nonempty | Base64(JSON) extensions; send only when required and defined by the assigned product. |
pay_md5sign | Required | No | 32-character uppercase MD5 signature; exclude this field from signing. |
Examples#
cURL · replace placeholders before use
curl --request POST 'https://YOUR_GATEWAY_HOST/Payment_Dfpay_add.html' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'mchid=10000' \
--data-urlencode 'out_trade_no=DEMO_PAYOUT_001' \
--data-urlencode 'money=100.00' \
--data-urlencode 'bankname=PIX_CPF' \
--data-urlencode 'cardnumber=YOUR_PIX_KEY' \
--data-urlencode 'accountname=RECIPIENT_NAME' \
--data-urlencode 'notifyurl=https://example.com/payout/notify' \
--data-urlencode 'pay_md5sign=CALCULATE_WITH_YOUR_APIKEY'Request fields · submit as form
{
"mchid": "10000",
"out_trade_no": "DEMO_PAYOUT_001",
"money": "100.00",
"bankname": "PIX_CPF",
"cardnumber": "YOUR_PIX_KEY",
"accountname": "RECIPIENT_NAME",
"notifyurl": "https://example.com/payout/notify",
"pay_md5sign": "CALCULATE_WITH_YOUR_APIKEY"
}Response example
{
"status": "success",
"msg": "代付申请成功",
"transaction_id": "DEMO_PLATFORM_PAYOUT"
}Response example
{
"status": "error",
"msg": "签名验证失败",
"data": []
}Signing & result handling#
Compute the signature over the operation-specific field set, not every example field.
Open signing guide