创建支付分计划
更新时间:2023.10.13商户可以基于有按计划确认权限的服务,通过此接口创建支付分计划
# 接口说明
支持商户:
【普通服务商】
请求方式:
【POST】/v3/payscore/plan/partner/payscore-plans
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看
# 请求参数
- Authorization 必填请参考 签名认证 生成认证信息
- Accept 必填请设置为
application/json
- Content-Type 必填请设置为
application/json
Header HTTP头参数
- service_id 必填【计划所属服务】 计划所属支付分服务的ID
- appid 必填【服务商的AppID】 服务商的AppID
- sub_mchid 必填【子商户号】 计划所属子商户号
- sub_appid 选填【子商户的AppID】 子商户的AppID
- plan_name 必填【支付分计划名称】 支付分计划名称
- plan_duration 必填【支付分计划有效期(单位天)】 支付分计划有效期(单位天),不得超过服务规定的计划最大有效期
- deduction_quantity 必填【支付分计划扣费次数】 支付分计划扣费次数,和计划明细数量对应,需要和计划明细数量相等
- total_original_price 必填【支付分计划原总金额(单位分)】 支付分计划原总金额(单位分)
- total_actual_price 必填【支付分计划实际扣费总金额(单位分)】 支付分计划实际扣费总金额(单位分)
- plan_detail_list 选填【支付分计划明细列表】 支付分计划明细列表,会按照列表顺序为计划明细从1开始进行编号,使用计划明细时,必须按照编号依序使用。计划明细数量必须等于总扣费次数
- 属性
- merchant_plan_no 必填【商户侧计划号】 商户系统内部的计划单号,只能是数字、大小写字母_-* 且在同一个子商户号下唯一
Body 包体参数
请求示例
POST
# 应答参数
- plan_id 必填【支付分计划ID】 用户签约的计划所对应的支付分计划ID
- service_id 必填【计划所属服务】 计划所属服务ID
- mchid 必填【服务商商户号】 服务商商户号
- sub_mchid 必填【子商户商户号】 子商户商户号
- appid 必填【服务商AppID】 服务商AppID
- sub_appid 选填【子商户AppID】 子商户AppID
- merchant_plan_no 必填【商户侧计划号】 商户侧计划号
- plan_name 必填【支付分计划名称】 支付分计划名称
- plan_duration 必填【支付分计划有效期(单位天)】 支付分计划有效期(单位天),用户签约计划后当天起最长的有效天数
- plan_state 必填【支付分计划状态】 支付分计划状态
可选取值:NORMAL
: 计划正常进行中,可以签约STOP
: 计划停止,无法签约,已签约的计划可以继续完成服务
- total_original_price 必填【支付分计划原总金额(单位分)】 支付分计划原价总金额(单位分)
- deduction_quantity 必填【支付分计划扣费次数】 支付分计划扣费次数,对应计划明细数
- total_actual_price 必填【支付分计划实际扣费总金额(单位分)】 支付分计划实际扣费总金额(单位分)
- plan_detail_list 选填【支付分计划明细列表】 支付分计划明细列表,明细数量和扣费次数一致
- 属性
- stop_mchid 选填【终止方商户号】 操作终止计划的商户号
- stop_time 选填【终止时间】 使用 rfc3339 所定义的 date-time 格式,使用北京时间(+08:00),格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC8小时,即北京时间)。例如:2023-09-06T19:29:58+08:00表示,北京时间2023年9月6日 19点29分58秒。
200OK
应答示例
200 OK
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_REQUEST | 计划扣费次数和计划明细条数不一致 | 请确认待创建的支付分计划填写的扣费次数和计划详情数量是否一致 |
400 | INVALID_REQUEST | 前一笔实际扣费金额需大于等于后一笔实际扣费金额 | 请确认每一个计划明细的实际扣费金额必须小于等于上一个计划明细的实际扣费金额 |
400 | PARAM_ERROR | 计划明细中每一笔原扣费金额需要大于等于实际扣费金额 | 请确认每一个计划详情中的实际扣费金额必须小于等于本计划详情中的原扣费金额 |
400 | INVALID_REQUEST | 计划扣费金额和计划明细中扣费金额之和不一致 | 请核对计划的实际扣费总金额和每一个计划明细的实际扣费金和相同 |
400 | INVALID_REQUEST | 计划原扣费金额和计划明细中原扣费金额之和不一致 | 请核对计划的原扣费总金额和每一个计划明细的原扣费金和相同 |
400 | PARAM_ERROR | 总实付金额不能为0 | 请检查待创建的计划的总实付金额和原金额必须大于0 |
400 | INVALID_REQUEST | 无效的AppID,请检查AppID是否正确 | 检查填写的AppID和sub_appid是否合法 |
400 | INVALID_REQUEST | 商户和AppID未绑定 | 检查传入的AppID和调用API的商户是否有绑定关系,如果传入sub_appid,请检查调用API商户,传入子商户和sub_appid是否绑定 |
400 | INVALID_REQUEST | 子商户和发起方商户不存在受理关系 | 请检查填写的子商户号和发起API请求的商户是否绑定受理关系 |
400 | INVALID_REQUEST | 子商户未授权支付分产品权限 | 检查传入子商户是否授权调用API商户支付分产品权限 |
400 | INVALID_REQUEST | 商户暂无权限使用此服务 | 请检查调用方商户和传入子商户是否入驻了支付分服务 |
400 | INVALID_REQUEST | 此服务无按计划确认权限 | 请检查传入的支付分服务是否开通按计划确认权限 |
400 | INVALID_REQUEST | 实付金额必须小于最大风险金 | 请检查每一个计划明细的实付金额是否小于等于支付分服务规定的最大风险金 |
400 | INVALID_REQUEST | 计划的最长持续时间不能超过服务规定的计划最长时间 | 请检查待创建支付分计划的有效期是否小于等于服务规定的计划最长持续时间 |
400 | INVALID_REQUEST | 计划的最大扣费次数不能超过服务规定的最大扣费次数 | 请检查待创建支付分计划的扣费次数是否小于等于服务规定的最大扣费次数 |
400 | INVALID_REQUEST | 支付分计划单号已被使用,请检查 | 该商户侧计划号已经创建了对应支付分计划,且本次请求参数和已创建计划不一致,如需创建新的支付分计划请更换商户侧计划号重试 |
400 | INVALID_REQUEST | 请检查商户号填写是否正确 | 请检查填写的子商户号是否合法 |
400 | PARAM_ERROR | 签约计划详情序号不能重复 | 请核对签约计划对应的计划详情列表的商户侧单号信息中每一个计划明细序号不重复 |
400 | PARAM_ERROR | 商户侧计划明细使用订单号不能重复 | 请核对签约计划对应的计划详情列表的商户侧单号信息中每一个计划明细序号对应的商户侧计划明细使用订单号不重复 |
400 | INVALID_REQUEST | 发起签约的计划不存在 | 请检查传入的支付分计划号,或先创建一个支付分计划 |
403 | NOAUTH | 商户只能发起自身创建计划的签约 | 请检查待签约的计划创建商户和子商户是否是本次发起签约的商户和子商户 |
403 | NOAUTH | 服务ID和待签约计划所属服务ID不一致 | 请检查待签约的计划创建时的支付分服务和本次发起签约的支付分服务是否一致 |
400 | INVALID_REQUEST | 当前计划状态无法发起签约 | 请检查发起签约的计划状态是否为NORMAL |
400 | INVALID_REQUEST | 发起签约时填写的计划详情数量和计划不一致 | 请检查签约计划对应的计划详情列表数量和待签约计划详情数量是否一致,确保每一个计划明细都有对应的商户侧计划明细使用订单号 |
400 | INVALID_ORDER_STATE | 单据状态错误 | 确认操作是否符合流程 |
400 | INVALID_REQUEST | 请求参数符合参数格式,但不符合业务规则 | 请确认相同单号是否使用了不同的参数 |
400 | ORDER_CANCELED | 单据已取消 | 当前状态无需操作 |
400 | ORDER_DONE | 订单已完成 | 当前状态无需操作 |
429 | FREQUENCY_LIMITED | 频率超限 | 请求量不要超过接口调用频率限制 |
文档是否有帮助