最新更新時間:2020.06.02 版本說明
完結(jié)微信支付分訂單。用戶使用服務(wù)完成后,商戶可通過此接口完結(jié)訂單。
特別說明:
? 完結(jié)接口調(diào)用成功后,微信支付將自動發(fā)起免密代扣。 若扣款失敗,微信支付將自動再次發(fā)起免密代扣(按照一定頻次),直到扣成功為止。
? API參數(shù)涉及時間參數(shù)時需注意,可能由于商戶時鐘系統(tǒng)和微信支付分時鐘系統(tǒng),取當前時間存在一定誤差。可能導(dǎo)致在API調(diào)用出現(xiàn)失敗情況。因此商戶在傳入時間參數(shù)時需預(yù)留一定誤差時間
適用對象:直連商戶
請求URL:https://api.mch.weixin.qq.com/v3/payscore/serviceorder/{out_order_no}/complete
請求方式:POST
前置條件:服務(wù)訂單狀態(tài)為“進行中”且訂單狀態(tài)說明需為[USER_CONFIRM:用戶確認]
path 指該參數(shù)為路徑參數(shù)
query 指該參數(shù)需在請求URL傳參
body 指該參數(shù)需在請求JSON傳參
參數(shù)名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
商戶服務(wù)訂單號 | out_order_no | string[1,32] | 是 | path 商戶系統(tǒng)內(nèi)部服務(wù)訂單號(不是交易單號),與創(chuàng)建訂單時一致 示例值:1234323JKHDFE1243252 |
應(yīng)用ID | appid | string[1,32] | 是 | body 微信公眾平臺分配的與傳入的商戶號建立了支付綁定關(guān)系的appid,可在公眾平臺查看綁定關(guān)系,此參數(shù)需在本系統(tǒng)先進行配置。 示例值:wxd678efh567hg6787 |
服務(wù)ID | service_id | string[1,32] | 是 | body 服務(wù)訂單的主鍵,唯一定義此資源的標識 示例值:500001 |
+后付費項目 | post_payments | array | 是 | body 后付費項目列表,最多包含100條付費項目 |
+后付費商戶優(yōu)惠 | post_discounts | array | 否 | body 后付費商戶優(yōu)惠列表,最多包含30條商戶優(yōu)惠 如果傳入,用戶側(cè)則顯示此參數(shù) |
總金額 | total_amount | int64 | 是 | body 1、金額:數(shù)字,必須≥0(單位:分),只能為整數(shù),詳見支付金額。 2、總金額 =(完結(jié)付費項目1…+完結(jié)付費項目n)-(完結(jié)商戶優(yōu)惠項目1…+完結(jié)商戶優(yōu)惠項目n) 3、總金額上限   1)【評估不通過:交押金】模式:總金額≤創(chuàng)單時填寫的“訂單風險金額”   2)【評估不通過:拒絕】模式:總金額≤“每個服務(wù)ID的風險金額上限” 示例值:50000 |
+服務(wù)時間段 | time_range | object | 條件選填 | body 服務(wù)時間范圍,創(chuàng)建訂單未填寫服務(wù)結(jié)束時間,則完結(jié)的時候,服務(wù)結(jié)束時間必填 如果傳入,用戶側(cè)則顯示此參數(shù)。 |
+服務(wù)位置 | location | object | 否 | body 服務(wù)位置 如果傳入,用戶側(cè)則顯示此參數(shù)。 |
微信支付服務(wù)分賬標記 | profit_sharing | bool | 否 | body 完結(jié)訂單分賬接口標記。分賬開通流程,詳見 false:不分賬,默認:false true:分賬。 示例值:false |
訂單優(yōu)惠標記 | goods_tag | string(32) | 否 | body 訂單優(yōu)惠標記,代金券或立減金優(yōu)惠的參數(shù),說明詳見代金券或立減金優(yōu)惠 示例值:goods_tag |
{
"appid": "wxd678efh567hg6787",
"service_id": "500001",
"post_payments": [
{
"name": "就餐費用服務(wù)費",
"amount": 4000,
"description": "就餐人均100元服務(wù)費:100/小時",
"count": 1
}
],
"post_discounts":[
{
"name": "滿20減1元",
"description": "不與其他優(yōu)惠疊加",
"amount": 4000
}
],
"total_amount": 3900,
"time_range": {
"start_time": "20091225091010",
"end_time": "20091225121010"
},
"location": {
"end_location": "嗨客時尚主題展餐廳"
},
"profit_sharing": false
}
參數(shù)名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
應(yīng)用ID | appid | string[1,32] | 是 | 調(diào)用接口提交的公眾賬號ID 示例值:wxd678efh567hg6787 |
商戶號 | mchid | string[1,32] | 是 | 調(diào)用接口提交的商戶號 示例值:1230000109 |
商戶服務(wù)訂單號 | out_order_no | string[1,32] | 是 | 調(diào)用接口提交的商戶服務(wù)訂單號 示例值:1234323JKHDFE1243252 |
服務(wù)ID | service_id | string[1,32] | 是 | 調(diào)用該接口提交的服務(wù)ID 示例值:500001 |
服務(wù)信息 | service_introduction | string[1,20] | 是 | 服務(wù)信息,用于介紹本訂單所提供的服務(wù) 示例值:某某酒店 |
服務(wù)訂單狀態(tài) | state | string[1,32] | 是 | 表示當前單據(jù)狀態(tài)。 1、CREATED:商戶已創(chuàng)建服務(wù)訂單 2、DOING:服務(wù)訂單進行中 3、DONE:服務(wù)訂單完成 4、REVOKED:商戶取消服務(wù)訂單 5、EXPIRED:服務(wù)訂單已失效,"商戶已創(chuàng)建服務(wù)訂單"狀態(tài)超過30天未變動,則訂單失效 示例值:CREATED |
訂單狀態(tài)說明 | state_description | string[1,32] | 否 | 對服務(wù)訂單"進行中"狀態(tài)的附加說明 USER_CONFIRM:用戶確認 MCH_COMPLETE:商戶完結(jié) 示例值:MCH_COMPLETE |
商戶收款總金額 | total_amount | int64 | 是 | 總金額,大于等于0的數(shù)字,單位為分,只能為整數(shù),詳見支付金額。 此參數(shù)需滿足:總金額=后付費項目金額之和-后付費商戶優(yōu)惠項目金額之和,且小于等于訂單風險金額。取消訂單時,該字段必須為0。 示例值:40000 |
+后付費項目 | post_payments | array | 是 | 后付費項目列表,最多包含100條付費項目 |
+后付費商戶優(yōu)惠 | post_discounts | array | 否 | 后付費商戶優(yōu)惠,最多包含30條付費項目; 如果傳入,用戶側(cè)則顯示此參數(shù) |
+訂單風險金 | risk_fund | object | 是 | 訂單風險金信息 |
+服務(wù)時間段 | time_range | object | 否 | 服務(wù)時間范圍; 如果傳入,用戶側(cè)則顯示此參數(shù) |
+服務(wù)位置 | location | object | 否 | 服務(wù)使用信息; 如果傳入,用戶側(cè)則顯示此參數(shù) |
微信支付服務(wù)訂單號 | order_id | string[1,64] | 是 | 微信支付服務(wù)訂單號,每個微信支付服務(wù)訂單號與商戶號下對應(yīng)的商戶服務(wù)訂單號一一對應(yīng) 示例值:15646546545165651651 |
是否需要收款 | need_collection | bool | 否 | true:微信支付分代收款 false:無需微信支付分代收款 示例值:true |
{
"appid": "wxd678efh567hg6787",
"mchid": "1230000109",
"out_order_no": "1234323JKHDFE1243252",
"service_id": "500001",
"service_introduction": "某某酒店",
"state": "DOING",
"state_description": "",
"total_amount": 3900,
"post_payments": [
{
"name": "就餐費用服務(wù)費",
"amount": 1,
"description": "就餐人均100元服務(wù)費:100/小時",
"count": 1
}
],
"post_discounts": [
{
"name": "滿20減1元",
"description": "不與其他優(yōu)惠疊加",
"amount": 1
}
],
"risk_fund": {
"name": "ESTIMATE_ORDER_COST",
"amount": 4000,
"description": "就餐的預(yù)估費用"
},
"time_range": {
"start_time": "20091225091010",
"end_time": "20091225121010"
},
"location": {
"start_location": "嗨客時尚主題展餐廳",
"end_location": "嗨客時尚主題展餐廳"
},
"order_id": "15646546545165651651",
"need_collection": true
}
狀態(tài)碼 | 錯誤碼 | 描述 | 解決方案 |
---|---|---|---|
500 | SYSTEM_ERROR | 系統(tǒng)錯誤 | 5開頭的狀態(tài)碼都為系統(tǒng)問題,請使用相同參數(shù)稍后重新調(diào)用 |
400 | PARAM_ERROR | 參數(shù)錯誤 | 根據(jù)錯誤提示,傳入正確參數(shù) |
403 | NO_AUTH | 商戶信息不合法 | 登錄商戶平臺核對,傳入正確信息 |
429 | FREQUENCY_LIMITED | 頻率超限 | 請求量不要超過接口調(diào)用頻率限制 |
400 | INVALID_REQUEST | 請求參數(shù)符合參數(shù)格式,但不符合業(yè)務(wù)規(guī)則 | 請確認相同單號是否使用了不同的參數(shù) |
404 | ORDER_NOT_EXIST | 訂單不存在 | 確認入?yún)ⅲ瑐魅胝_單據(jù) |
400 | INVALID_ORDER_STATE | 單據(jù)狀態(tài)錯誤 | 確認操作是否符合流程 |
400 | ORDER_CANCELED | 單據(jù)已取消 | 當前狀態(tài)無需操作 |
400 | ORDER_DONE | 訂單已完成 | 當前狀態(tài)無需操作 |