logo资料库

京东支付接口文档.doc

第1页 / 共23页
第2页 / 共23页
第3页 / 共23页
第4页 / 共23页
第5页 / 共23页
第6页 / 共23页
第7页 / 共23页
第8页 / 共23页
资料共23页,剩余部分请下载后查看
1 文档说明
1.1功能描述
1.2阅读对象
1.3术语
2京东支付流程
3接口规范
4接口安全规范
4.1签名算法
4.2XML报文签名样例
4.3加密算法
5接口
5.1支付请求接口
5.1.1接口介绍
5.1.2参数列表
5.1.3参数特殊说明
5.1.4样例
5.1.4.1签名源串样例
5.1.4.2支付请求数据集合参数样例
5.2支付成功页面跳转
5.2.1说明
5.2.2参数列表
5.2.3样例
5.3异步通知接口
5.3.1说明
5.3.2支付通知报文
5.3.3支付通知报文样例
5.3.4退款通知报文
5.3.5退款通知报文样例
5.4退款申请接口
5.4.1说明
5.4.2退款申请接口参数列表
5.4.3退款申请返回参数列表
5.4.4报文样例
5.5交易查询接口
5.5.1说明
5.5.2查询接口参数列表
5.5.3查询接口返回参数
5.5.4请求报文样例
5.5.5消费查询返回报文样例
5.5.6退款查询返回报文样例
6主要接入步骤
6.1商户信息设置。
6.2后台代码
7附录
7.1 交易返回信息编码
“京东支付 2.0”开发接口 京东支付 2.0 开发接口 版本 (V1.0.0) 1 / 23
“京东支付 2.0”开发接口 目录 1 文档说明 ........................................................................................................................................ 5 1.1 功能描述 ........................................................................................................................ 5 1.2 阅读对象 ........................................................................................................................ 5 1.3 术语 ................................................................................................................................ 5 2 京东支付流程 ............................................................................................................................ 6 3 接口规范 .................................................................................................................................... 6 4 接口安全规范 ............................................................................................................................ 7 4.1 签名算法 ........................................................................................................................ 7 4.2 XML 报文签名样例 ........................................................................................................7 4.3 加密算法 ........................................................................................................................ 8 5 接口 ............................................................................................................................................ 8 5.1 支付请求接口 ................................................................................................................ 8 5.1.1 接口介绍 ............................................................................................................8 5.1.2 参数列表 ............................................................................................................9 5.1.3 参数特殊说明 ..................................................................................................10 5.1.4 样例 .................................................................................................................. 10 5.2 支付成功页面跳转 ......................................................................................................11 5.2.1 说明 .................................................................................................................. 11 5.2.2 参数列表 ..........................................................................................................11 5.2.3 样例 .................................................................................................................. 11 5.3 异步通知接口 ..............................................................................................................12 5.3.1 说明 .................................................................................................................. 12 5.3.2 支付通知报文 ..................................................................................................12 5.3.3 支付通知报文样例 ..........................................................................................13 5.3.4 退款通知报文 ..................................................................................................15 5.3.5 退款通知报文样例 ..........................................................................................15 5.4 退款申请接口 ..............................................................................................................16 5.4.1 说明 .................................................................................................................. 16 5.4.2 退款申请接口参数列表 ..................................................................................16 5.4.3 退款申请返回参数列表 ..................................................................................17 5.4.4 报文样例 ..........................................................................................................17 5.5 交易查询接口 ..............................................................................................................19 5.5.1 说明 .................................................................................................................. 19 5.5.2 查询接口参数列表 ..........................................................................................19 5.5.3 查询接口返回参数 ..........................................................................................19 5.5.4 请求报文样例 ..................................................................................................20 5.5.5 消费查询返回报文样例 ..................................................................................20 5.5.6 退款查询返回报文样例 ..................................................................................21 6 主要接入步骤 .......................................................................................................................... 22 2 / 23
“京东支付 2.0”开发接口 6.1 商户信息设置。 ..........................................................................................................22 6.2 后台代码 ...................................................................................................................... 22 7 附录 .......................................................................................................................................... 23 7.1 交易返回信息编码 ......................................................................................................23 3 / 23
“京东支付 2.0”开发接口 文档修订记录: 日期 版本 说明 作者 2016-03-09 1.0.0 该文档为京东支付 2.0 商户接入的开发接口, 支持多渠道组合支付 4 / 23
“京东支付 2.0”开发接口 1 文档说明 1.1功能描述 京东支付为商户提供一整套支付接口。商户使用这些接口可以便捷的发起支付请求,并 引导用户完成支付过程。支付完成以后,通过同步、异步两种方式通知商户的应用服务器。 它的优势是支持多支付渠道的组合支付(包括银行卡、白条等支付渠道),支付金额即时从 消费者的银行账户或者京东白条账户(若用户开通白条服务)等支付渠道扣除,用户支付过 程简便、安全。同时,京东支付又提供了自动退款,以及交易结果查询接口。交易结果查询 接口是为了防止商户长时间没有接收到同步、异步结果通知的情况而设计,在这种情况下, 商户可以通过交易查询接口查询交易结果,进而更新用户订单状态。 1.2阅读对象 本文档面向商户系统设计人员、编程人员及测试人员。该人员需要具备一定的网站开发 能力,了解 ASP、PHP、JAVA、ASP.NET 等开发语言中的一种及 SQL 数据库语言。 1.3术语 名词 商户 解释 指已注册成为京东支付产品的用户、并使用京东支付产品实现其收付费 功能需求、为其用户提供各类产品或者相关服务的企业或个人。 消费者(用户) 指在商户网站等系统购物的企业或个人。 请求 通知 返回 通过HTTP/HTTPS协议把数据发送给接收方的过程。 京东支付服务器异步通知。京东支付服务器根据接收到的数据处理完成 后,会主动发起通知给商户的服务器,同时携带处理结果信息。 页面跳转同步通知。京东支付服务器根据接收到的数据处理完成后,当 前页面从京东支付的页面自动跳转回商户页面,同时携带处理结果信 息。 支付失败 手机号被冻结、商户违约被冻结支付功能、余额不足、超额、订单已支 付、订单金额和支付金额不一致等都会导致支付失败。 5 / 23
“京东支付 2.0”开发接口 2 京东支付流程 1) 用户首先在商户系统的页面上选择商品并下单,点击支付按钮以后,商户系统向京东支 付服务支付接口发起支付请求。 2) 商户要根据京东支付接口要求,通过程序得到签名结果以及要传给京东支付服务的订单 信息以及商户信息数据集合。在支付请求的时候把数据集合发送到京东支付服务器。 3) 京东支付服务会首先验证商户的合法性,以及验证订单金额是否被篡改,如果商户非法, 或者订单信息被篡改,京东支付服务会直接拒绝此支付请求;反之,则重定向到支付页 面,引导用户填入支付相关信息,在用户确认之后,从用户的各资金账户(银行卡、白 条等)扣除相应的金额。 4) 支付完成以后京东支付服务会跳转到商户支付请求时传入的 URL,并携带支付结果。如 果支付成功,京东支付服务后台会发送异步通知到商户传入的通知地址,把支付结果通 知商户。 3 接口规范 京东支付包含两类接口,一是 Form 表单接口,二是 XML 接口。 “支付请求接口”为 Form 表单接口,其余的接口均为 XML 接口。 XML 接口规范如下: 1) XML 报文的根节点为 2) 加密后的密文数据置于标签中 3) 接口参数区分大小写 为防止接口数据被篡改或窃听,接口报文数据均进行签名并加密传输,加解密以及签名算法 参考“接口安全规范”章节 6 / 23
“京东支付 2.0”开发接口 4 接口安全规范 4.1签名算法 签名过程分为两步,首先是将原始参数按照规则拼接成一个字符串 S1,然后再将 S1 根 据签名算法生成签名字符串 sign 参数原始字符串的拼接规则: 一) 对于 POST 表单提交的参数:所有参数按照参数名的 ASCII 码顺序从小到大排 序 ( 字 典 序 ), 使 用 URL 键 值 对 的 方 式 拼 接 成 字 符 串 S1 ,( 如 : k1=value1&k2=value2&k3=value3…)。 对于 XML 报文交互的参数:将 XML 报文的各行去掉空格后直接拼接成一行字符 串作为 S1。如果报文只有一行则直接作为 S1,不需要再进行拼接。 二) 生成签名的过程如下: 一) 二) 整个计算方法为:base64_encode(RSA(SHA256(S1))) 对拼接的参数字符串 S1 通过 SHA256 算法计算摘要,得到字符串 S2 对字符串 S2 进行 RSA 加密,并进行 base64 转码,得到签名字符串 sign 注意事项:  空参数不参与签名  参数列表中的 sign 字段不参与签名  为了简化处理,标签也参与签名  参数区分大小写  RSA 加密的规则为:由交易发起方进行私钥加密,接收方进行公钥解密 4.2XML 报文签名样例 报文样例如下: V2.0 100 DEBIT_CARD 100 7 / 23
“京东支付 2.0”开发接口 19f9ce32be414ef8219f9ce32be414ef82b84a9079493b71a9079493b71a 上述报文拼接后的字符串 S1 为: V2.0100DEBIT_CARD100 标签不参与签名,其余各行标签删除前后“空格”后直接拼接为一行 对字符串 S1 计算 SHA256 摘要,使用私钥对摘要进行 RSA 加密,然后再通过 base64 转换为 字符串 sign 4.3加密算法 除特定说明外,商户和京东支付接口调用报文采用 3DES 加密,再通过 base64 转换为字符串  Form 表单接口的加密方式: 如果商户通过表单方式提交支付请求至收银台,为保证信息安全,表单中的各个字段除 了 merchant(商户号)、版本号(verion)以外,其余字段全部采用 3DES 进行加密  XML 请求接口的加密方式: 通过 XML 接口方式和京东支付服务器交互的请求,应该对报文进行加密,加密方式为对 整个报文整体进行 3DES 加密,再进行 base64 转码使其变为可读字符串,加密后的密文 置于标签中,同时再将报文中的(商户号)、 (版本号)这两个字段单独置于标签下。  接收到京东支付加密报文后的处理方式: 接收到京东支付返回的加密报文后,先判断标签下的标签的返回码, 检查接口调用是否正常返回。然后再读取标签的密文内容进行 base64 解码, 再进行 3DES 解密,解密后的报文即是原始报文。 5 接口 5.1支付请求接口 5.1.1 接口介绍 支付请求接口提供给商户向京东支付服务发送支付请求数据集合,京东支付服务会根据 请求数据验证商户身份,以及验证支付信息是否被篡改。验证通过后,京东支付服务会在当 前页面弹出支付页面弹框。 8 / 23
分享到:
收藏