财资云开放平台(开发版)
  1. 密钥与签名
财资云开放平台(开发版)
  • 接入指南V3
    • 创建应用
    • APIFOX脚本及外部程序使用教程
    • 规则说明
      • 基本原则
      • 错误码
    • 密钥与签名
      • 接口加签方式
      • 签名规则
      • 验签规则
      • 请求内容加密
    • 服务端SDK
      • SDK使用帮助
      • Java
    • 应用开发配置
      • IP白名单
        • 服务器IP白名单
    • 常见问题
  • 接入指南
    • 接口调用方式说明
    • 创建应用
    • APIFOX脚本及外部程序使用教程
    • 应用开发配置
      • 接口加签方式
        • 接口加签方式说明
        • 设置密钥加签方式
        • 开发指南
          • 如何使用密钥
          • 密钥格式说明
          • 自行实现签名
          • 自行实现验签
        • 常见问题
          • 常见问题
        • SAP加签验签指南
      • IP白名单
        • 服务器IP白名单
      • 接口内容加密方式
        • 接口内容加密方式说明
      • 错误码
        • 公共错误码
    • 开发工具包
      • 开发工具包简介
      • 服务端SDK
        • 概述
        • Java
        • PHP
        • .Net
        • Python
        • NodeJS
    • 密钥工具
      • 密钥工具简介
      • 生成密钥
      • 密钥匹配
      • 格式转换
      • 同步验签
      • 签名
      • 异步验签
  • 产品能力
    • 示例产品
      • 示例功能
        • 产品介绍
        • 接入准备
        • 接入指南
        • 常见问题
        • 更新日志
        • API列表
          • API接口列表示例
    • 账户产品
      • 产品介绍
      • 接入准备
      • 接入指南
      • 常见问题
      • 更新日志
      • 账户管理
        • 实体户接口
          • 新增实体账户信息
          • 变更实体账户状态
          • 修改实体账户信息
          • 查询实体账户信息
        • 三方户接口
          • 新增三方户(商户号)信息
          • 变更三方户(商户号)状态
          • 修改三方户(商户号)信息
          • 查询三方户(商户号)信息
        • 内部户接口
          • 新增内部账户信息
          • 变更内部账户状态
          • 修改内部户信息
          • 查询内部账户信息
        • 现金户接口
          • 新增现金户信息
          • 变更现金账户状态
          • 变更现金户信息
          • 查询现金账户信息
        • 虚拟户接口
          • 新增虚拟子账户信息
          • 变更虚拟子账户信息
          • 销户虚拟子账户
          • 查询虚拟子账户信息
      • 账户余额
        • 查询账户余额
        • 同步账户余额(含RPA)--先不处理
      • 账户明细
        • 查询三方账户明细
        • 同步实体账户明细(含RPA)---先不处理
      • 回单(作废)
        • 同步电子回单(含RPA)--先不处理
      • 关联关系(作废)
        • 根据明细查回单
      • 流水
        • 流水
      • 实物资产
        • 实物资产查询接口
      • 合作银行
        • 合作银行查询接口
      • 交易对手
        • 交易对手查询接口
    • 结算产品
      • 应付
        • 产品介绍
        • 接入准备
        • 接入指南
        • 常见问题
        • 更新日志
        • API列表
          • 创建应付款单
          • 应付单查询接口
      • 国内付款
        • 产品介绍
        • 接入准备
        • 接入指南
        • 常见问题
        • 更新日志
        • API列表
          • 创建国内付款
        • 国内支付填写要求
      • 费用报销
        • 产品介绍
        • 接入准备
        • 接入指南
        • 常见问题
        • 更新日志
        • API列表
          • 创建批量报销
      • 工资发放
        • 产品介绍
        • 接入指南
        • 接入准备
        • 常见问题
        • 更新日志
        • API列表
          • 创建工资代发
          • 创建工资批次总额信息
      • 全球付款
        • 产品介绍
        • 接入准备
        • 接入指南
        • 常见问题
        • 更新日志
        • API列表
          • 创建全球付款
      • 撤销付款
        • API列表
          • 撤销付款
      • 付款结果
        • 支付结果通知
        • 支付结果查询
        • 应付结果通知
        • 应付结果查询
      • 单据查询
    • 其他通用产品
      • 系统
        • 组织部门
          • 资源介绍
          • API列表
            • 创建组织部门
            • 修改组织部门
            • 删除组织部门
            • 获取单个组织部门信息
            • 组织部门批量查询
          • 事件列表
            • 组织创建
            • 组织创建
            • 组织变更
            • 删除组织
        • 开户行
          • 开户行查询
        • 系统字典
          • 资源介绍
          • API列表
            • 系统字典查询
            • 银行查询
        • 业务字典
          • 资源介绍
          • API列表
            • 新增业务字典
            • 修改业务字典
            • 重置字典
            • 删除单个业务字典
            • 删除指定类型字典
            • 业务字典批量查询
            • 单个业务字典查询
          • 事件列表
            • 新增业务字典
            • 修改业务字典
            • 删除单个业务字典
            • 删除指定类型字典
            • 重置字典
        • 汇率
          • 新增汇率
          • 修改汇率
          • 删除汇率
          • 查询单条汇率
          • 批量查询汇率
        • 会计科目
          • 新增会计科目
          • 修改会计科目
          • 删除会计科目
          • 查询单个会计科目
          • 批量查询会计科目
        • 交易对手
          • 交易对手信息
        • 通用文件上传
          • 上传文件
    • 票证产品
      • 票据
        • 查询
          • 附件查询
          • 票据正背面查询
        • 操作
          • 签收/承兑 /付款
          • 质押申请
          • 背书申请
          • 贴现申请
          • 撤回操作
          • 撤票操作
          • 提示付款申请
          • 票据同步
          • 票据异常处理
        • 出票申请
        • 票据查询(拆开)
        • 交易状态查询
        • 异步通知(同步 票据当前操作 状态)
        • 票据详情查询
        • 对方是否签收状态查询
      • 新版票据
        • 外部对接
          • 票据贴现对外接口
          • 票据出票对外接口
        • 资产池对接
          • 入池校验/跨行调拨操作
          • 资产池通知操作
      • 信用证
        • 信用证信息查询
        • 【老版本停止维护】信用证信息-推送(全字段版,部分字段改造前暂无)
        • 信用证信息-推送(新版信用证)
      • 贴现运营
        • 查询票据贴现运营列表信息
        • 贴现运营配票进度缓存查询接口
        • 贴现运营-配票接口
    • 对账产品
      • 认领接口
    • 投融资
      • 融资
        • 授信&发行申报
          • 【上报】查询授信&发行申报合同
          • 查询授信合同
          • 授信新增
          • 授信查询
        • 发行申报
          • 查询发行申报
        • 融资合同&内部往来&债券登记
          • 查询融资合同
          • 【上报】查询融资&往来&债券合同
        • 债券登记
          • 查询债券合同
        • 往来借款
          • 内部往来新增
          • 查询往来借款合同
        • 提款&放款
          • 【上报】查询提款&放款列表
        • 贷后
          • 【上报】查询贷后列表
          • 【上报】查询还款记录列表
        • 保函
          • 【上报】查询保函列表
        • 资产台账
          • 【上报】查询资产台账列表
        • 担保
          • 【上报】查询担保列表
        • 融资新增
        • 融资查询
        • 内部往来查询
        • 提款
        • 放款
        • 按期还款
        • 提前还款
      • 投资
        • 存款
          • 存款新增
          • 存款详情查询
          • 存款支取
          • 存款申购
          • 转让
          • 存款结息
          • 存款作废
        • 理财
          • 理财详情查询
          • 理财新增
          • 理财作废
    • 预算和计划
      • API列表
        • 预算控制
      • 资金预算
        • 预算编制查询
        • 预算编制更新接口
    • 身份认证
      • 获取登录预授权码
    • 结算中心
      • 结算中心计息单查询接口
    • 事件中心
      • webhook
        • 明细
          • 实体户明细删除
          • 三方明细删除
        • 对账
          • 应收单
          • 应收单实体账户流水
          • 应收单虚拟户流水
          • 应收单票据流水
          • 实体账户流水票据流水
        • 账户
          • 账户变更销
    • 组织架构
      • 员工
        • 资源介绍
        • API列表
          • 新增员工
          • 员工转用户
          • 修改员工
          • 删除员工信息
          • 查询单个员工信息
          • 批量查询员工信息
        • 事件列表
          • 新增员工
          • 修改员工
          • 删除员工
          • 员工转用户
      • 组织
        • 通过企业名称查询详细信息
        • API列表
          • 通过企业名称查询详细信息
  • 更新日志
    • 产品更新日志
    • 工具更新日志
  • 枚举值
    • 预算跨度
    • 预算颗粒度
    • 滚动颗粒度
    • 滚动期数
    • 参考值取数
    • 预算类型
    • 编制状态
    • 审批状态
    • 编制总状态
    • 催办状态
    • 执行状态
    • 预算旬
    • 预算周
    • 科目分类
    • 收支方向
    • 收支类型
    • 余额模板类型
    • 币种
    • 交易对手种类
    • 账户性质
    • 支付方式
    • 应付来源
  1. 密钥与签名

签名规则

签名机制#

财资云的应用管理体系,使用了公私钥的机制对请求进行加签,防止数据篡改,以此来保障企业应用和财资云交互的安全性。没有携带签名或者签名验证不通过,财资云 API 将会拒绝处理请求,并返回 401 Unauthorized。

签名生成流程#

1.
构造认证串 authString。
2.
构造待签名内容。
3.
计算签名。
4.
将签名信息添加到请求。

构造认证串 authString#

authString 为认证字符串,其中包括认证身份信息和必要的安全信息,财资云将根据该字段中的信息对请求进行身份认证和安全检查,校验失败则财资云会拒绝处理请求。

规则说明#

authString 由 key=value 形式组成, 多组 keyValue 通过逗号隔开,对参数顺序无要求。财资云会按上述格式解析该字符串,获取必要的认证参数。对于非必选 key,若未使用到则不需要传递对应的 key

内容说明#

${签名算法}空格app_id=${app_id},nonce=${nonce},timestamp=${timestamp}

参数说明#

签名算法,必传参数,RSA2或RSA或SM2,与app_id间隔一个空格。
app_id,必传参数,开放平台颁发的应用id,参考 应用介绍。
nonce,必传参数,随机字符串,每次请求需要保持唯一。财资云使用字段值用于防重放,nonce 值重复的请求很有可能被拒绝处理。
timestamp,必传参数,请求发起时间,使用Unix时间戳,精确到毫秒。财资云会拒绝处理过期10分钟后的请求,请保持商家自身系统的时间准确性。

authString 示例#

RSA2 app_id=2014060600164699,nonce=5f9fba93-bbb2-40f0-b328-04d5ead3e131,timestamp=1667804301218

构造待签名内容#

普通请求#

content 内容 :
按照下述拼接规则,将需要签名的数据拼接为字符串。
${authString}\n
${httpMethod}\n
${httpReuqestUrl}\n
${httpRequestBody}\n
参数说明:
authString:步骤1中生成的认证串 authString。
httpMethod:本次请求的 http 方法,例如 GET\POST\PUT 等。
httpReuqestUrl: 本次请求的 uri 信息,包括 queryString,不包括域名,例如 /v3/cfs/settlement/payment/query?trade_no=123。
httpRequestBody:本次请求的 body 内容。当使用GET等请求时,body 为空,该值传入空字符串,即""。

请求签名串示例:
RSA2 app_id=2014060600164699,timestamp=1655869956477,nonce=eb4ade8f-8cfa-4ebf-a048-7eb52684ab32,expired_seconds=120
POST
/v3/cfs/settlement/payment/create?trade_no=123
{"trade_amount": "1000","out_trade_no": "FKD12345678"}
body 为空示例:
RSA2 app_id=2014060600164699,timestamp=1655869956477,nonce=eb4ade8f-8cfa-4ebf-a048-7eb52684ab32,expired_seconds=120
GET
/v3/cfs/settlement/payment/query?trade_no=123

文件上传请求#

文件上传请求,不需要对文件内容做签名计算,但是需要对其他业务参数加签。
具体格式同普通请求,其中 httpRequestBody 使用 multpart 中的 data 参数,具体参考 文件上传。

计算签名#

目前支持的签名算法为 SHA256withRSA 和 SM3WithSM2 两种,计算逻辑为: 使用签名算法对上文中得到的 content 计算签名,得到 byte 数组,然后将 byte 数组通过 Base64 方法编码得到字符串。
java 计算 RSA 签名示例:
计算结果示例:
we4W72MTS/icITRWbuYxKkRShl2KTsA6W0m28Wd5VH9entVVzBkenQOJ2MOOCb4izOdBqdH+LlBfqVGygjrgQQFD3bhVH8KwsoWtFBXsXNTLDvPXl2xDn0mejJP2hHCI7sCEmGPGqZ94YOZB5o7QZEEme05ImJjg6nFbir7oE0UszB2N3IgV080BU/dsmnaLKHHNOcnJ4Jj3cyYfFG+mJwaESDv07X5YGkHHiRKpfMeuXIKXLabBWGabpPv+fwkX0OP3hvew8QMQBZ1D30r2TdDzyCF/lxkA3HmFEV1EMhRrTA3+HS9ChZRn7p/8aCZ/IdkfGj1I63it73NmpUfmgA==

将签名信息添加到请求#

在上述步骤,完成签名计算后,需要将身份及签名信息填充到请求头中,来实现认证鉴权信息的传递。
具体请求头及对应值规则如下:
authorization: ${authString},sign=${signature}
注意签名算法和 authString 之间为空格分隔,authString 和 sign 使用逗号分隔。
签名算法,计算签名时使用的算法,目前支持 SHA256withRSA、SM3withSM2。
authString,构造认证串 authString 中生成的认证串 authString。
signature,计算签名 中生成的签名值。
完整请求示例:
上一页
接口加签方式
下一页
验签规则
Built with