产品
企业支付
余额支付
开发指引

1. 接口规则

腾讯云商付 API 的所有接口均通过 HTTPS 进行通信,提供高安全性的通信通道。并且均使用UTF-8编码。所有接口请求都涉及公共参数,公共参数需要统一放到 HTTP Header 请求头部中,具体请参考 公共参数 (opens in a new tab)

开发者和腾讯云商付通信包含:开发者请求腾讯云商付、腾讯云商付回调通知开发者,通信过程涉及签名和验签,整体流程如下:

接口签名验签总体流程图

2. 开发准备

2.1 搭建和配置开发环境

为了帮助开发者调用开放接口,我们提供了 JAVA、PHP、GO 三种语言版本的示例代码,封装了签名生成、签名验签 等基础逻辑。 在接口测试之前,需在腾讯云商付管理后台 "开发者参数" 菜单 "生产环境" 获取 主体标识(ocode)、Secret ID、腾讯云商付公钥,并设置主体公钥。

请求腾讯云商付测试步骤:

  1. 拼接规范请求串 (opens in a new tab)
  2. 拼接待签名字符串 (opens in a new tab)
  3. 计算签名 (opens in a new tab)
  4. 拼接Authorization (opens in a new tab)

以上为开发者请求腾讯云商付的签名步骤伪代码,腾讯云商付回调通知开发者的签名验签也采用相同算法和步骤,具体参考 回调验签 (opens in a new tab)

签名和验签的具体实现代码参考 JAVA示例 (opens in a new tab)PHP示例 (opens in a new tab)GO示例 (opens in a new tab)

2.2 业务开发配置

2.2.1 腾讯云商付业务线支付通道资料配置

2.2.2 腾讯云商付商户进件或录入支付通道资料

注:在未配置腾讯云商付业务线资料和腾讯云商付商户资料时,为了降低接口接入调试的门槛,可在沙箱环境发起相关接口对接调试,具体参考 沙箱环境调试 (opens in a new tab) 沙箱环境的API地址和生产环境一致,区别在于开发者参数,需要在腾讯云商付管理后台 "开发者参数" 菜单 "沙箱环境" 获取 主体标识(ocode)、Secret ID、腾讯云商付公钥,并设置主体公钥。

3. 快速接入

3.1 业务流程图

余额支付-开发指引-业务流程图

重点步骤说明:

  • 步骤 1.1: 业务方调用 新增付款方 (opens in a new tab) 为每个付款商户创建付款方ID。其中
    • ChannelSubMerchantId 为付款方的商户ID
    • ChannelName 传后续收款的通道(如 CITICEM、PINGANJZB)
    • PayerName 传自定义的名称

备注:在新增付款方前,需要判断ChannelSubMerchantId 是否已经支持对应通道,可通过接口 商户进件结果查询 (opens in a new tab) 查询。根据外部商户ID、通道名(如 CITICEM、PINGANJZB) 查询进件情况,如果没有进件过通道,会返回

{
    "Response": {
        "RequestId": "",
        "Result": null,
        "ErrCode": "MERCHANT.DATA_NOT_EXIST",
        "ErrMessage": "未找到该商户信息"
    }
}
  • 步骤 2.4: 业务方系统调用 预下单 (opens in a new tab) 生成支付参数。

  • 步骤 2.8: 业务方应用将预下单返回的支付参数传入腾讯云商付收银台SDK,进入收银台支付流程。

  • 步骤 2.10: 用户选择余额支付方式发起付款。

  • 步骤 2.14: 用户支付成功后,开发者可接收到腾讯云商付的支付结果通知,通知API参考 支付成功通知 (opens in a new tab)

  • 步骤 2.17: 开发者在没有收到腾讯云商付支付结果通知的情况下需要主动调用 订单查询 (opens in a new tab)接口。由于支付通知可能存在延迟,以及通知在失败时腾讯云商付只会尽最大努力重试有限次数,不可只依赖通知,开发者必须接入订单查询API作为兜底。


腾讯云商付开发者中心文档