文档中心/API 接口

API REFERENCE

卡支付接口

POSThttps://mapi.yabandpay.com/Payments
实际接口
API PLAYGROUND · 实际接口

卡支付接口

POSThttps://mapi.yabandpay.com/Payments
填写凭据后自动签名

请求参数15

先填写必填项

Card Payment

pay_method必填stringdata.pay_methodonline
sub_pay_method必填stringdata.sub_pay_methodCard
operation必填stringdata.operation1.Sales 2.Authorisation;
amount必填stringdata.amount金额数字。例如 € 24.99 应该写成24.99
currency必填stringdata.currency货币代码,ISO 4217,例如EUR,CHF
description必填stringdata.description订单描述
email必填stringdata.email持卡人email
timeout必填stringdata.timeout过期时间单位分钟(0-1440)
notify_url必填stringdata.notify_url支付完成后异步通知地址
request_id必填stringdata.request_id请求id需保持唯一,建议24以上位数字+字母
可选参数 4
payment_token_object二选一stringdata.payment_token_object从YabandPay支付插件获得的字符串cardinfo和payment_token_object二选一
cardinfo二选一stringdata.cardinfo卡信息cardinfo和payment_token_object二选一,cardinfo的值作为string处理(cardinfo内的字段不用加入排序)
demo可选stringdata.demo自定义字段
redirect_url可选stringdata.redirect_url支付完成后跳转地址

请求参数

3ds_initiate必填stringdata.3ds_initiate01. 开启3ds验证; 02.不开启3DS(需申请开通);03. SCA豁免(需申请开通);

凭据仅在当前页面使用。secret_key 不保存,也不发送给文档服务器。

适用于:信用卡的预授权和直接购买

此接口适用于用户在商户页面输入卡信息,而不是跳转YabandPay托管页面输入卡信息,特别注意:

1、若商户已获得 PCI DSS 认证,具备安全处理持卡人信息的能力,可自行创建用于收集卡信息的表单,并通过参数cardinfo 提交数据。

2、若商户使用 YabandPay 提供的前端插件收集用户卡信息(可联系 YabandPay 获取集成方式),插件将返回一个一次性加密的 payment_token_object,可用于后续发起支付请求。

小贴士

预授权有效期有30天,超过30天预授权订单将自动过期。

参数类型描述是否必填
userString收银员账号的UID必填
signString签名必填
methodStringv3.CreateCardPayments必填
timeLong时间戳必填
  • 参数
ParameterTypeDescription是否必填
pay_methodStringonline必填
sub_pay_methodStringCard必填
operationString1.Sales 2.Authorisation;必填
order_idString商户的订单ID必填
3ds_initiateString01. 开启3ds验证; 02.不开启3DS(需申请开通);03. SCA豁免(需申请开通);必填
sca_exemptionStringLowValue3ds_initiate=03 必填
payment_token_objectString从YabandPay支付插件获得的字符串cardinfo和payment_token_object二选一
cardinfoString卡信息cardinfo和payment_token_object二选一,cardinfo的值作为string处理(cardinfo内的字段不用加入排序)
cardinfo.card_holderstring持卡人姓名必填
cardinfo.card_numberstring卡号必填
cardinfo.expiration_monthstring卡有效期月MM必填
cardinfo.expiration_yearstring卡有效期年YYYY必填
cardinfo.cvcstringCVC(任何形式存储CVC均违反PCI DSS规定)必填
amountString金额数字。例如 € 24.99 应该写成24.99必填
currencyString货币代码,ISO 4217,例如EUR,CHF必填
descriptionString订单描述必填
demoString自定义字段选填
emailstring持卡人email必填
timeoutString过期时间单位分钟(0-1440)必填
redirect_urlString支付完成后跳转地址选填
notify_urlString支付完成后异步通知地址必填
request_idString请求id需保持唯一,建议24以上位数字+字母必填

签名示例:

拼接为URL方式并排序后的字符串

”3ds_initiate=01&amount=0.1&cardinfo={"card_holder":"John Smith","card_number":"4356789012345670","expiration_month":"01","expiration_year":"2023","cvc":"123"}&currency=EUR&description=test&email=JohnSmith@gmail.com&method=v3.CreateCardPayments&notify_url=https://www.yabandpay.com/notify&operation=1&order_id=1756878556&pay_method=online&redirect_url=https://www.yabandpay.com/redirect_url&request_id=a7z1lox4l6z6mdx1udgn5gtezasze1x0&sca_exemption=LowValue&sub_pay_method=Card&time=1756878556&timeout=0&user=YOUR_CASHIER_UID“

提交示例cardinfo内容提交:


{
	"user": "YOUR_CASHIER_UID",
	"sign": "YOUR_SIGNATURE",
	"method": "v3.CreateCardPayments",
	"time": 1756878556,
	"data": {
		"description": "test",
		"3ds_initiate": "01",
		"timeout": "0",
		"pay_method": "online",
		"sub_pay_method": "Card",
		"operation": "1",
		"order_id": 1756878556,
		"cardinfo": "{\"card_holder\":\"John Smith\",\"card_number\":\"4356789012345670\",\"expiration_month\":\"01\",\"expiration_year\":\"2023\",\"cvc\":\"123\"}",
		"sca_exemption": "LowValue",
        "email": "JohnSmith@gmail.com",
		"amount": "0.1",
		"currency": "EUR",
        "redirect_url": "https://www.yabandpay.com/redirect_url",
        "notify_url": "https://www.yabandpay.com/notify",
		"request_id": "a7z1lox4l6z6mdx1udgn5gtezasze1x0"
	}
}

提交示例payment_token_object内容提交:

{
    "user": "YOUR_CASHIER_UID",
    "sign": "YOUR_SIGNATURE",
    "method": "v3.CreateCardPayments",
    "time": 1720680417,
    "data": {
        "payment_token_object": "4564sf65as4f5awe4ft65awe4gt65ewaa4t65ew4t65ew4t65rew4t",
        "description": "test",
        "3ds_initiate": "01",
        "timeout": "0",
        "pay_method": "online",
        "sub_pay_method": "Card",
        "operation": "1",
        "order_id": "YOUR_ORDER_ID",
        "amount": "1",
        "currency": "EUR",
        "redirect_url": "https://www.yabandpay.com/redirect_url",
        "notify_url": "https://www.yabandpay.com/notify",
        "request_id": "tscqf7ki76o7aem4z1yl1xs72f89fptl"
    }
}

返回示例:

{
    "status": true,
    "code": "200",
    "data": {
        "order_id": "YOUR_ORDER_ID",
        "trade_id": "160899f3-f6d9-a8d8-ab5b-82eacdab9c5b",
        "amount": "1.00",
        "currency": "EUR",
        "url": "https://pay.yabandpay.com/payments/callback/order/MTYwODk5ZjMtZjZkOS1hOGQ4LWFiNWItODJlYWNkYWI5YzVi",
        "state": "processing"
    },
    "message": "",
    "response_id": "202407111544200649155078"
}

更多信息:

返回结果:
  1. 若调用成功,则返回"status": true

  2. 若调用失败,则返回"status": false

你需要跳转返回的url。用户在此url完成3DS后,会同步跳转回redirect_url。我们强烈建议同时使用订单查询和异步通知来同步和更新支付状态,以确保支付信息的实时准确性。 a) 如果订单状态state为paid,即支付成功; b) 如果订单状态state为authorized,即预授权成功。 预授权成功后如需要请款调用预授权请款接口。

返回代码:
StatusCodeMessage
true200
false-1000Internal error
false-403The signature Error
false-2001The user not exist
false-3001Required field is missing
false-4118Incorrect request ID