# 字节小程序担保支付简介
> 开发者可以申请担保支付交易,让用户能够在电商、生活服务、知识付费等多种场景下,在小程序完成支付闭环,提升用户的支付体验,保障资金安全。
## [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/RE#%E6%8B%85%E4%BF%9D%E6%94%AF%E4%BB%98%E8%83%BD%E5%8A%9B)担保支付能力
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/RE#%E5%90%8D%E8%AF%8D%E8%A7%A3%E9%87%8A)名词解释
| 名词 | 释义 |
| --- | --- |
| 商户 | 用于承接担保支付交易的账户,用户支付后,款项会进入卖家账户的冻结金额 |
| 进件 | 指提交支付相关资质并开通支付账号的流程 |
| 支付秘钥 | 担保支付使用了一套独立的秘钥,非 app secret,加签逻辑参考附录 |
| 结算 | 商户账户中的冻结金额需要进行结算将冻结金额结算至可提现金额。同时如果对卖家收到的款项有分配的需要,也需要在结算环节明确各方的分配金额。货款会在结算后进入各个分账方的可提现账户中 |
| 分账方 | 参与结算的非卖家用户,可以获分一定金额的货款。但分配金额之和不能超过支付订单金额的 30% |
| 服务商 | 帮助开发者(业务方)进行小程序的开发者、运营的团队和公司 |
| 第三方平台 | 第三方平台(TP)是指服务商进行开发、管理、运营小程序并从此获取收益的平台;**小程序运营者,可以一键授权给第三方平台,通过第三方平台来完成业务**[第三方平台网页链接](https://open.microapp.bytedance.com/?is_new_connect=0&is_new_user=0) |
| 支付授权 | 在第三方平台开发模式中,向第三方授权管理担保支付功能。在授权时,需要配置允许其对外分配的金额上限 |
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/RE#%E5%BC%80%E5%8F%91%E8%80%85%E6%A8%A1%E5%BC%8F)开发者模式
开发者模式,是指具有支付进件资格的主体,接入担保支付后,所有的货款进入唯一的一个担保支付账户中。后续的结算不需要分账给其他第三方。
接入者需要在小程序开发者平台上完成担保支付的申请后,在平台完成小程序对应担保支付账户的进件。开发接入**支付下单,退款,结算**三个环节即可。
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/RE#%E6%9C%8D%E5%8A%A1%E5%95%86%E6%A8%A1%E5%BC%8F)服务商模式
服务商模式接入,主要是指需要有使用服务商身份进行支付开发的,以及以服务商身份对交易货款进行分账。无以上两种需求的服务商可以**按独立开发者模式接入**。
服务商首先需要入驻第三方平台后,进行**支付授权**。支付授权完成后,就可以按第三方进件中的**服务商进件**获取服务商进件页面。进件完成后,可以得到一个服务商专属的**支付秘钥**。使用该秘钥就可以进行支付开发。开发接入**支付下单,退款,结算**三个环节即可,在结算环节时可以传入参数,为自己分配授权额度以下的金额(**对外分配比例之和少于整笔交易金额的 30%**)。
当存在涉及服务商,卖家之外的额外分账方时,需要以服务商身份(必须完成服务商入驻)按第三方进件中的**第三方进件**,为每一个分账方操作进件。在结算环节时可以传入参数,为各个分账方按情况分配授权额度以下的金额(**服务商和额外分账方的分配金额之和必须少于整笔交易金额的 30%**)。
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/RE#%E8%BF%9E%E9%94%81%E9%97%A8%E5%BA%97%E6%A8%A1%E5%BC%8F)连锁门店模式
对于一些场景,同一小程序需要承接不同卖方的交易行为(**卖方获得大部分货款,受限于对外分账额度上限,不能使用分账完成分配**)。例如连锁门店的交易小程序,需要使用统一小程序承载交易,但货款由每一个门店的担保支付账户接收。
需要使用连锁门店模式的商户应向开发者平台进行申请,提供相关的资质证明及门店授权合作协议,与平台签订分账协议后方可使用该种模式下的相关功能。
# 接入流程
## [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E6%8E%A5%E5%85%A5%E5%87%86%E5%A4%87)接入准备
## [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E7%94%B3%E8%AF%B7%E5%BC%80%E9%80%9A%E6%94%AF%E4%BB%98%E8%83%BD%E5%8A%9B)申请开通支付能力
小程序在申请开通支付能力前,应在小程序【开发者平台-功能管理-支付】界面阅读并同意《担保交易功能通知》,之后方可申请开通使用。
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E8%BF%9B%E4%BB%B6)进件
**开通条件**
小程序需已通过主体认证,且完成基本信息配置。
**开通支付账号**
进入小程序开发者平台([microapp.bytedance.com](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/microapp.bytedance.com))-功能管理-支付-担保交易开通。![](https://sf3-ttcdn-tos.pstatp.com/obj/developer/docs/images/7b3b99f7-0ccd-4090-9350-fab23a39d23e-9534283300856880.png)
**资质填写**
按提示填写商户、法人信息,管理员信息、结算信息,需由支付宝、微信审核需 2-3 个工作日。
1. 商户基本信息及证件图片
* 商户类别:可选择 个人(持续从事电子商务经营活动满 6 个月且期间经营收入累计超过 20 万元。)/企业/个体工商户/小微
* 商户名称:需与证件内容一致
* 商户简称:用于支付时向买方展示
* 商户证件类型及编号:营业执照(统一社会信用代码)即三证合一之后的
* 商户证件是否为长期及有效期至
* 协议确认账号
2. 法人基本信息及证件图片
* 法人姓名:需与身份证等证件内容展示一致
* 证件类型及证件号
* 商户证件是否为长期及有效期至
3. 管理员信息
* 管理员姓名
* 管理员手机号码
* 管理员身份证号
* 管理员邮箱
4. 结算信息
* 结算卡属性:对公
* 开户银行省份、城市等
* 开户银行、开户支行
* 结算卡卡名及卡号:仅支持储蓄卡,不支持信用卡
* 银行预留手机号
* 支付宝结算类型、支付宝结算账号
**验证签约**
验证后即进入等待审核环节,审核时间预计 2-3 个工作日。![](https://sf3-ttcdn-tos.pstatp.com/obj/developer/docs/images/4-8416982615566007.png)
微信支付签约认证环节需使用管理员微信扫码进行确认。![](https://sf3-ttcdn-tos.pstatp.com/obj/developer/docs/images/5-3176958508708520.5.png)
完成后重新进入支付页面则如下显示:![](https://sf3-ttcdn-tos.pstatp.com/obj/developer/docs/images/6-7833466826907003.png)
**微信和支付宝进件成功后,用户可以通过微信和支付宝在小程序内进行支付。**
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E6%94%AF%E4%BB%98%E8%AE%BE%E7%BD%AE)支付设置
支付设置中需对该小程序的 URL、Token、SALT 进行配置。
* 商户号:小程序平台自动分配
* URL:服务端地址,必须以 https 开头,支持 443 端口
* Token:小程序平台向开发者服务端发送请求时的密钥,必须为英文或数字,长度为 3-32 个字符
* SALT:向小程序平台发送请求时的密钥
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E6%94%AF%E4%BB%98%E6%8E%88%E6%9D%83%EF%BC%88%E6%9C%8D%E5%8A%A1%E5%95%86%E6%A8%A1%E5%BC%8F%EF%BC%89)支付授权(服务商模式)
对于使用第三方平台模式开发小程序的用户。需要针对小程序担保支付,根据文档[字节小程序第三方接入文档](https://microapp.bytedance.com/docs/zh-CN/mini-app/thirdparty/overview-guide/development-process/)进行专门的支付行为授权,并且完成服务商的进件,才可以继续在第三方平台模式下接入担保支付能力。
为了便于服务商对进件与账户信息的管理。担保支付通过提供接口获取进件与账户页面 URL 方式完成进件。具体参考接口[第三方进件部分](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/YE#%E7%AC%AC%E4%B8%89%E6%96%B9%E8%BF%9B%E4%BB%B6)。
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E7%AC%AC%E4%B8%89%E6%96%B9%E8%BF%9B%E4%BB%B6%EF%BC%88%E6%9C%8D%E5%8A%A1%E5%95%86%E6%A8%A1%E5%BC%8F%EF%BC%89)第三方进件(服务商模式)
如果在业务场景中涉及小程序,服务商之外的第三方参与交易,则需要在完成服务商进件后,以服务商身份请求接口,参考第三方进件接口[](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE)为第三方获取进件页面与账户页面 URL,完成进件。
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E6%94%AF%E4%BB%98%E8%83%BD%E5%8A%9B%E6%8E%A5%E5%85%A5)支付能力接入
![](https://sf3-ttcdn-tos.pstatp.com/obj/developer/docs/images/8-42322955297093.84.png)
> 服务端接入
* 用户在商户侧通过接口完成商品的预下单
* 商户后端生成商品订单信息,并调用小程序平台后端预下单接口进行预下单
* 商户后端将预下单获取的 orderInfo 返回给商户前端
> 前端(小程序)接入
* 前端(小程序)调用 tt.pay 接口,调起小程序收银台,发起支付流程
* 前端(小程序)接收支付结果回调,进行后续业务处理
### [](https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/api/open-interface/payment/secure/TE#%E5%89%8D%E7%AB%AF%EF%BC%88%E5%B0%8F%E7%A8%8B%E5%BA%8F%EF%BC%89%E6%8E%A5%E5%85%A5)**前端(小程序)接入**
商户前端在接收到后端返回的 orderInfo 后就可以直接调用 tt.pay 拉起收银台了
1. 输入
| 属性 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| success | function | 否 | 接口调用成功的回调函数 |
| fail | function | 否 | 接口调用失败的回调函数 |
| orderInfo | object | 是 | 调起小程序支付收银台订单信息 |
| service | number | 是 | 固定值:5 |
orderInfo 属性如下:
| 属性 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| order\_id | string | 是 | 商户后端在字节跳动平台预下单获取的订单号 |
| order\_token | string | 是 | 商户后端在字节跳动平台预下单获得的订单 Token |
> orderInfo 是相对于非担保交易收银台参数变化最大的部分;在新的担保交易模式下,商户服务端在小程序平台服务端下单(参考服务端接入),获得 orderInfo,并最终透传至 tt.pay,传输链路上的字段更少。
2. 输出
success 返回参数说明
| 属性 | 类型 | 说明 |
| --- | --- | --- |
| code | number | 支付状态码:0-支付成功,1-支付超时,2-支付失败,3-支付关闭,4-支付取消,9-订单状态开发者自行获取 |
> 只要调起收银台成功,支付状态都会回调 success 返回,开发者依据返回的 code 值,进行后续业务逻辑处理
~~~js
代码示例;
~~~
~~~js
tt.pay({
service: 5,
orderInfo: {
order_id: "6819903302604491021",
order_token:
"CgsIARCABRgBIAQoARJOCkx+WgXqCUIwTel2V3siEGZ0++poigIM+SMMxtMx798Vj0ZYzoTYBqeNslodUC9X5KAOHkR1YbSBz6I6pXATh5faIGy7R72A9vwm0OczGgA=",
},
success(res) {
if (res.code === 0) {
// 支付成功处理逻辑,只有res.code=0时,才表示支付成功
// 但是最终状态要以商户后端结果为准
}
},
fail(res) {
// handle fail
},
});
~~~
- 空白目录
- 管理员端
- 删除活动源视频
- 充值记录
- 手动添加充值记录
- 删除充值记录
- 充值记录列表
- 商户端
- 巨量引擎开放平台
- 设置授权url
- 刷新refresh token
- 万花筒创意-微电影
- 万花筒创意 获取万花筒信息
- 配置巨量引擎参数
- 获取巨量引擎配置参数
- 删除活动视频源文件
- 公共
- 小程序担保支付
- 抖音小程序担保交易配置参数CUR
- 抖音小程序担保交易配置参数删除
- 抖音小程序担保支付进件配置参数CUR
- 抖音小程序担保支付进件配置参数删除
- 小程序为第三方进件
- 抖音进件列表
- 进件状态查询
- 服务端预下单
- 订单查询
- 退款
- 退款查询
- 分账请求
- 分账查询
- 担保支付账单查询
- 自主问答
- 更新自主客服表
- 获取问答列表
- 删除问答
- 文件上传
- 卡券
- 获取用户订单商户表信息
- 上传CSV手机号比对