API REFERENCE
Pedido de pagamento unificado
Parâmetros da API, instruções de assinatura e exemplos de solicitação e resposta da documentação atual da API SimplePay.
Parâmetros
| Parameter | Type | Descrição | Obrigatório |
|---|---|---|---|
| data.pay_method | string | online | ✓ |
| data.sub_pay_method | string | WeChat Pay,Alipay,YabandPay | ✓ |
| data.order_id | string | 商户的订单ID | ✓ |
| data.amount | string | 金额数字。例如 € 24.99 应该写成24.99,CNY金额>=1,欧元金额>=0.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 | 支付完成后异步通知地址 | ✓ |
Métodos de pagamento compatíveis: WeChat Pay e Alipay
Dica
Observe que esta opção de pagamento só é compatível com WeChat Pay e Alipay. Recomendamos o Hosted Checkout, que inclui todos os métodos de pagamento ativados.
| Parâmetro | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| user | String | Conta de caixa UID | Obrigatório |
| sign | String | Signature | Obrigatório |
| method | String | v3.CreatePayments | Obrigatório |
| time | Long | Timestamp | Obrigatório |
- Parâmetros
| Parâmetro | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| pay_method | String | online | Obrigatório |
| sub_pay_method | String | WeChat Pay,Alipay,YabandPay | Obrigatório |
| order_id | String | ID do pedido do estabelecimento | Obrigatório |
| amount | String | Valor como cadeia numérica. Por exemplo, informe 24.99 para € 24.99. Valor em CNY >=1; valor em EUR >=0.1. | Obrigatório |
| currency | String | Código da 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 | Obrigatório |
| notify_url | String | URL de notificação assíncrona após o pagamento | Obrigatório |
Exemplo de assinatura:
Parâmetros ordenados concatenados em uma cadeia de consulta no formato de URL
"amount=0.1¤cy=EUR&demo=test&description=YabandPay test&method=v3.CreatePayments¬ify_url=https://www.yabandpay.com/notify&order_id=2024849687894683&pay_method=online&redirect_url=https://www.yabandpay.com&sub_pay_method=WeChat Pay&time=1555498137&timeout=0&user=YOUR_CASHIER_UID"
Sign stringA using secret_key
A assinatura resultante é:
"YOUR_SIGNATURE"
Exemplo de solicitação:
{
"user": "YOUR_CASHIER_UID",
"sign": "YOUR_SIGNATURE",
"method": "v3.CreatePayments",
"time": 1555498137,
"data": {
"amount": "0.2",
"currency": "EUR",
"demo": "test",
"description": "YabandPay test",
"notify_url": "https://www.yabandpay.com/notify",
"order_id": "YOUR_ORDER_ID",
"pay_method": "online",
"redirect_url": "https://www.yabandpay.com",
"sub_pay_method": "WeChat Pay",
"timeout": "0"
}
}
Exemplo de resposta:
{
"status": true,
"code": "200",
"data": {
"order_id": "YOUR_ORDER_ID",
"trade_id": "4552eeea-1ae8-1e40-3b4b-802dc2f5686a",
"amount": "0.2",
"currency": "EUR",
"settlement_amount": "0.2",
"settlement_currency": "EUR",
"exchange_rate": "1",
"url": "https://pay.yabandpay.com/payments/callback/order/NDU1MmVlZWEtMWFlOC0xZTQwLTNiNGItODAyZGMyZjU2ODZh",
"state": "processing"
},
"message": ""}
1. Navegador em desktop ou tablet
Em um navegador de desktop ou tablet, o estabelecimento gera um código QR para o cliente escanear e pagar.
A YabandPay é compatível com códigos QR nativos do WeChat Pay e do Alipay, além de códigos QR de pagamento unificado compatíveis com ambos.
O estabelecimento pode redirecionar para o URL retornado pela API YabandPay para gerar um código QR de pagamento nativo do WeChat Pay ou Alipay.
Para um código QR de pagamento unificado, o estabelecimento pode codificar o URL retornado pela API YabandPay como um código QR e exibi-lo ao cliente; em seguida, pode consultar periodicamente o resultado do pagamento com Query Order ou aguardar uma notificação assíncrona.
2. Pagamentos unificados
A YabandPay inicia o fluxo de pagamento WeChat Pay ou Alipay apropriado de acordo com o ambiente do navegador e o caso de uso (PC, H5, App etc.).
sub_pay_method=
| Tipo de navegador | WeChat Pay | Alipay | YabandPay |
|---|---|---|---|
| Navegador móvel | Gerar um código QR do WeChat Pay (abrir o WeChat Pay se H5 estiver ativado) | Abrir o Alipay | Gerar um código QR unificado |
| Webview em um App móvel | Gerar um código QR do WeChat Pay | Abrir o Alipay | Gerar um código QR unificado |
| Navegador WeChat (dentro do App WeChat) | Abrir o WeChat Pay | Gerar um código QR do Alipay | Abrir o WeChat Pay |
| Navegador Alipay (dentro do App Alipay) | Gerar um código QR do WeChat Pay | Abrir o Alipay | Abrir o Alipay |
| Todos os navegadores de desktop | Gerar um código QR do WeChat Pay | Gerar um código QR do Alipay | Gerar um código QR unificado |
Informações adicionais:
Resultado da resposta:
-
Uma solicitação bem-sucedida retorna "status": true.
-
Uma solicitação malsucedida retorna "status": false.
Recomendamos fortemente usar Query Order e Asynchronous Notifications em conjunto para manter os status de pagamento corretos e atualizados.
Códigos de resposta:
| 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 |
