2.md 13 KB

2.通用API说明

商户服务器和 AllPay 网关对接的通用接口,每个渠道都具有的功能,包括:订购消费,订购预授权,订购预授权完成,预售期撤销,查询接口。

2.1. 验签说明

1.对于发送到 ALLPAY 系统的 POST 请求报文,其中所有传入参数(除 sign 参数外)按照字段名的 ASCII 码从小到大排序后(字典序),使用 URL 键值对的格式(即 key1=value1&key2=value2...)拼接成字符串 String1。

2.在 String1 最后直接拼接(不需要用“&”连接)双方约定的签名密钥 K1(接入时 ALLPAY 时分配),得到 stringSignTemp 字符串,并对 stringSignTemp 进行sha256 运算,得到 sign 的值。

3.示例签名串

card_no=6222020302030778784&expiry_date=0824&mch_id=000000000000015&order_amount=100&order_currency=CNY&sign_type=SHA256&trade_no=5389535343453&trade_time=20180821120001&trade_type=PURC2f2c77e3718c47cfb47a89a6fbc9d361

3.2. 通用API 接入地址

开发调试地址 生产交易地址
https://testapi.allpayx.com/expup https://api.allpayx.com/expup

3.3. 订购消费接口

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 消费填写"PURC" | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | order_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:"5389535343453",
    order_amount:"100",
    order_currency:"CNY",
    card_no:"6222020302030778784",
    expiry_date:"0824",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
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:"20180821120001",
    trade_no:"5389535343453",
    sign_type:"SHA256",
    sign:""
    
}

3.4. 消费退款接口

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 退款填写"REFD" | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | origin_trade_no | M | 原交易订单号 | | refund_amount | M | 退款金额 如100元,表示为100或100.00 | | order_currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |

举例如下:

   {
    mch_id:"000000000000015",
    trade_type:"REFD",
    trade_no:"35252352352525",
    origin_trade_no:"5389535343453",
    refund_amount:"100",
    order_currency:"CNY",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
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:"20180821120001",
    trade_no:"35252352352525",
    sign_type:"SHA256",
    sign:""
    
}

3.5. 订购预授权

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 预授权填写" PAUT " | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | order_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:"5389535343453",
    order_amount:"100",
    order_currency:"CNY",
    card_no:"6222020302030778784",
    expiry_date:"0824",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
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:"20180821120001",
    trade_no:"5389535343453",
    sign_type:"SHA256",
    sign:""
    
}

3.6. 订购预授权完成

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :-------------- | :--- | ---------------------------------------------- | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 预授权完成填写" PAUC " | | trade_no | M | 商户自行定义,需保证同一商户号下订单号不能重复 | | origin_trade_no | M | 原订单号 | | order_amount | M | 订单金额 如100元,表示为100或100.00 | | order_currency | M | 订单币种 人民币填写“CNY”,美元填写"USD" | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |

举例如下:

   {
    mch_id:"000000000000015",
    trade_type:"PAUC",
    trade_no:"424234234242423",
    origin_trade_no:"5389535343453",
    order_amount:"100",
    order_currency:"CNY",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
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:"20180821120001",
    trade_no:"424234234242423",
    sign_type:"SHA256",
    sign:""
    
}

3.7. 撤销接口

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :-------------- | :--- | ---------------------------------------------- | | 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:"4324242424234234",
    origin_trade_no:"424234234242423",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
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:"20180821120001",
    trade_no:"4324242424234234",
    sign_type:"SHA256",
    sign:""
    
}

3.6. 交易查询

  1. 请求参数

| 参数名称 | 必填 | 使用说明 | | :---------------- | :--- | ------------------------------------ | | mch_id | M | 商户ID,由AllPay分配 | | trade_type | M | 交易类型 查询填写"INQY" | | origin_trade_type | M | 要查询的交易类型 PURC,PAUT,PAUC,VOID | | trade_no | M | 订单号 | | trade_time | M | 交易时间,格式:"yyyyMMddHHmmss" | | sign_type | M | SHA256 | | sign | M | 签名 |

举例如下:

   {
    mch_id:"000000000000015",
    trade_type:"INQY",
    origin_trade_type:"PURC",
    trade_no:"5389535343453",
    trade_time:"20180821120001",
    sign_type:"SHA256",
    sign:"" 
   }
  1. 响应报文

参数如下表:

参数名称 必填 使用说明
resp_code M 应答码 00-成功
resp_msg M 应答信息
mch_id M 商户ID,由AllPay分配
trade_type M 交易类型
trade_time M 交易时间
trade_no M 交易订单号
order_amount M 订单金额 如100元,表示为100或100.00
order_currency M 订单币种 人民币填写“CNY”,美元填写"USD"
sign_type M SHA256
sign M 签名

举例如下:

{
    resp_code:"00",
    resp_msg:"SUCCESS",
    mch_id:"000000000000015",
    trade_type:"PURC",
    order_amount:"100",
    order_currency:"CNY",
    trade_time:"20180821120001",
    trade_no:"5389535343453",
    sign_type:"SHA256",
    sign:""
    
}