跳到主要内容

支付授权

DeBox 提供了基于 vBOX 的支付授权接口,为 vBOX 提供更广阔的应用场景。

GEThttps://app.debox.pro/oauth/authorize

⼀次性 token 请求接⼝,该接口用来生成积分支付的订单号和 token,和下面的/payment/transfer 接口联合使用完成积分支付功能。

https://app.debox.pro/oauth/authorize?
app_id=ohpdAP9W55gyXeJ0&scope=payment&grant_type=onetime_token&amount=0.01&
payer_user_id=ii0k2v5n&receiver_user_id=rqg6g4j1&pay_type=send&pay_info=test&
redirect_uri=https://docs.debox.pro/demo/a.html

Parameters

Query

redirect_uri : String 授权成功跳转链接,需要用encodeURIComponent编码,必须是白名单下的地址,请先配置App Domain

app_id : String 应用唯一标识,DeBox开放平台申请

scope : String 授权范围(payment)

grant_type : String 授权类型(onetime_token)

amount : Number 金额,最多两位小数

payer_user_id : String 付款方user_id,必须为授权用户的user_id

receiver_user_id : String 收款方user_id,必须为商家的user_id

pay_type : String 必须为send,代表授权用户是付款方

pay_info : String 转账信息,用于提示支付的场景

Responses

200: OK
{ 
"code": "xxx", // 授权token,⽤于转账请求 有效期5分钟
"serial_id": "xxx", // 订单号
"source ": "debox" // 来源
}

POSThttps://open.debox.pro/openapi/payment/order

商家付款接⼝,该接口用来生成积分支付的订单号和 token,和下面的/payment/transfer 接口联合使用完成积分支付功能。
该接口只用作商家支付场景,无需弹框授权;上面oauth/authorize接口使用场景为用户支付给商家,需要弹框授权

Parameters

app_id : String 应用唯一标识,DeBox开放平台申请

X-API-KEY : String 开发者 key,在开放平台可以获取

nonce : String 随机数字,长度 8 位

timestamp : String 时间戳,精确到毫秒

signature : String sha1 计算的签名,需严格按照 签名 计算规则

签名计算,需要用与 X-API-KEY 对应的 App Secret 对随机数和时间戳进行签名

// 顺序必须必须严格按:appsecret -> nonce -> timestamp
signature = SHA1({appsecret}{nonce}{timestamp})
Body

payer_user_id : String 支付方user_id,即商家user_id

receiver_user_id : String 收款方user_id

amount : String 金额,最多两位小数,数字字符串

Responses

200: OK
{ 
"access_token": "xxx", // 授权token,⽤于转账请求 有效期5分钟
"serial_id": "xxx", // 订单号
"amount": "10", //下单金额
}

POSThttps://open.debox.pro/openapi/payment/transfer

转账接口

Parameters

Header

app_id : String 应用唯一标识,DeBox开放平台申请

X-API-KEY : String 开发者 key,在开放平台可以获取

nonce : String 随机数字,长度 8 位

timestamp : String 时间戳,精确到毫秒

signature : String sha1 计算的签名,需严格按照 签名 计算规则

签名计算,需要用与 X-API-KEY 对应的 App Secret 对随机数和时间戳进行签名

// 顺序必须必须严格按:appsecret -> nonce -> timestamp
signature = SHA1({appsecret}{nonce}{timestamp})
Body

access_token : String 授权得到的code

serial_id : String 授权得到的流水号(订单号)

verify_amount : String 当开发者是支付方时,该值是必填项,用于校验开发者所需支付金额是否正确,若和授权阶段的金额不一致,则转账失败

Responses

200: OK
{ 
"code": "", // 错误码,1为成功
"msg": "",
"source ": "debox" // 来源
}

POSThttps://open.debox.pro/openapi/payment/assert/vbox

查询商家vBOX余额。

Parameters

Header

app_id : String 应用唯一标识,DeBox开放平台申请

X-API-KEY : String 开发者 key,在开放平台可以获取

nonce : String 随机数字,长度 8 位

timestamp : String 时间戳,精确到毫秒

signature : String sha1 计算的签名,需严格按照 签名 计算规则

签名计算,需要用与 X-API-KEY 对应的 App Secret 对随机数和时间戳进行签名

// 顺序必须必须严格按:appsecret -> nonce -> timestamp
signature = SHA1({appsecret}{nonce}{timestamp})
Body

无,查询app_id对应的商家vBOX资产

Responses

200: OK
{ 
"total": xxx, //总资产
"usable_balance": xxx, // 可用资产
}
API 错误码

-2001 ⽤户登录有效性问题,可尝试重新登录
-2004 参数不合法
-2006 交易参数不合法
-2010 获取 access token,code 过期
-2011 获取 access token,无效 code
-2012 刷新 access token 失败
-2013 access token 过期
-2014 系统异常,请重试
-2015 access token 校验失败
-2016 重复发起转账请求
-2028 系统异常,请重试
-2030 系统异常,请重试
-7048 余额不⾜,转账失败
-7052 系统异常,请重试