1. 接入指引
付临门开放平台
  • 文档说明
    • 阅读对象
    • 版本历史
  • 接入指引
    • 对接流程
    • 常见问题
    • 接口格式
    • 签名验签说明
    • DEMO示例
    • 数字字典
      • imgType字典
      • changeType字典
      • auditStatus字典
      • licValidityType 字典
      • terminalCompany字典
      • termMode字典
      • deviceType字典
      • ntltyCode字典
      • idTp字典
  • 商户管理
    • 业务指引
    • 商户进件
      • 图片上传
      • 商户进件
      • 进件状态查询
      • 进件状态异步通知
      • 电子签约查询
      • 电子签约重发
      • 签约结果异步通知
      • 微信支付宝报备结果查询
      • 微信支付宝认证结果查询
      • 银联入网结果查询
      • 商户信息查询
      • 商户状态变更通知
    • 终端管理
      • 终端绑定
      • 终端解绑
      • 终端解绑通知
      • 终端信息查询
      • 终端信息变更
    • 微信支付宝配置
      • 微信APPID配置
      • 微信授权目录配置
      • 微信配置参数查询
    • 商户信息变更
      • 商户基本信息变更
      • 商户结算信息变更
      • 商户费率变更
      • 商户结算方式变更
      • 商户主体信息变更
      • 商户变更进度查询
      • 商户变更异步通知
      • 商户限额查询
      • 商户提额申请
    • 入网辅助类
      • MCC查询
      • 获取银联开户省
      • 获取银联开户市
      • 获取银联开户地区
      • 获取银联总行行号
      • 获取银联支行行号
  • 支付交易
    • 业务指引
    • 扫码支付
      • JSAPI支付
      • 付款码支付
      • 动态支付
      • 交易查询
      • 交易退货
      • 交易撤销
      • 退款查询
      • 交易关闭
      • 授权码获取微信 openid
      • 支付结果异步通知
      • 退款结果异步通知
    • 扫码担保
      • 扫码担保受理
      • 扫码担保完成
      • 扫码担保撤销
    • 附录
      • 支付状态说明
      • 支付方式说明
      • 单品优惠 - 微信渠道
      • 单品优惠 - 支付宝渠道
      • 单品优惠 - 云闪付渠道
  • 增值业务
    • 营销活动
      • 业务指引
      • 营销结果通知
      • 营销账户余额查询
      • 商户补贴额度查询
    • 出金业务
      • 资金划拨记录查询
      • 商户余额查询
    • 特色结算业务
      • 特色结算业务开通
      • 特色结算业务开通记录状态查询
      • 提交快速结算订单
      • 查询快速结算订单结果
      • 快速结算订单回调
      • 商户开通/关闭定时结算
    • 分账类
      • 分账绑定关系查询
      • 订单分账申请
      • 分账结果查询
      • 分账回退
      • 分账回退查询
      • 分账退款查询
      • 分账异步通知
      • 余额分账申请
      • 分账完结申请
    • 分账服务
      • 业务指引
      • 订单分账
      • 余额分账
  • 对账文件
    • 文件说明
    • 开通流程
  • POS终端对接
    • 接入流程
  • 附录
    • 应答码
    • MCC列表
    • 银行列表
  1. 接入指引

签名验签说明

注意事项
1.
字段值为null或者为""时不参与拼接
2.
data字段为业务数据的原始字符串(JSON字符串),不做二次编码
3.
签名结果统一使用Base64编码
4.
请求头Sign-Algorithm固定为RSA(标识使用RSA签名)
5.
为了防止格式错误导致验签失败,在配置 RSA 公钥信息时,请务必注意以下两点:
1.去除首尾标记:请删除内容中的 -----BEGIN PUBLIC KEY----- 和 -----END PUBLIC KEY-----。
2.去除所有换行:请将公钥内容中的换行符(回车)全部删掉,使其缩减为一行连续的字符串后再进行复制粘贴,注意前后不要出现空格。

1. 算法与密钥规范#

项目说明
签名算法SHA256WITHRSA
密钥长度2048 bit
密钥格式PKCS#8

2. 参与加签的字段#

仅以下字段参与签名计算:
appId
data
serialNo
timestamp

3. 加签规则#

1.
字段筛选:从请求报文中取出 appId、data、serialNo、timestamp 四个字段。
2.
排序规则:按字段名进行升序排序。
3.
拼接规则:按排序后的顺序,将字段名和字段值进行拼接(例如:appId=xxx&data=xxx&serialNo=xxx&timestamp=xxx)。
4.
签名计算:使用服务商自己的私钥对拼接后的字符串进行 SHA256WITHRSA 签名,得到 Base64 编码的签名值,放入请求报文的 signature 字段。

拼接示例#

假设字段值如下:
{
  "appId": "app_001",
  "data": "{\"orderId\":\"ORD123456\"}",
  "serialNo": "202310210001",
  "timestamp": "1697875200000"
}
按字段名升序排序后顺序为:appId → data → serialNo → timestamp
拼接字符串为:
appId=app_001&data={"orderId":"ORD123456"}&serialNo=202310210001&timestamp=1697875200000
使用 PKCS#8 格式的 2048 bit 私钥,对该字符串进行 SHA256WITHRSA 签名,得到 signature。

4.验签规则#

服务端使用付临门的公钥对请求报文中的 signature 进行验签。

4.1参与验签的字段#

code
data
msg

4.2验签规则#

1.
字段筛选:从响应报文中取出 code、data、msg三个字段。
2.
排序规则:按字段名进行升序排序。
3.
拼接规则:按排序后的顺序,将字段名和字段值进行拼接(例如:code=xxx&data=xxx&msg=xxx)。
4.
签名计算:使用公钥对拼接后的字符串进行 SHA256WITHRSA 验签
上一页
接口格式
下一页
DEMO示例
Built with