# 发起订阅扣款
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南。
接口英文名:submit_subscribe_pay_order
本接口用于发起订阅扣款
受理后扣款,返回成功仅代表受理成功,不代表扣款成功。扣款成功后再通过xpay_goods_deliver_notify通知
如受理成功后,通知/查询到扣款失败,可在【t日~t+6日】发起重试,同一用户、同一道具,一个小时内仅可以重试一次。
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/xpay/submit_subscribe_pay_order?access_token=ACCESS_TOKEN
# 云调用
- 本接口不支持云调用。
# 第三方调用
本接口支持第三方平台代商家调用。
该接口所属的权限集 id 为:157
服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。
# 2. 请求参数
# 查询参数 Query String Parameters
| 参数名 | 类型 | 必填 | 示例 | 说明 |
|---|---|---|---|---|
| access_token | string | 是 | ACCESS_TOKEN | 接口调用凭证,可使用 access_token、authorizer_access_token |
# 请求体 Request Payload
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| openid | string | 是 | 用户的openid |
| offer_id | string | 是 | 在米大师侧申请的应用 id, mp-支付基础配置中的offerid |
| buy_quantity | number | 是 | 购买数量,填:1 |
| env | number | 否 | 环境配置, 0 米大师正式环境, 1 米大师沙箱环境, 默认为 0 |
| currency_type | string | 是 | 币种,填:CNY |
| product_id | string | 是 | 订阅道具ID |
| deduct_price | number | 是 | 扣款金额(分), 属于 [1,道具价格] |
| order_id | string | 是 | 业务订单号, 每个订单号只能使用一次, 重复使用会失败(不建议业务强依赖平台对这里的唯一性校验),要求8-32个字符内, 只能是数字、大小写字母、符号 _-\ |
| attach | string | 是 | 透传数据, 发货通知时会透传给开发者 |
# 3. 返回参数
# 返回体 Response Payload
| 参数名 | 类型 | 说明 |
|---|---|---|
| errcode | number | 错误码 |
| errmsg | string | 错误信息 |
# 4. 注意事项
本接口无特殊注意事项
# 5. 代码示例
本接口无代码示例
# 6. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。
| 错误码 | 错误描述 |
|---|---|
| -15027 | 扣款价格不合法 |
| -15026 | 扣款时间不合法 |
| -15025 | 不存在预通知单/重复下单 |
| -15021 | 小程序被限频交易 |
| -15020 | 操作过快,请稍候再试 |
| -15019 | 调微信报商户受限,商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15018 | 代币或者道具productId审核不通过 |
| -15017 | 此商家涉嫌违规,收款功能已被限制,暂无法支付。商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15016 | signData格式有问题 |
| -15014 | 道具/代币发布未生效,禁止下单,大概10分钟后生效 |
| -15013 | goodsPrice道具价格错误 |
| -15012 | 调用米大师失败导致关单,请换新单号重试 |
| -15011 | 现网版本的env只能是0,不能填1(沙盒环境) |
| -15010 | 道具productId未发布 |
| -15009 | 代币未发布 |
| -15008 | 二级商户进件未完成 |
| -15007 | session_key过期 |
| -15006 | 支付签名paySig错误 |
| -15005 | 用户态签名signature错误 |
| -15004 | currencyType错误,目前只能填CNY |
| -15003 | 系统错误 |
| -15002 | outTradeNo重复使用,请换新单号重试 |
| -15001 | 参数错误,具体原因见err_msg |
| 1001 | 参数错误 |
# 7. 适用范围
本接口暂未明确可调用账号类型,或在业务中根据调用传参自行确定是否可调用,请以实际调用情况为准。