日终交易查询接口
本文档定义CHINAPNR支付网关商户接入接口规范,提供接口报文参数说明、示例报文、信息安全解决方案,并给出相关问题说明等,以帮助商户技术人员接入,便于尽快投入使用。
根据PCI-DSS检查要求,正式环境禁止使用低版本的SSL3.0 TLS1.0 TLS1.1等协议,请使用高于TLSv1.2及以上发送请求,推荐使用TLSv1.2
提交参数
请求地址
环境 | HTTPS请求地址 |
---|---|
测试环境 | https://hfgj.testpnr.com/pay/dailyTxnConfirm.htm |
正式环境 | https://global.chinapnr.com/pay/dailyTxnConfirm.htm |
协议参数
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
inputCharset | String | 是 | 1 | 字符集,固定值:1 1-UTF-8 |
1 |
signType | String | 是 | 256 | 签名类型,固定值:4 4-RSA加签 |
4 |
业务参数
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
merchantAcctId | String | 必选 | 32 | 会员账号,由我司提供的商户号+01,共13位数字 | 1001234001101 |
terminalId | String | 必选 | 8 | 终端号,由我司提供的终端号 | 999999 |
trxDate | String | 必选 | 32 | 交易日,数字串,一共8位格式为:年[4位]月[2位]日[2位] | 20071117 |
signMsg | String | 必选 | 2048 | 签名字符串 | 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签 |
inputCharset={inputCharset}&signType={signType}&merchantAcctId={merchantAcctId}&terminalId={terminalId}&trxDate ={trxDate}
只对非空值的字段进行加签。
返回结果
查询结果接口会同步返回。
返回参数
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
merchantAcctId | String | 必选 | 32 | 会员账号,与提交订单时的保持一致 | 1001234001101 |
terminalId | String | 必选 | 8 | 终端号,与提交订单时的保持一致 | 999999 |
trxDate | String | 必选 | 32 | 交易日,数字串,一共8位格式为:年[4位]月[2位]日[2位] | 20071117 |
token | String | 可选 | 32 | 唯一关联号,由我司提供 | |
expTime | Number | 可选 | 14 | 下载请求的过期时间,数字串,一共14位格式为:年[4位]月[2位]日[2位]时[2位]分[2位]秒[2位] | 20071117020101 |
errCode | String | 必选 | 8 | 错误代码,详细请参考错误代码附录 | 000000 |
errorMsg | String | 可选 | 128 | 错误描述,错误描述,不参与签名 | 结算文件未找到 |
signMsg | String | 必选 | 2048 | 签名字符串,商户需对该字段进行验签,对于所有值不为空的参数及对应值,按照字母顺序组成字符串 DSA:参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行支付平台证书加密形成密文后进行2048位的Base64转码。 |
merchantAcctId={merchantAcctId}&terminalId={terminalId}&trxDate={trxDate}&token={token }&expTime={expTime }&errCode={errCode}
根据字母排序(如a**字段放在b**字段前面)验签。
日终交易文件下载请求
请求地址
环境 | HTTPS请求地址 |
---|---|
测试环境 | https://hfgj.testpnr.com/pay/dailyFileDownload.htm |
正式环境 | https://global.chinapnr.com/pay/dailyFileDownload.htm |
请求参数
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
merchantAcctId | String | 必选 | 32 | 会员账号,与提交订单时的保持一致 | 1001234001101 |
terminalId | String | 必选 | 8 | 终端号,与提交订单时的保持一致 | 999999 |
token | String | 必选 | 32 | 唯一关联号,由我司提供 |
日终交易文件下载返回
对账文件首行为汇总行,其他行为明细行,各行数据以“|”分隔。
首行
商户号|终端|结算币别|对账日期|总消费笔数|总消费金额|总消费手续费金额|总退款笔数|总退款金额|总退款手续费|预留字段
明细行
交易类型|交易号|商户订单号|商户订单时间|交易确认时间|订单币别|订单金额|结算币别|结算金额|手续费
首行参数
参数 | 是否必填 | 描述 | 示例值 |
---|---|---|---|
商户号 | 必选 | 由我司提供 | 1001234001101 |
终端 | 必选 | 由我司提供 | 999999 |
结算币别 | 必选 | 币别代码,详细请参考币别代码附录 | CNY |
对账日期 | 必选 | 年月日,例如:20160101 | 20160101 |
总消费笔数 | 必选 | 明细中的交易笔数 | 100 |
总消费金额 | 必选 | 目标金额汇总,单位为元,精确到小数点后两位 | 10.00 |
总消费手续费金额 | 必选 | 交易的手续费汇总,单位为元,精确到小数点后两位 | 10.00 |
总退款笔数 | 必选 | 明细中的退款笔数 | 2 |
总退款金额 | 必选 | 退款金额,单位为元,精确到小数点后两位 | 10.00 |
总退款手续费 | 必选 | 退款返回的手续费,单位为元,精确到小数点后两位 | 10.00 |
预留字段 | 可选 | 总退款扣费,如后续退款收手续费则汇总到这个字段 |
明细行参数
参数 | 是否必填 | 描述 | 示例值 |
---|---|---|---|
交易类型 | 必选 | sales/refund | |
交易号 | 必选 | 我方消费交易号或退款交易号 | 2000003884 |
商户订单号 | 必选 | 商户消费交易订单号或退款交易申请号 | 20170822114749925 |
商户订单时间 | 必选 | 商户提交时间 | 2017082210220712 |
交易确认时间 | 必选 | 系统交易状态确认成功的时间 | 2017082210220712 |
订单币别 | 必选 | 订单币别,详细请参考币别代码附录 | CNY |
订单金额 | 必选 | 订单金额,单位为元,精确到小数点后两位 | 10.00 |
结算币别 | 必选 | 结算币别,详细请参考币别代码附录 | CNY |
结算金额 | 必选 | 结算金额,单位为元,精确到小数点后两位 | 10.00 |
手续费 | 必选 | 消费手续费金额,币别同结算币别。单位为元,精确到小数点后两位 | 10.00 |
请求示例
请参考具体Demo。 下载地址
PG返回示例
http://www.merchant.com/pay/notifyReceiverPg.do?dealTime=20170728154002&errCode=000000&merchantAcctId=1001215986501&orderTime=20170728153936&orderCurrency=USD&dealId=1000014646&version=3.0&bankId=cmb&terminalId=0010001&payResult=10&ext1=ext1&orderAmount=600&ext2=ext2&signMsg=UZGi%2FzL%2FF84yGoyPtUfSLI0w%2F8rAdYZq%2F9CZRpDmxPPBlbEFD569fUYtcCiSYdnz7oFxu2aEOAbSOqW6SXJ%2FbTR8uOqlIhSOKzURlPle4nbThUVjZG8ZWTBvplxqmaMv0Z2ISZAeSVebNu1La1%2BTEV3Gn9TwiJuG1tlVwL0onI8%3D&payType=10&orderId=2017072815394180
BG返回示例
BG以http Key-Value方式返回,如:
dealTime=20170728154002
errCode=000000
merchantAcctId=1001215986501
orderTime=20170728153936
orderCurrency=USD
dealId=1000014646
version=3.0
bankId=cmb
terminalId=0010001
payResult=10
ext1=ext1
orderAmount=600
ext2=ext2
signMsg=UZGi%2FzL%2FF84yGoyPtUfSLI0w%2F8rAdYZq%2F9CZRpDmxPPBlbEFD569fUYtcCiSYdnz7oFxu2aEOAbSOqW6SXJ%2FbTR8uOqlIhSOKzURlPle4nbThUVjZ8ZWTBvplxqmaMv0Z2ISZAeSVebNu1La1%2BTEV3Gn9TwiJuG1tlVwL0onI8%3D
payType=10
orderId=2017072815394180