托管支付解决方案(HPP)
适用于:所有支付方式
该支付方式是托管支付 (Hosted Payment Page),即由YabandPay托管收银台,消费者在YabandPay的收银页面选择支付方式并支付。商户不需要逐个接入所有支付方式,只需要接入这个收银台支付即可,方便管理和未来升级。
API URL:https://mapi.yabandpay.com/Payments
Method:POST
POST data type:Json
参数 | 类型 | 描述 | 是否必填 |
---|---|---|---|
user | String | 收银员账号的UID | 必填 |
sign | String | 签名 | 必填 |
method | String | v3.CreatePayments | 必填 |
time | Long | 时间戳 | 必填 |
- 参数
Parameter | Type | Description | 是否必填 |
---|---|---|---|
pay_method | String | online | 必填 |
sub_pay_method | String | List | 必填 |
order_id | String | 商户的订单ID | 必填 |
amount | String | 金额数字。例如 € 24.99 应该写成24.99,CNY金额>=1,欧元金额>=0.1(iDeal支付、Sofort支付、PayPal支付,欧元金额>=1) | 必填 |
currency | String | 货币代码,ISO 4217,例如EUR,CHF | 必填 |
description | String | 订单描述 | 必填 |
demo | String | 自定义字段 | 选填 |
timeout | String | 过期时间0-1440 分钟,如不设置默认1440分钟 | 必填 |
redirect_url | String | 支付完成后跳转地址 | 选填 |
notify_url | String | 支付完成后异步通知地址 | 必填 |
签名示例:
拼接为URL方式并排序后的字符串
"amount=1¤cy=EUR&demo=test&description=YabandPay test&method=v3.CreatePayments¬ify_url=https://www.yabandpay.com/notify&order_id=20248746132489&pay_method=online&post_email=016683&redirect_url=https://www.yabandpay.com&sub_pay_method=List&time=1546588900&timeout=0&user=016683"
得到的 stringA 使用 secret_key做签名
得到的签名如下:
"34c08d463d58bcac54d1c9b3d9203a78e58510ea6c3a3959ad91a86998f740f2"
提交示例:
{
"user": "016683",
"sign": "34c08d463d58bcac54d1c9b3d9203a78e58510ea6c3a3959ad91a86998f740f2",
"method": "v3.CreatePayments",
"time": 1546588900,
"data": {
"description": "YabandPay test",
"timeout": "0",
"pay_method": "online",
"sub_pay_method": "List",
"order_id": "20248746132489",
"amount": "1",
"currency": "EUR",
"redirect_url": "https://www.yabandpay.com",
"notify_url": "https://www.yabandpay.com/notify",
"demo": "test"
}
}
返回示例:
{
"status": true,
"code": "200",
"data": {
"order_id": "20248746132489",
"trade_id": "b769e338-20e7-35fa-dbb4-986892b96079",
"amount": "1.00",
"currency": "EUR",
"url": "https://pay.yabandpay.com/SelectPay/Yjc2OWUzMzgtMjBlNy0zNWZhLWRiYjQtOTg2ODkyYjk2MDc5",
"state": "processing"
},
"message": ""
}
更多信息:
返回结果:
若调用成功,则返回
"status": true
若调用失败,则返回
"status": fales
我们强烈建议同时使用订单查询和异步通知来同步和更新支付状态,以确保支付信息的实时准确性。
返回代码:
Status | Code | Message |
---|---|---|
true | 200 | Success |
fales | -1000 | Internal error |
fales | -3001 | Required field is missing |
fales | -403 | The signature Error |
fales | -4011 | Not support the payment method |