最新更新時(shí)間:2020.04.23 版本說(shuō)明
該接口適用于無(wú)需微信支付分做訂單風(fēng)控判斷的業(yè)務(wù)場(chǎng)景,在服務(wù)完成后,通過(guò)該接口對(duì)用戶進(jìn)行免密代扣。
? 限制條件:【免確認(rèn)訂單模式】,用戶已授權(quán)狀態(tài)下,可調(diào)用該接口。
特別提醒:創(chuàng)單結(jié)單合并接口暫未對(duì)外開放,如有需要請(qǐng)咨詢對(duì)接的微信支付運(yùn)營(yíng)人員,申請(qǐng)開通調(diào)用權(quán)限。
適用對(duì)象:直連商戶
請(qǐng)求URL:https://api.mch.weixin.qq.com/payscore/serviceorder/direct-complete
請(qǐng)求方式:POST
接口規(guī)則:http://www.tg885.com/wiki/doc/apiv3/wechatpay/wechatpay-1.shtml
path 指該參數(shù)為路徑參數(shù)
query 指該參數(shù)需在請(qǐng)求URL傳參
body 指該參數(shù)需在請(qǐng)求JSON傳參
參數(shù)名 | 變量 | 類型[長(zhǎng)度限制] | 必填 | 描述 |
---|---|---|---|---|
商戶服務(wù)訂單號(hào) | out_order_no | string[1,32] | 是 | body
商戶系統(tǒng)內(nèi)部服務(wù)訂單號(hào)(不是交易單號(hào)),要求此參數(shù)只能由數(shù)字、大小寫字母_-|*組成,且在同一個(gè)商戶號(hào)下唯一。詳見[商戶訂單號(hào)]。 示例值:1234323JKHDFE1243252 |
公眾賬號(hào)ID | appid | string[1,32] | 是 | body
微信公眾平臺(tái)分配的與傳入的商戶號(hào)建立了支付綁定關(guān)系的appid,可在公眾平臺(tái)查看綁定關(guān)系,此參數(shù)需在本系統(tǒng)先進(jìn)行配置。 示例值:wxd678efh567hg6787 |
用戶標(biāo)識(shí) | openid | string[1,128] | 是 | body 微信用戶在商戶對(duì)應(yīng)appid下的唯一標(biāo)識(shí)。 示例值:oUpF8uMuAJO_M2pxb1Q9zNjWeS6o |
服務(wù)ID | service_id | string[1,32] | 是 | body 該服務(wù)ID有本接口對(duì)應(yīng)產(chǎn)品的權(quán)限。 示例值:500001 |
服務(wù)信息 | service_introduction | string[1,20] | 是 | body
服務(wù)信息,用于介紹本訂單所提供的服務(wù) ,當(dāng)參數(shù)長(zhǎng)度超過(guò)20個(gè)字符時(shí),報(bào)錯(cuò)處理。
示例值:某某酒店 |
+付費(fèi)項(xiàng)目 | post_payments | array | 是 | body 付費(fèi)項(xiàng)目列表,最多包含100條付費(fèi)項(xiàng)目。 |
+商戶優(yōu)惠 | post_discounts | array | 否 | body 付費(fèi)商戶優(yōu)惠列表,最多包含30條商戶優(yōu)惠。 |
+服務(wù)時(shí)間段 | time_range | object | 是 | body 服務(wù)時(shí)間范圍 |
+服務(wù)位置 | location | object | 否 | body 服務(wù)位置信息 如果傳入,用戶側(cè)則顯示此參數(shù)。 |
總金額 | total_amount | uint64 | 是 | 1、金額:數(shù)字,必須≥0(單位:分) 2、總金額 =(完結(jié)付費(fèi)項(xiàng)目1…+完結(jié)付費(fèi)項(xiàng)目n)-(完結(jié)商戶優(yōu)惠項(xiàng)目1…+完結(jié)商戶優(yōu)惠項(xiàng)目n) 3、總金額上限:總金額≤“服務(wù)風(fēng)險(xiǎn)金額” 示例值:50000 |
微信支付服務(wù)分賬標(biāo)記 | profit_sharing | bool | 否 | 分賬標(biāo)記,默認(rèn)為false,枚舉值: false:不分賬 true:分賬 示例值:false |
訂單優(yōu)惠標(biāo)記 | goods_tag | string(32) | 否 | 訂單優(yōu)惠標(biāo)記,詳見《代金券或立減金優(yōu)惠》參數(shù)。 示例值:goods_tag1 |
商戶數(shù)據(jù)包 | attach | string[1,256] | 否 | body 商戶數(shù)據(jù)包可存放本訂單所需信息,需要先urlencode后傳入。
當(dāng)商戶數(shù)據(jù)包總長(zhǎng)度超出256字符時(shí),報(bào)錯(cuò)處理。 示例值:Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald |
商戶回調(diào)地址 | notify_url | string[1,255] | 否 | body 商戶接收扣款成功回調(diào)通知的地址,服務(wù)需要收款時(shí)此參數(shù)必填;服務(wù)無(wú)需收款時(shí)此參數(shù)不填。 示例值:https://api.test.com |
{
??"post_payments"?:?[?{
????"amount"?:?40000,
????"name"?:?"就餐費(fèi)用服務(wù)費(fèi)",
????"count"?:?4,
????"description"?:?"就餐人均100元服務(wù)費(fèi):100/小時(shí)"
??},?{
????"amount"?:?2000,
????"name"?:?"就餐費(fèi)用服務(wù)費(fèi)",
????"count"?:?1,
????"description"?:?"就餐人均100元服務(wù)費(fèi):100/小時(shí)"
??}?],
???"service_introduction"?:?"某某酒店",
??"openid"?:?"oUpF8uMuAJO_M2pxb1Q9zNjWeS6o",
??"profit_sharing"?:?false,
??"out_order_no"?:?"1234323JKHDFE1243252",
??"notify_url"?:?"https://api.test.com",
??"time_range"?:?{
????"start_time"?:?"20091225091010",
????"end_time_remark"?:?"備注2",
????"end_time"?:?"20091225121010",
????"start_time_remark"?:?"備注1"
??},
??"total_amount"?:?50000,
??"goods_tag"?:?"goods_tag1",
??"service_id"?:?"500001",
??"appid"?:?"wxd678efh567hg6787",
??"location"?:?{
????"start_location"?:?"嗨客時(shí)尚主題展餐廳",
????"end_location"?:?"嗨客時(shí)尚主題展餐廳"
??},
??"attach"?:?"Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald",
??"post_discounts"?:?[?{
????"amount"?:?100,
????"name"?:?"滿20減1元",
????"count"?:?2,
????"description"?:?"不與其他優(yōu)惠疊加"
??},?{
????"amount"?:?100,
????"name"?:?"滿20減1元",
????"count"?:?2,
????"description"?:?"不與其他優(yōu)惠疊加"
??}?]
}
參數(shù)名 | 變量 | 類型[長(zhǎng)度限制] | 必填 | 描述 |
---|---|---|---|---|
公眾賬號(hào)ID | appid | string[1,32] | 是 | 調(diào)用接口提交的公眾賬號(hào)ID。 示例值:wxd678efh567hg6787 |
商戶號(hào) | mchid | string[1,32] | 是 | 調(diào)用接口提交的商戶號(hào)。 示例值:1230000109 |
商戶服務(wù)訂單號(hào) | out_order_no | string[1,32] | 是 | 調(diào)用接口提交的商戶服務(wù)訂單號(hào)。 示例值:1234323JKHDFE1243252 |
服務(wù)ID | service_id | string[1,32] | 是 | 調(diào)用該接口提交的服務(wù)ID。 示例值:500001 |
微信支付服務(wù)訂單號(hào) | order_id | string(128) | 是 | 微信支付服務(wù)訂單號(hào),每個(gè)微信支付服務(wù)訂單號(hào)與商戶號(hào)下對(duì)應(yīng)的商戶服務(wù)訂單號(hào)一一對(duì)應(yīng)。 示例值:15646546545165651651 |
服務(wù)信息 | service_introduction | string[1,20] | 是 | 服務(wù)信息,用于介紹本訂單所提供的服務(wù)。 示例值:某某酒店 |
服務(wù)訂單狀態(tài) | state | string[1,32] | 是 | 表示當(dāng)前單據(jù)狀態(tài)。 枚舉值: |
訂單狀態(tài)說(shuō)明 | state_description | string (32) | 否 | 對(duì)服務(wù)訂單"進(jìn)行中"狀態(tài)的附加說(shuō)明。 1、MCH_COMPLETE:商戶完結(jié) 示例值:MCH_COMPLETE |
+付費(fèi)項(xiàng)目 | post_payments | array | 是 | 付費(fèi)項(xiàng)目列表,最多包含100條付費(fèi)項(xiàng)目。 |
+付費(fèi)商戶優(yōu)惠 | post_discounts | array | 否 | 付費(fèi)商戶優(yōu)惠,最多包含30條付費(fèi)項(xiàng)目。 如果傳入,用戶側(cè)則顯示此參數(shù)。 |
+服務(wù)時(shí)間段 | time_range | object | 是 | 服務(wù)時(shí)間范圍 |
+服務(wù)位置 | location | object | 否 | 服務(wù)使用信息。 如果傳入,用戶側(cè)則顯示此參數(shù)。 |
商戶數(shù)據(jù)包 | attach | string[1,256] | 否 | 商戶數(shù)據(jù)包,可存放本訂單所需信息,需要先urlencode后傳入,總長(zhǎng)度不大于256字符,超出報(bào)錯(cuò)處理。 示例值:Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald |
商戶回調(diào)地址 | notify_url | string[1,255] | 否 | 商戶接收扣款成功回調(diào)通知的地址。 示例值:https://api.test.com |
總金額 | total_amount | uint64 | 是 | 1、金額:數(shù)字,必須≥0(單位:分) 2、總金額 =(完結(jié)付費(fèi)項(xiàng)目1…+完結(jié)付費(fèi)項(xiàng)目n)-(完結(jié)商戶優(yōu)惠項(xiàng)目1…+完結(jié)商戶優(yōu)惠項(xiàng)目n) 示例值:50000 |
{
??"post_payments"?:?[?{
????"amount"?:?40000,
????"name"?:?"就餐費(fèi)用服務(wù)費(fèi)",
????"count"?:?4,
????"description"?:?"就餐人均100元服務(wù)費(fèi):100/小時(shí)"
??},?{
????"amount"?:?2000,
????"name"?:?"就餐費(fèi)用服務(wù)費(fèi)",
????"count"?:?1,
????"description"?:?"就餐人均100元服務(wù)費(fèi):100/小時(shí)"
??}?],
??"mchid"?:?"1230000109",
??"service_introduction"?:?"某某酒店",
??"notify_url"?:?"https://api.test.com",
??"state_description"?:?"MCH_COMPLETE",
"out_order_no"?:?"1234323JKHDFE1243252",
??"time_range"?:?{
????"start_time"?:?"20091225091010",
????"end_time_remark"?:?"備注2",
????"end_time"?:?"20091225121010",
????"start_time_remark"?:?"備注1"
??},
??"total_amount"?:?50000,
??"service_id"?:?"500001",
??"appid"?:?"wxd678efh567hg6787",
??"location"?:?{
????"start_location"?:?"嗨客時(shí)尚主題展餐廳",
????"end_location"?:?"嗨客時(shí)尚主題展餐廳"
??},
??"state"?:?"FINISHED",
??"attach"?:?"Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald",
??"order_id"?:?"15646546545165651651",
??"post_discounts"?:?[?{
????"amount"?:?100,
????"name"?:?"滿20減1元",
????"count"?:?2,
????"description"?:?"不與其他優(yōu)惠疊加"
??},?{
????"amount"?:?100,
????"name"?:?"滿20減1元",
????"count"?:?2,
????"description"?:?"不與其他優(yōu)惠疊加"
??}?]
}
狀態(tài)碼 | 錯(cuò)誤碼 | 描述 | 解決方案 |
---|---|---|---|
500 | SYSTEM_ERROR | 系統(tǒng)錯(cuò)誤 | 5開頭的狀態(tài)碼都為系統(tǒng)問題,請(qǐng)使用相同參數(shù)稍后重新調(diào)用 |
400 | PARAM_ERROR | 參數(shù)錯(cuò)誤 | 根據(jù)錯(cuò)誤提示,傳入正確參數(shù) |
403 | NO_AUTH | 商戶信息不合法 | 登錄商戶平臺(tái)核對(duì),傳入正確信息 |
429 | FREQUENCY_LIMITED | 頻率超限 | 請(qǐng)求量不要超過(guò)接口調(diào)用頻率限制 |
400 | INVALID_REQUEST | 請(qǐng)求參數(shù)符合參數(shù)格式,但不符合業(yè)務(wù)規(guī)則 | 請(qǐng)確認(rèn)相同單號(hào)是否使用了不同的參數(shù) |
404 | ORDER_NOT_ EXIST | 訂單不存在 | 確認(rèn)入?yún)ⅲ瑐魅胝_單據(jù) |
400 | INVALID_ORDER_STATE | 單據(jù)狀態(tài)錯(cuò)誤 | 確認(rèn)操作是否符合流程 |
400 | ORDER_CANCELED | 單據(jù)已取消 | 當(dāng)前狀態(tài)無(wú)需操作 |
400 | ORDER_DONE | 訂單已完成 | 當(dāng)前狀態(tài)無(wú)需操作 |