Token支付


适用于:发起Token支付 - 信用卡

付款用户在YabandPay托管的支付页面完成一次标准信用卡交易并同意授权,YabandPay将持卡人敏感数据转换成一串随机数字(即Token)以去除身份信息。使用Token可以发起如下支付:

  1. 用户可以在结账页面一键完成付款,无需输入信用卡信息。
  2. 商户可以使用此Token来执行定期付款或订阅收费等。

[!TIP|style:flat] 使用流程

  1. 激活Token。联系您的客户经理开通Token支付功能。

  2. 用户授权。为消费者启用快捷支付(Token支付)时您有义务明确告知用户并获得授权,以避免可能的纠纷。

  3. 获取Token。要获得Token,首先需要发起一个标准的信用卡交易,YabandPay将会返回支付url,用户通过该url完成支付并同意授权后,YabandPay将会通过异步通知返回Token,参数是payment_token_object

  4. 发起Token支付。请包含Token在变量payment_token_object中。如果Token校验正确,YabandPay将执行Token支付;如果Token校验失败,YabandPay将返回错误信息,这时建议重新通过发起标准信用卡交易以获取Token并再次发起支付。

API URL:https://mapi.yabandpay.com/Payments

Method:POST

POST data type:Json

参数 类型 描述 是否必填
user String 收银员账号的UID 必填
sign String 签名 必填
method String v3.CreateCardPayments 必填
time Long 时间戳 必填
  • 参数
Parameter Type Description 是否必填
pay_method String online 必填
sub_pay_method String Token 必填
operation String 11.Token for sales 12.Token for authorisation; 必填
order_id String 商户的订单ID 必填
token_type String CIT,MIT 必填
3ds_initiate String 01. 开启3ds验证; 02.不开启3DS(需申请开通);03. SCA豁免(需申请开通); 必填
sca_exemption String LowValue 3ds_initiate=03 必填
amount String 金额数字。例如 € 24.99 应该写成24.99 必填
currency String 货币代码,ISO 4217,例如EUR,CHF 必填
payment_token_object String 支付Token 必填
description String 订单描述 必填
demo String 自定义字段 选填
timeout String 过期时间0-1440 分钟,如不设置默认1440分钟 必填
notify_url String 支付完成后异步通知地址 必填
request_id String 请求id需保持唯一,建议24以上位数字+字母 必填

签名示例:

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

"3ds_initiate=01&amount=1&currency=EUR&description=test&method=v3.CreateCardPayments&notify_url=https://www.yabandpay.com/notify&operation=11&order_id=1725875543&pay_method=online&payment_token_object=VnXaRabcsedfsSlPFZXavcsdfasdEFDd&request_id=hjf5lv32i40lh7oh86j6az98tnscwv37&sub_pay_method=Token&time=1725875543&timeout=0&token_type=01&user=016683"

得到的 stringA 使用 secret_key做签名

得到的签名如下:

"a6584146de2b9613960ebcce9bfe618ba70c4010fad4d36b7a33b33d82ab37dc"

提交示例:

{
    "user": "016683",
    "sign": "a6584146de2b9613960ebcce9bfe618ba70c4010fad4d36b7a33b33d82ab37dc",
    "method": "v3.CreateCardPayments",
    "time": 1725875543,
    "data": {
        "token_type": "01",
        "3ds_initiate": "01",
        "description": "test",
        "timeout": "0",
        "pay_method": "online",
        "sub_pay_method": "Token",
        "operation": "11",
        "order_id": 1725875543,
        "amount": "1",
        "currency": "EUR",
        "payment_token_object": "VnXaRabcsedfsSlPFZXavcsdfasdEFDd",
        "notify_url": "https://www.yabandpay.com/notify",
        "request_id": "hjf5lv32i40lh7oh86j6az98tnscwv37"
    }
}

返回示例:

{
    "status": true,
    "code": "200",
    "data": {
        "order_id": "1725875543",
        "trade_id": "109bb0e9-e1fb-49cb-c537-ec944f33c388",
        "amount": "1.00",
        "currency": "EUR",
        "state": "paid"
    },
    "message": "",
    "response_id": "202409091752241912726578"
}

更多信息:

MIT & CIT :

MIT= Merchant Initiated subsequent transactions.由商户发起的Token扣款。

CIT= Cardholder Initiated Subsequent transactions.有用户参与的Token支付。

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

  2. 若调用失败,则返回"status": fales。这时如得到Invalid Token,建议重新调用HPP Token获取新的Token。

接口调用后将会同步返回支付状态。我们强烈建议同时使用订单查询异步通知来同步和更新支付状态,以确保支付信息的实时准确性。 a) 如果订单状态statepaid,即支付成功; b) 如果订单状态stateauthorized,即预授权成功。 预授权成功后如需要请款调用预授权请款接口

3DS低价值豁免:

在下列限额范围内的交易可被认定为低价值交易。当订单金额小于或等于以下金额时,经过批准可适用交易代码 02(低价值豁免)。

# 货币 金额
1 EUR 30
2 DKK 225
3 GBP 27
4 SEK 310
5 ISK 5000
6 NOK 325
7 CHF 32
8 PLN 135
9 USD 36
返回代码:
Status Code Message
true 200
fales -1000 Internal error
fales -403 The signature Error
fales -2001 The user not exist
fales -3001 Required field is missing
fales -4118 Incorrect request ID
fales -4119 Invalid Token
fales -4120 No operational permissions

results matching ""

    No results matching ""