商户服务器和 AllPay 网关对接的通用接口,每个渠道都具有的功能,包括:订购消费,订购预授权,订购预授权完成,预售期撤销,查询接口。
1.对于发送到 ALLPAY 系统的 POST 请求报文,其中所有传入参数(除 sign 参数外)按照字段名的 ASCII 码从小到大排序后(字典序),使用 URL 键值对的格式(即 key1=value1&key2=value2...)拼接成字符串 String1。
2.在 String1 最后直接拼接(不需要用“&”连接)双方约定的签名密钥 K1(接入时 ALLPAY 时分配),得到 stringSignTemp 字符串,并对 stringSignTemp 进行sha256 运算,得到 sign 的值。
3.示例签名串
card_no=5200831111111113¤cy=CNY&expiry_date=1119&mch_id=000000000000015&order_amount=100&sign_type=SHA256&trade_no=370000197809218764&trade_time=20180829165052&trade_type=PURC2f2c77e3718c47cfb47a89a6fbc9d361
开发调试地址 | 生产交易地址 |
---|---|
https://testapi.allpayx.com/expup | https://api.allpayx.com/expup |
接口说明:
该接口可以进行订购消费,每次trade_no不能重复
| 参数名称 | 必填 | 使用说明 | | :----------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 消费填写"PURC" | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | card_no | M | 卡号 | | expiry_date | M | 有效期 MMYY | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "PURC",
"trade_no": "370000197809218764",
"order_amount": "100",
"currency": "CNY",
"card_no": "5200831111111113",
"expiry_date": "1119",
"trade_time": "20180829165052",
"sign_type": "SHA256",
"sign": "426907204360081d7c728a6695067bc84233e82d0e3a61703313d874aa741d76"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"resp_code": "00",
"resp_msg": "SUCCESS",
"mch_id": "000000000000015",
"trade_type": "PURC",
"trade_time": "20180829165048",
"trade_no": "520000197701311324",
"sign_type": "SHA256",
"sign": "7ca2442edac07b92ee9d086d2df1635b62c1d5d4ab33ffe8ceb2c195579a8698"
}
接口说明:
该接口可以对订购消费进行退款,退款时origin_trade_no填写订购消费时的trade_no,可以进行分步退款,分步退款时每次的trade_no不能重复。
| 参数名称 | 必填 | 使用说明 | | :------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 退款填写"REFD" | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | origin_trade_no | M | 原订购消费订单号, 原交易类型必须为PURC | | refund_amount | M | 退款金额 如100元,表示为100或100.00 | | currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "REFD",
"trade_no": "990000198707011244",
"origin_trade_no": "230000197106062088",
"refund_amount": "1",
"currency": "CNY",
"trade_time": "20180829165313",
"sign_type": "SHA256",
"sign": "edc8e56be38190402ee537e3fc4e30766d47a0ca297c2de4be460a99a6139e14"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"resp_code": "00",
"resp_msg": "SUCCESS",
"mch_id": "000000000000015",
"trade_type": "REFD",
"trade_time": "20180829165313",
"trade_no": "990000198707011244",
"sign_type": "SHA256",
"sign": "3a370170181a5aa6b5f53cb3ae81890813c455df6ec9b1a894a49302fcc3d055"
}
接口说明:
该接口可以进行订购预授权,每次trade_no不能重复
| 参数名称 | 必填 | 使用说明 | | :----------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 预授权填写" PAUT " | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | card_no | M | 卡号 | | expiry_date | M | 有效期 MMYY | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "PAUT",
"trade_no": "620000199911267889",
"order_amount": "100",
"currency": "CNY",
"card_no": "5200831111111113",
"expiry_date": "1119",
"trade_time": "20180829165720",
"sign_type": "SHA256",
"sign": "ac7cf7d284cf72743e16c51b7a95d9a61b7dbb6f50e92f5699ecf4d9f8e65aee"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"resp_code": "00",
"resp_msg": "SUCCESS",
"mch_id": "000000000000015",
"trade_type": "PAUT",
"trade_time": "20180829165720",
"trade_no": "620000199911267889",
"sign_type": "SHA256",
"sign": "7421f9720d56b1d417edc26f89d2777b74d7745440bfc4957c853474f20ea4f7"
}
接口说明:
该接口可以对订购预授权完成,origin_trade_no填写订购预授权时的trade_no
| 参数名称 | 必填 | 使用说明 | | :-------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 预授权完成填写" PAUC " | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | origin_trade_no | M | 原预授权订单号, 原交易类型必须为PAUT | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "PAUC",
"origin_trade_no": "620000199911267889",
"trade_no": "310000198512106263",
"order_amount": "100",
"currency": "CNY",
"trade_time": "20180829170036",
"sign_type": "SHA256",
"sign": "0a532fdc7488bdbc6cdc87d24635fdd7294d6d3fc8cf0eb387d4b74b5fc3dcb7"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"resp_code": "00",
"resp_msg": "SUCCESS",
"mch_id": "000000000000015",
"trade_type": "PAUC",
"trade_time": "20180829170036",
"trade_no": "310000198512106263",
"sign_type": "SHA256",
"sign": "5769c35d68d8263ace180e224eea6ebb8907cc1a1042a9f955cd9c32fd0602cf"
}
接口说明:
该接口可以对 订购消费,订购预授权,订购预授权完成进行撤销,origin_trade_no填写对应交易的trade_no。
| 参数名称 | 必填 | 使用说明 | | :-------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 撤销填写"VOID " | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | origin_trade_no | M | 需要撤销的订单号 | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "VOID",
"trade_no": "370000197912155378",
"origin_trade_no": "460000201604155983",
"trade_time": "20180829170913",
"sign_type": "SHA256",
"sign": "6c0815cd8f364dacc965e6bc2ce144fe56b7743912f0520db33c9c3393e75d26"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"resp_code": "00",
"resp_msg": "SUCCESS",
"mch_id": "000000000000015",
"trade_type": "VOID",
"trade_time": "20180829170913",
"trade_no": "370000197912155378",
"sign_type": "SHA256",
"sign": "d48e6a23b87f7f3b47598aed52fe60aaccb053979de588170f943f9a3426ced4"
}
接口说明:
该接口可以对订购消费,订购预授权,订购预授权完成,退款,撤销,进行查询,trade_no填写要查询的订单的
| 参数名称 | 必填 | 使用说明 | | :--------- | :--- | ------------------------------ | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 查询填写"INQY" | | trade_no | M | 需要查询状态的订单号 | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "INQY",
"trade_no": "990000198707011244",
"trade_time": "20180829171422",
"sign_type": "SHA256",
"sign": "2bdfe50dc7c207891e132485eedf978c3f355f3a8e3ad25d6b4260c388a584c5"
}
参数如下表:
参数名称 | 必填 | 使用说明 |
---|---|---|
resp_code | M | 应答码 00-成功 |
resp_msg | M | 应答信息 |
mch_id | M | 商户ID,由AllPay分配 |
trade_type | M | 交易类型 |
trade_time | M | 交易时间 |
trade_no | M | 交易订单号 |
order_amount | C | trade_type 为PURC,PAUT,PAUC时返回 |
refund_amount | C | trade_type 为REFD时返回 |
currency | C | trade_type 为PURC,PAUT,PAUC,REFD时返回 |
sign_type | M | SHA256 |
sign | M | 签名 |
举例如下:
{
"mch_id": "000000000000015",
"trade_type": "REFD",
"trade_time": "20180829165313",
"trade_no": "990000198707011244",
"refund_amount": "1",
"currency": "CNY",
"sign_type": "SHA256",
"sign": "4ab0c48ac6aac058f7f5d6473679dcebc91d6c57cf3f690ab8984248b5b960f9"
}