API REFERENCE
Pagamentos online UnionPay
Parâmetros
| Parameter | Type | Descrição | Obrigatório |
|---|---|---|---|
| data.pay_method | string | online | ✓ |
| data.sub_pay_method | string | UnionPayWap | ✓ |
| data.order_id | string | 商户的订单ID | ✓ |
| data.amount | string | 金额数字。例如 € 24.99 应该写成24.99,欧元金额>=1 | ✓ |
| data.currency | string | 货币代码,ISO 4217,例如EUR,CHF | ✓ |
| data.description | string | 订单描述 | ✓ |
| data.demo | string | 自定义字段 | — |
| data.timeout | string | 过期时间单位分钟(0-1440) | ✓ |
| data.redirect_url | string | 支付完成后跳转地址 | — |
| data.notify_url | string | 支付完成后异步通知地址 | ✓ |
| Parâmetro | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| user | String | Conta do operador de caixa UID | Obrigatório |
| sign | String | Signature | Obrigatório |
| method | String | v3.CreatePayments | Obrigatório |
| time | Long | Timestamp | Obrigatório |
- Parameters
| Parâmetro | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| pay_method | String | online | Obrigatório |
| sub_pay_method | String | UnionPayWap | Obrigatório |
| order_id | String | ID do pedido do comerciante | Obrigatório |
| amount | String | Montante numérico. Por exemplo, € 24.99 deve ser indicado como 24.99; montante em euros >=1 | Obrigatório |
| currency | String | Código de moeda ISO 4217, por exemplo EUR ou CHF | Obrigatório |
| description | String | Descrição do pedido | Obrigatório |
| demo | String | Campo personalizado | Opcional |
| timeout | String | Tempo de expiração em minutos (0-1440) | Obrigatório |
| redirect_url | String | URL de redirecionamento após o pagamento | Opcional |
| notify_url | String | URL de notificação assíncrona após o pagamento | Obrigatório |
Signature example:
Parâmetros ordenados e concatenados numa cadeia de consulta no formato de URL
"amount=1¤cy=EUR&demo=test&description=YabandPay test&method=v3.CreatePayments¬ify_url=https://www.yabandpay.com/notify&order_id=20248416516546816541&pay_method=online&redirect_url=https://www.yabandpay.com&sub_pay_method=UnionPayWap&time=1546588959&timeout=0&user=YOUR_CASHIER_UID"
Assine a stringA utilizando secret_key
A assinatura resultante é:
"YOUR_SIGNATURE"
Request example:
{
"user": "YOUR_CASHIER_UID",
"sign": "YOUR_SIGNATURE",
"method": "v3.CreatePayments",
"time": 1546588959,
"data": {
"description": "YabandPay test",
"timeout":"0",
"pay_method": "online",
"sub_pay_method": "UnionPayWap",
"order_id": "YOUR_ORDER_ID",
"amount": "1",
"currency": "EUR",
"redirect_url": "https://www.yabandpay.com",
"notify_url": "https://www.yabandpay.com/notify",
"demo": "test"
}
}
Response example:
{
"status": true,
"code": "200",
"data": {
"order_id": "YOUR_ORDER_ID",
"trade_id": "d80e6ed6-e5e1-04f2-42b9-6aa18e74c3ea",
"amount": "1.00",
"currency": "EUR",
"url": "https://pay.yabandpay.com/payments/callback/order/ZDgwZTZlZDYtZTVlMS0wNGYyLTQyYjktNmFhMThlNzRjM2Vh",
"state": "processing"
},
"message": ""
}
Additional information:
Response result:
-
Um pedido bem-sucedido devolve "status": true.
-
Um pedido mal-sucedido devolve "status": false.
Recomendamos vivamente utilizar Query Order e Asynchronous Notifications para manter os estados dos pagamentos corretos e atualizados.
Response codes:
| Status | Code | Message |
|---|---|---|
| true | 200 | Success |
| false | -1000 | Internal error |
| false | -3001 | Required field is missing |
| false | -403 | The signature Error |
| false | -4011 | Not support the payment method |
