快捷支付组件 C2B
快捷支付组件服务
可以快速发起转账功能, 请注意资金安全
Youloge支付交易:货币符号为
#(读作hash /hæʃ/) 货币单位位RGB(全称Red Green Blue即红绿蓝三原色) 货币精度为2位小数,
usePayment
- 网页端:调用
usePayment函数发起支付请求
- 网页端:调用
- 支付网关:用户获取
支付码-验证支付码-签发 支付签名
- 支付网关:用户获取
- 同步通知:开发者
解密 支付签名->提取网关 方法 参数 签名->请求VIP接口
- 同步通知:开发者
- 同步返回:
支付网关根据同步通知返回结果,反馈给用户支付结果。
- 同步返回:
开始使用
js
let PLUS = youloge.plus();
PLUS.usePayment({
selector:'',
// 付款对象
payer:{
uuid:'10002' // 用户UUID
},
// 收款对象
payee:{
type:'' // 收款类型 account drive goods ...
uuid:'' // 收款类型的UUID
},
// 金额对象
money:{
symbol:'RGB' // 默认RGB
amount: '1.02' // 优先使用该金额展示与下单 实际扣款时会比对 金额不符支付失败
},
// 本地订单号
local:'no.123456789',
// 附加订单备注 -
attach:'',
// 同步通知接口
notify:'https://www.youloge.com/notify',
}).then(res=>{
// 支付成功
}).catch(err=>{
// 支付失败
});参数说明
| 参数名 | 值 | 说明 |
|---|---|---|
| selector | class选择器 | 为空或找不class则全屏 |
| payer.uuid | 付款账号 | 任意有效邮箱:付款人 |
| payee.type | 模块选择 | profile,drive,movie... |
| payee.uuid | 模块编号 | 模块产品UUID |
| money.symbol | 金额类型 | 默认RGB |
| money.amount | 付款金额 | 优先使用该参数展示 |
| local | 本地单号 | 自定义订单号 |
| notify | 同步通知地址 | https有效地址 |
模块参数说明 [payee.type]
| 参数值 | 描述 | 备注 |
|---|---|---|
| profile | 个人付款 | 用于个人对个人转账 |
| drive | 云盘支付 | 用于个人购买服务/商品转账 |
| movie | 电影支付 | 用于个人购买电影转账 |
| ... |
处理步骤一:同步通知
用户验证支付码之后:会
同步通知到你的notify地址,你需要在notify地址中验证支付结果
http
POST / HTTP/1.1
Host: {{notify}}
Organization: {{APIKEY}}
Authorization: {{access_token}}
Content-Type: application/json
{
"method": "payment.notify",
"params": {
"uuid":"", // 支付单号
"expire", // 过期实际戳 一般10秒 请及时消费
"signature":"*************" // 真实支付内容
}
}处理步骤二:解密签名(signature)注意此时尚未完成支付*
解密签名后得到的
JSON字符串格式数据
js
{
"uuid": "78221154***",
"local": "",
"attach": "",
"payer": {
"uuid": "",
},
"payee": {
"type": "",
"uuid": "",
},
"money": {
"symbol": "",
"amount": "",
},
"routed": "wallet",
"method": "verify",
"params": {
"payment": "fQC1Wj0tcoa24UnA8g8ubI6Xj79wLsz3CjH******"
},
"access_token": "ju4hAxg57fL+MZXf2zNw+KrrlL3b*******",
"expire": 1696702044
}- 你的服务端对
signature进行解密
- 你的服务端对
- 验证参数,
核对金额:money本地单号:local付款人:profile
- 验证参数,
- 验证正确:提取出
routed,method,params,access_token对VIP接口发起实时支付确认
- 验证正确:提取出
- 根据支付确认,返回
200或者400支付结果
- 根据支付确认,返回
处理步骤三:支付确认 此步骤仅一次有效,称为[冲单]
支付确认仅一次有效:不可重复调用,须在
10秒内完成, 这个access_token是临时授权,
http
POST /{{routed}} HTTP/1.1
Host: vip.youloge.com
Content-Type: application/json
Organization: {{APIKEY}}
Authorization: {{access_token}}
{
"uuid": "78221154***",
"payment":"fQC1Wj0tcoa24UnA8g8ubI6Xj79wLsz3CjH******"
}VIP接口返回:支付成功 {"err":200,"msg":"确认成功"} err 为其他参数则为确认失败
支付保存
- 确认支付后订单有效,支付有效
profile用户转账模块,查看资金流水即可drive,movie推广购买模块,查看提成流水即可- 推广赏金实时到账,不支持撤销交易
支付说明
开发者网站前端配置支付参数,调用支付组件;支付组件验证用户支付码后,会本地调用通知接口网址,开发者进行确认支付参数与配置参数一致验证,开发者验证参数一致,则进行请求VIP接口进行确认支付,VIP接口收到确认支付参数后会进行资金划扣;划扣完成后返回{"err":200};开发者在确认资金划扣完成后,通知接口同样返回{"err":200},支付组件收到支付成功则展示支付成功页面。
注意:如果开发者通知接口不进行支付确认(冲单)而是直接返回{"err":200},支付组件也会展示支付成功页面(会造成支付成功错觉,资金不到位,服务不可达)
- 个人对个人实时到账(无手续费)
- 个人对服务/商品延迟到账(N+N)有手续费
- 个人对开发者(赏金结算24小时)无手续费