支付能力
产品简介
京东小程序平台提供京东支付能力,帮助开发者实现交易闭环,在小程序内用户可以选择商品下单并购买,唤起京东支付组件,用户确认收款方和金额后选择支付方式,支付方式支持打白条、银行卡、小金库、钱包余额、钢镚。
开放标准
- 对所有入驻小程序的企业开放;
- 需要开通京东金融企业商户号和京东支付服务。
接入流程
- 开通京东金融企业商户号与京东支付服务,京东金融企业版;
- 调用下单接口获得京东交易单号京东支付统一下单接口;
- 调用jd.requestPayment,唤起京东支付组件;
- 用户完成支付。
接口说明
jd.requestPayment(OBJECT)
OBJECT 参数说明:
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
timeStamp | String | 否 | 时间戳从 1970 年 1 月 1 日 00:00:00 至今的秒数,即当前的时间 |
nonceStr | String | 否 | 随机字符串,长度为 32 个字符以下 |
package | String | 是 | 交易订单号(oderId),调用收单产生 |
signType | String | 否 | 签名算法,签名算法(默认MD5,可选MD5、HMAC-SHA256) |
paySign | String | 是 | 校验签名,具体签名方案参见小程序支付接口文档 |
merchant | String | 是 | 商户号(商户号需要确认是否已开通京东支付功能) |
success | Function | 否 | 接口调用成功的回调函数 |
fail | Function | 否 | 接口调用失败的回调函数 |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
paySign 交易签名规则:将获取到的merchant、orderId、md5key按照顺序拼接成字符串,进行md5签名并转小写后生成paySign签名值;例如,merchant=a,oderId=b,md5key=c,merchant=a&orderId=b&key=c,md5后得到paySign=fb489e17ac39b44a1df66f5bb7a2218f
了解更多信息,请查看京东支付接口文档
回调结果:
回调类型 | errMsg | 说明 |
---|---|---|
success | 回调中data.payStatus查看支付结果 | |
fail | requestPayment:fail cancel | 用户取消支付 |
fail | requestPayment:fail (detail message) | 调用支付失败,其中 detail message 为后台返回的详细失败原因 |
success 回调中 data.payStatus 有以下返回值:
名称 | 说明 |
---|---|
JDP_PAY_SUCCESS | 用户支付成功 |
JDP_PAY_CANCEL | 用户主动取消 |
JDP_PAY_FAIL | 用户调起收银台失败 |
JDP_PAY_PARTIAL_SUCCESS | 组合支付部分成功 |
调用示例代码:
jd.requestPayment({
'timeStamp': '',
'nonceStr': '',
'package': '',
'signType': 'MD5',
'paySign': '',
'success':function(res){
console.log(res.data.payStatus);
},
'fail':function(res){
}
})
常见问题
Q:京东支付手续费是什么时候扣除?退款是否将手续费退给商家侧?
A:结算时扣除手续费;如果用户退款完成,手续费不退还。
Q:资金是实时到账吗?
A:信息流实时返回,资金流T+1结算,京东金融商户平台查询金额延迟2小时。
Q:RSA秘钥出现空格是什么原因?
A:查询出现的空格请忽略,注意在java语言代码中, pkcs8私钥文件的内容中,要去掉空格。