1. 2. 接口规范
收款啦交易接口文档
  • 收款啦-码牌
    • 文本修改记录
    • 1. 综述
      • 1.1 阅读人员
      • 1.2 定义和术语
      • 1.3 场景和模型
      • 1.4 对接流程
      • 1.5 工具使用说明
    • 2. 接口规范
      • 2.1 接口须知
      • 2.2 接口规范
      • 2.3 签名验签
      • 2.4 统一示例参数
    • 3. 场景详情
      • 3.1订单支付
    • 4. 接口定义
      • 4.1 订单成功通知
    • 5. 附录
      • 5.1 交易码定义
      • 5.2 交易状态定义
  • 收款啦-终端接入
    • 文档修改记录
    • 综述
      • 智能POS收款啦SDK概述
      • 智能POS三方调用Intent模式概述
    • 接口规范
      • 接入须知
    • 接口定义
      • SDK调用模式
        • SDK初始化
        • SDK激活
        • 终端签到
        • 扫码交易(被扫)
        • 扫码交易查询
        • 扫码交易退款
        • 三方订单号查询
        • 银行卡交易
        • 银行卡撤销
        • 银行卡退款
        • 小票打印
        • 附录
      • 三方调用Intent模式
        • 签到
        • 获取商户信息
        • 消费
        • 消费撤销
        • 移动支付退货
        • 银行卡退货
        • 订单结果查询
        • 结算
        • 交易重打印
        • 开票
        • 自定打印
        • 预授权交易
        • 预授权撤销
        • 预授权完成
        • 预授权完成撤销
        • 外卡消费
        • 外卡预授权
        • 外卡预授权完成
        • 担保进度查询
        • 跳转交易列表
        • 激活
        • 余额查询
        • 附录
  • 收款啦-pos查询通知服务
    • 文本修改记录
    • 1. 综述
      • 1.1 阅读人员
      • 1.2 定义和术语
      • 1.3 场景和模型
      • 1.4 对接流程
      • 1.5 工具使用说明
    • 2. 接口规范
      • 2.1 接口须知
      • 2.2 接口规范
      • 2.3 签名验签
      • 2.4 签名及验签v1
      • 2.5 统一示例参数
      • 2.6 调试前必看
      • 2.6 生成商户公私钥
        VIEW
    • 3. 接口定义
      • 3.1 POS交易查询(单笔)
      • 3.2 POS交易成功通知
    • 4. 附录
      • 4.1 交易类型transType定义
      • 4.2 交易代码transCode定义
      • 4.3 卡类型cardType
      • 5.5 公用请求信息
      • 5.6 终端TPDU报文头规范
      • 5.7 支付方式
      • 5.8 卡类型
      • 5.9 计算交易类型
  • 收款啦-云MIS订单支付
    • 文本修改记录
    • 1. 综述
      • 1.1 阅读人员
      • 1.2 定义和术语
      • 1.3 场景和模型
      • 1.4 对接流程
      • 1.5 工具使用说明
    • 2. 接口规范
      • 2.1 接口须知
      • 2.2 接口规范
      • 2.3 签名验签
      • 2.4 签名及验签v1
      • 2.5 统一示例参数
      • 2.6 调试前必看
      • 2.6 生成商户公私钥
    • 3. ERP接口定义
      • 3.1 预下单
      • 3.2 查询订单列表
      • 3.3 订单详情查询
      • 获取支付宝碰一碰设备管理
      • 查询订单统计(酒店)
      • 查询订单列表(酒店)
    • 4. POS厂商接口定义
      • 4.1 结算
        • 4.1.1 结算信息预览
        • 4.1.2 收银员结算
        • 4.1.3 结算历史分页查询
        • 4.1.4 结算交易分页查询
        • 4.1.4 结算交易分页查询(酒店)
      • 4.2 待处理列表查询
      • 4.3 待处理订单详情查询
      • 4.4 订单取消
      • 4.5 需退款订单查询
      • 4.6 退款订单创建
      • 4.7 账本查询
      • 4.8 MIS三方调用报文
    • 5.1阿里Iot
      • 支付宝碰一碰设备表服务API
        • 支付宝碰一碰设备管理
        • 支付宝碰一碰设备-绑定
        • 支付宝碰一碰设备-换绑
        • 支付宝碰一碰设备-解绑
        • 支付宝碰一碰设备-绑定结果查询
        • 支付宝碰一碰设备-法人授权
        • 支付宝碰一碰设备-法人授权查询
        • 支付宝碰一碰设备-卖进退出
      • 收银员结算服务API
        • 结算信息预览
        • 收银员结算
        • 结算历史分页查询
        • 结算交易分页查询
    • 6. 附录
      • 5.1 交易代码定义
      • 5.2 交易状态定义
      • 5.3 请求支付方式
      • 5.4 接口返回码
      • 5.5 公用请求信息
      • 5.6 终端TPDU报文头规范
      • 5.7 支付方式
      • 5.8 卡类型
      • 5.9 计算交易类型
    • 指令结算API
      • 指令结算请求
      • 指令结算查询
  1. 2. 接口规范

2.4 签名及验签v1

此套签名主要用于商服系统等场景后续废置,如非特殊说明可忽略#

数字签名#

为了保证数据传输过程中的数据真实性和完整性,我们需要对数据进行数字签名,在接收签名数据之后进行签名校验。
数字签名有两个步骤,先按一定规则拼接要签名的原始串,再选择具体的算法和私钥计算出签名结果。
整体流程:请求时使用商户私钥加签,根据规则生成sign上送到易生,易生会使用商户公钥对商户报文进行验签,然后返回报文中包含易生私钥加签的sign字段,商户收到后使用易生提供的统一公钥进行验签,以保证传输过程中报文的安全性。

签名原始串#

无论是请求还是应答,签名原始串按以下方式组装成字符串:
1.
参数使用QueryString的格式(即key1=value1&key2=value2…)拼接而成,空值不参与签名
2.
上述字符都是原始串,不要使用URLEncode
3.
报文签名说明
数据签名 数据传输过程中的数据真实性和完整性,我们需要对数据进行数字签名,在接收签名数据之后进行签名校验。
要求对报文(只对data一个字段进行签名)做签名,然后赋值给sign(签名值)字段,根据报文规则上传至易生服务器

签名方式#

使用的签名算法为SM2,使用商户私钥加签, 加签串使用默认Asn编码不压缩。

签名报文组装#

将请求报文中data字段值按照名称的ASCII码从小到大进行排序以&连接,如果名称的首字母相同,则比较第二个字母,以此类推拼接成key=value&key=value的字符串,然后进行签名,保留原始串不用urlencode,并且赋值给sign。

返回报文验签#

返回报文先验签再反序列化为对象,者将请求报文中data字段值按照名称的ASCII码从小到大进行排序以&连接,如果名称的首字母相同,则比较第二个字母,以此类推拼接成key=value&key=value的字符串(同加签),使用易生提供的公钥验签来保证数据的有效性。
orgTrace 说明商户流水号,规则yyyyMMddHHmmss+自定义流水订单信息,如:20220418210000qqqqqqqq
拼接需要签名的数据示例:#
加签/验签使用示例:#

测试密钥信息#

商户编号(orgId)
555555555555555
密钥特别说明:
公钥使用编码过66位,参考SM2密钥生成规则【公钥使用压缩格式02/03开头】,可参考:
获取签名秘钥对 生成公私钥
java引入包:JAVA国密工具库
加签私钥 商户私钥(后续由商户生成对,公钥提供给易生merPriKey):
BA76B0454AEE342F59AABE820F07359E5DE08D9FD394A8EFAF51D07EECEAE21F
验签公钥 商户公钥(后续由商户生成对,公钥提供给易生merPubKey):
02485EC4E3AF05580869F1862AB2F2BCDFAB08819616890D597E0D455F56A0CC61
附测试加签后报文,加签模式【C1C3C2】
公钥:02485EC4E3AF05580869F1862AB2F2BCDFAB08819616890D597E0D455F56A0CC61
私钥:BA76B0454AEE342F59AABE820F07359E5DE08D9FD394A8EFAF51D07EECEAE21F
源数据:111111
sign r size: 33, hex: 00ee459b659028fa5e8f41c892da5e5df22ce8a31821cd4f2875d021b8d15c7f35
sign r size: 33, hex: 00b271913cc417b9f714b6a9131b4f0df2995a64699fd3b0dba021accb4ec2feb2
签名信息:3046022100EE459B659028FA5E8F41C892DA5E5DF22CE8A31821CD4F2875D021B8D15C7F35022100B271913CC417B9F714B6A9131B4F0DF2995A64699FD3B0DBA021ACCB4EC2FEB2
加密/解签 易生机构公钥(用于易生返回的报文验签):
02AEDBC219CCAC53AF0FDD2AD4583BD58F26AB04D9B88EFDAE041B9D11B4F47380 【测试环境公钥】
02C105E963641BFDB240DDDA7A729F29E79E56F5CF3E00F3F0AE51F6E33017995C 【生产环境公钥】
加密/解签 易生机构私钥(用于商户调试时验证):
FCB39DB317FACF3BB01324ADE5F9D4B439D5642A5FDBD2EA9718F697ADA30EB8
修改于 2025-03-12 03:41:36
上一页
2.3 签名验签
下一页
2.5 统一示例参数
Built with