完结支付分订单

更新时间:2024.12.09

服务完成后,商户调用本接口,通知微信支付服务已结束(collection.state参数变为USER_PAYING状态,即用户待支付状态)。

注意:

1、在接口参数中,商户需要通过post_payments字段,上传本笔订单实际的付费项目明细,不同的场景有不同的传值要求,详见:post_payments(后付费项目)字段传参说明。

2、完结后微信支付不会自动发起扣款,需要登记扣款单并调用清算机构(银联/网联)委托代扣接口进行扣款,中间不会自动失效。商户可参考开发指引做业务逻辑处理。

接口说明

支持商户:从业机构(支付机构)

请求方式:【POST】/v3/payscore/acquiringbank/serviceorder/{out_order_no}/complete

请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

     【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看

请求参数

Header HTTP头参数

Authorization  必填 string

请参考签名认证生成认证信息


Accept  必填 string

请设置为application/json


Content-Type  必填 string

请设置为application/json


path 路径参数

out_order_no  必填 string(64)

【商户服务订单号】 商户系统内部服务订单号,要求32个字符内,只能是数字、大小写字母_-|* 且在同一个商户号下唯一。


body 包体参数

service_id  必填 string(32)

【服务ID】 商户支付分服务的唯一标识,由32位数字组成。支付分产品权限审核通过后,微信支付运营会向商户提供该ID。


sub_mchid  必填 string(32)

【子商户号】从业机构下的子商户商户号,从业机构或者渠道商使用开户意愿确认接口生成。


channel_id  必填 string(32)

【渠道商商户号】 从业机构下的渠道商商户号,需要从业机构登录服务商平台操作入驻,具体参考渠道商入驻流程方法


post_payments  必填 array[Payment]

【后付费项目】 用于展示订单后付费项目明细,商户需要按照所属行业规程传参,详见post_payments(后付费项目)字段传参说明

属性

post_discounts  选填 array[ServiceOrderCoupon]

【商户优惠】 用于展示订单优惠项目明细,最多30条,完结订单时传的收款总金额需满足计算条件(收款总金额=后付费项目amount和-优惠项目amount和)

属性

total_amount  必填 integer

【总金额】 订单最终收款总金额,整型,单位为分,商户调用完结订单接口和修改订单金额接口传入,受服务ID风险金额上限影响,服务ID风险金额上限具体请与BD确认。
先免模式:total_amount<=创单risk_fund.amount(押金金额)<=服务ID风险金额上限。
先享模式:total_amount<=服务ID风险金额上限。
需满足计算条件:total_amount = 后付费项目金额(post_payments.amount总和) - 优惠项目金额(post_discounts.amount总和),例如商户后付费项目金额总和为10元,优惠项目金额总和为2元,则订单收款总金额为8元。


time_range  选填 object

【服务时间段】 用于描述订单的服务开始和结束时间。

属性

location  选填 object

【服务位置】 用于描述用户使用服务的地理位置

属性

complete_time  选填 string

【完结服务时间】 支付分订单完结时间,使用ISO 8601所定义的格式,需要晚于或等于end_time,且早于或等于调接口当前时间。
格式示例:
YYYY-MM-DDTHH:mm:ss.SSSZ
YYYY-MM-DDTHH:mm:ssZ
YYYY-MM-DDTHH:mm:ss.SSS+08:00
YYYY-MM-DDTHH:mm:ss+08:00

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/payscore/acquiringbank/serviceorder/1234323JKHDFE1243252/complete \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Content-Type: application/json" \
6  -d '{
7    "service_id" : "2002000000000558128851361561536",
8    "sub_mchid" : "1900000109",
9    "channel_id" : "1230000109",
10    "post_payments" : [
11      {
12        "name" : "就餐费用",
13        "amount" : 40000,
14        "description" : "就餐人均100元",
15        "count" : 4
16      }
17    ],
18    "post_discounts" : [
19      {
20        "name" : "满20减1元",
21        "description" : "不与其他优惠叠加",
22        "amount" : 100,
23        "count" : 2
24      }
25    ],
26    "total_amount" : 50000,
27    "time_range" : {
28      "start_time" : "20091225091010",
29      "end_time" : "20091225121010",
30      "start_time_remark" : "备注1",
31      "end_time_remark" : "备注2"
32    },
33    "location" : {
34      "start_location" : "嗨客时尚主题展餐厅",
35      "end_location" : "嗨客时尚主题展餐厅"
36    },
37    "complete_time" : "2019-11-11T16:24:05+08:00"
38  }'
39

应答参数

无应答包体

应答示例

204 No Content

1无应答包体

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

请根据错误提示正确传入参数

400

INVALID_REQUEST

HTTP 请求不符合微信支付 APIv3 接口规则

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

400

INVALID_ORDER_STATE

单据状态错误

确认操作是否符合流程

400

INVALID_REQUEST

请求参数符合参数格式,但不符合业务规则

请确认相同单号是否使用了不同的参数

400

ORDER_CANCELED

单据已取消

当前状态无需操作

400

ORDER_DONE

订单已完成

当前状态无需操作

403

NO_AUTH

商户信息不合法

登录服务商平台核对,传入正确信息

404

ORDER_NOT_EXIST

订单不存在

确认入参,传入正确单据

429

FREQUENCY_LIMITED

频率超限

请求量不要超过接口调用频率限制

500

SYSTEM_ERROR

系统错误

5开头的状态码都为系统问题,请使用相同参数稍后重新调用

 

 

反馈
咨询
目录
置顶