API REFERENCE
Commande de paiement unifiée
Paramètres d’API, instructions de signature et exemples de requêtes et de réponses issus de la documentation API SimplePay existante.
Paramètres
| Parameter | Type | Description | Obligatoire |
|---|---|---|---|
| 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 | 支付完成后异步通知地址 | ✓ |
Moyens de paiement pris en charge : WeChat Pay et Alipay
Conseil
Veuillez noter que cette option de paiement prend uniquement en charge WeChat Pay et Alipay. Nous recommandons Hosted Checkout, qui inclut tous les moyens de paiement activés.
| Paramètre | Type | Description | Obligatoire |
|---|---|---|---|
| user | String | Compte marchand UID | Obligatoire |
| sign | String | Signature | Obligatoire |
| method | String | v3.CreatePayments | Obligatoire |
| time | Long | Timestamp | Obligatoire |
- Parameters
| Paramètre | Type | Description | Obligatoire |
|---|---|---|---|
| pay_method | String | online | Obligatoire |
| sub_pay_method | String | WeChat Pay, Alipay, YabandPay | Obligatoire |
| order_id | String | ID de commande du marchand | Obligatoire |
| amount | String | Montant au format chaîne numérique. Par exemple, saisissez 24.99 pour € 24.99. Montant en CNY ≥1 ; montant en EUR ≥0.1. | Obligatoire |
| currency | String | Code devise ISO 4217, par exemple EUR ou CHF | Obligatoire |
| description | String | Description de la commande | Obligatoire |
| demo | String | Champ personnalisé | Facultatif |
| timeout | String | Durée d’expiration en minutes (0-1440) | Obligatoire |
| redirect_url | String | URL de redirection après le paiement | Obligatoire |
| notify_url | String | URL de notification asynchrone après le paiement | Obligatoire |
Exemple de signature :
Concaténez les paramètres triés sous forme de chaîne de requête au format 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"
Signez la chaîne A à l’aide de secret_key.
La signature obtenue est :
"YOUR_SIGNATURE"
Exemple de requête :
{
"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"
}
}
Exemple de réponse :
{
"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. Navigateur sur ordinateur ou tablette
Dans un navigateur sur ordinateur ou tablette, le marchand génère un code QR que le client peut scanner pour payer.
YabandPay prend en charge les codes QR natifs WeChat Pay et Alipay, ainsi que les codes QR de paiement unifié compatibles avec WeChat Pay et Alipay.
Le marchand peut rediriger le client vers l’URL renvoyée par l’API YabandPay afin de générer un code QR de paiement natif WeChat Pay ou Alipay.
Pour un code QR de paiement unifié, le marchand peut encoder l’URL renvoyée par l’API YabandPay dans un code QR et l’afficher au client, puis interroger périodiquement Query Order pour obtenir le résultat du paiement ou attendre une notification asynchrone.
2. Paiements unifiés
YabandPay lance le parcours de paiement WeChat Pay ou Alipay approprié selon l’environnement du navigateur et le cas d’utilisation (PC, H5, App, etc.).
sub_pay_method=
| Browser type | WeChat Pay | Alipay | YabandPay |
|---|---|---|---|
| Mobile browser | Génère un code QR WeChat Pay (lance WeChat Pay si H5 est activé) | Lance Alipay | Génère un code QR unifié |
| Webview in a mobile App | Génère un code QR WeChat Pay | Lance Alipay | Génère un code QR unifié |
| WeChat browser (inside the WeChat App) | Lance WeChat Pay | Génère un code QR Alipay | Lance WeChat Pay |
| Alipay browser (inside the Alipay App) | Génère un code QR WeChat Pay | Lance Alipay | Lance Alipay |
| All desktop browsers | Génère un code QR WeChat Pay | Génère un code QR Alipay | Génère un code QR unifié |
Informations complémentaires :
Résultat de la réponse :
-
Une requête réussie renvoie "status": true.
-
Une requête échouée renvoie "status": false.
Nous recommandons vivement d’utiliser à la fois Query Order et Asynchronous Notifications afin de maintenir les statuts de paiement exacts et à jour.
Codes de réponse :
| 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 |
