當商戶創(chuàng)建支付分訂單成功后,可以通過該接口查詢訂單狀態(tài),可參考支付分訂單狀態(tài)流轉(zhuǎn)圖做業(yè)務(wù)邏輯處理。
# 接口說明
支持商戶:
【普通商戶】
請求方式:
【GET】/v3/payscore/serviceorder
請求域名:
【主域名】
https://api.mch.weixin.qq.com
使用該域名將訪問就近的接入點【備域名】
https://api2.mch.weixin.qq.com
使用該域名將訪問異地的接入點 ,指引點擊查看
# 請求參數(shù)
- Authorization 必填 string請參考 簽名認證 生成認證信息
- Accept 必填 string請設(shè)置為
application/json
Header HTTP頭參數(shù)
- out_order_no 選填 string(32)【商戶服務(wù)訂單號】 商戶系統(tǒng)內(nèi)部服務(wù)訂單號,商戶在創(chuàng)建支付分接口中填入的out_order_no參數(shù),調(diào)用支付分查單接口時out_order_no字段和query_id字段必填一個(不允許都填寫或都不填寫)。
- service_id 必填 string(32)【服務(wù)ID】 商戶支付分服務(wù)的唯一標識,由32位數(shù)字組成。支付分產(chǎn)品權(quán)限審核通過后,微信支付運營會向商戶提供該ID。
- appid 必填 string(32)【公眾號id】 是微信開放平臺和微信公眾平臺為開發(fā)者的應(yīng)用程序(APP、小程序、公眾號)提供的一個唯一標識。 開發(fā)者需要先在微信開放平臺或微信公眾平臺中申請ID,然后在商戶平臺中綁定,詳見直連商戶與AppID賬號關(guān)聯(lián)管理
。完結(jié)訂單和取消訂單需要和創(chuàng)單傳入的appid保持一致。 - query_id 選填 string(512)【查單ID】 支付分前端側(cè)回跳到商戶前端時會返回查單ID商戶拉起支付分小程序確認訂單頁后,用戶回到商戶前端時會返回query_id參數(shù),具體獲取方式參考調(diào)起支付分小程序確認訂單。調(diào)用支付分查單接口時out_order_no字段和query_id字段必填一個(不允許都填寫或都不填寫)。
Query 查詢參數(shù)
請求示例
GET
# 應(yīng)答參數(shù)
- out_order_no 必填 string(32)【商戶服務(wù)訂單號】 商戶系統(tǒng)內(nèi)部服務(wù)訂單號,商戶在創(chuàng)建支付分接口中填入的out_order_no參數(shù),調(diào)用支付分查單接口時out_order_no字段和query_id字段必填一個(不允許都填寫或都不填寫)。
- service_id 必填 string(32)【服務(wù)ID】 商戶支付分服務(wù)的唯一標識,由32位數(shù)字組成。支付分產(chǎn)品權(quán)限審核通過后,微信支付運營會向商戶提供該ID。
- appid 必填 string(32)【服務(wù)商公眾號ID】 是微信開放平臺和微信公眾平臺為開發(fā)者的應(yīng)用程序(APP、小程序、公眾號)提供的一個唯一標識。 開發(fā)者需要先在微信開放平臺或微信公眾平臺中申請ID,然后在商戶平臺中綁定,詳見直連商戶與AppID賬號關(guān)聯(lián)管理
。完結(jié)訂單和取消訂單需要和創(chuàng)單傳入的appid保持一致。 - mchid 必填 string(32)【服務(wù)商商戶號】 調(diào)用支付分創(chuàng)單接口提交的商戶號,商戶號需開通支付分產(chǎn)品權(quán)限,且與appid有綁定關(guān)系,詳見直連商戶與AppID賬號關(guān)聯(lián)管理
。 - service_introduction 必填 string(20)【服務(wù)信息】 用于介紹本訂單所提供的服務(wù) ,長度不能超過20個字符(漢字、數(shù)字、字母、特殊符號都按照1個字符計算)。
- state 必填 string(32)【服務(wù)訂單狀態(tài)】 表示支付分訂單狀態(tài)
CREATED:商戶已創(chuàng)建服務(wù)訂單
DOING:服務(wù)訂單進行中
DONE:服務(wù)訂單完成(終態(tài))
REVOKED:商戶取消服務(wù)訂單(終態(tài))
EXPIRED:服務(wù)訂單已失效,"商戶已創(chuàng)建服務(wù)訂單"狀態(tài)超過30天未變動,則訂單失效(終態(tài))
該狀態(tài)需結(jié)合collection.state字段和state_description字段一起判斷,具體可參考支付分訂單狀態(tài)流轉(zhuǎn)圖。 - state_description 選填 string(32)【訂單狀態(tài)說明】 此參數(shù)用于對服務(wù)訂單處于DOING狀態(tài)時的附加說明,非DOIING狀態(tài)將不會返回該參數(shù)。具體狀態(tài)如下:
USER_CONFIRM:用戶已確認狀態(tài),表示用戶成功確認訂單后所處狀態(tài)。
MCH_COMPLETE:商戶已完結(jié)狀態(tài),指商戶調(diào)用完結(jié)接口成功后至扣款成功前的狀態(tài)。
該狀態(tài)需結(jié)合collection.state字段和state字段一起判斷,具體可參考支付分訂單狀態(tài)流轉(zhuǎn)圖。 - post_payments 選填 array[Payment]【后付費項目】 用于展示訂單后付費項目明細,商戶需要按照所屬行業(yè)規(guī)程傳參,詳見post_payments(后付費項目)字段傳參說明
- 屬性
- post_discounts 選填 array[ServiceOrderCoupon]【商戶優(yōu)惠】 用于展示訂單優(yōu)惠項目明細,最多30條,完結(jié)訂單時傳的收款總金額需滿足計算條件(收款總金額=后付費項目amount和-優(yōu)惠項目amount和)
- 屬性
- risk_fund 選填 RiskFund【服務(wù)風險金】 本筆訂單的風險金額描述
- 屬性
- total_amount 選填 integer【總金額】 訂單最終收款總金額,整型,單位為分,商戶調(diào)用完結(jié)訂單接口和修改訂單金額接口傳入,受服務(wù)ID風險金額上限影響,服務(wù)ID風險金額上限具體請與BD確認。
先免模式:total_amount<=創(chuàng)單risk_fund.amount(押金金額)<=服務(wù)ID風險金額上限。
先享模式:total_amount<=服務(wù)ID風險金額上限。
需滿足計算條件:total_amount = 后付費項目金額(post_payments.amount總和) - 優(yōu)惠項目金額(post_discounts.amount總和),例如商戶后付費項目金額總和為10元,優(yōu)惠項目金額總和為2元,則訂單收款總金額為8元。 - need_collection 選填 boolean【是否需要收款】 訂單是否需要收款,固定返回true需收款。
- collection 選填 Collection【收款信息】 訂單收款信息,僅在調(diào)用完結(jié)訂單后返回(若完結(jié)訂單 total_amount 等于 0 元,則不返回此字段)。
- 屬性
- time_range 選填 TimeRange【服務(wù)時間】 用于描述訂單的服務(wù)開始和結(jié)束時間。
- 屬性
- location 選填 Location【服務(wù)位置】 服務(wù)使用的開始位置和結(jié)束位置
- 屬性
- attach 選填 string(256)【附加數(shù)據(jù)】 商戶在創(chuàng)建訂單時傳入的自定義數(shù)據(jù)包,用戶不可見。用于存放訂單的商戶自定義數(shù)據(jù),需要先進行urlencode編碼,總長度不超過256字符。確認訂單回調(diào)和支付成功回調(diào)時會回傳該字段給商戶。
- notify_url 必填 string(256)
- openid 選填 string(128)【服務(wù)商公眾號下的用戶標識】 用戶在商戶對應(yīng)appid下的唯一標識。
- order_id 選填 string(64)【微信支付服務(wù)訂單號】 支付分訂單在微信側(cè)的唯一標識,31位數(shù)字,開頭由1000000000+年月日組成。
200OK
應(yīng)答示例
200 OK
# 錯誤碼
# 公共錯誤碼
狀態(tài)碼 | 錯誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | PARAM_ERROR | 參數(shù)錯誤 | 請根據(jù)錯誤提示正確傳入?yún)?shù) |
400 | INVALID_REQUEST | HTTP 請求不符合微信支付 APIv3 接口規(guī)則 | 請參閱 接口規(guī)則 |
401 | SIGN_ERROR | 驗證不通過 | 請參閱 簽名常見問題 |
500 | SYSTEM_ERROR | 系統(tǒng)異常,請稍后重試 | 請稍后重試 |
# 業(yè)務(wù)錯誤碼
狀態(tài)碼 | 錯誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | INVALID_ORDER_STATE | 單據(jù)狀態(tài)錯誤 | 確認操作是否符合流程 |
400 | INVALID_REQUEST | 請求參數(shù)符合參數(shù)格式,但不符合業(yè)務(wù)規(guī)則 | 請確認相同單號是否使用了不同的參數(shù) |
400 | ORDER_CANCELED | 單據(jù)已取消 | 當前狀態(tài)無需操作 |
400 | ORDER_DONE | 訂單已完成 | 當前狀態(tài)無需操作 |
403 | NO_AUTH | 商戶信息不合法 | 登錄商戶平臺核對,傳入正確信息 |
404 | ORDER_NOT_ EXIST | 訂單不存在 | 確認入?yún)ⅲ瑐魅胝_單據(jù) |
429 | FREQUENCY_LIMITED | 頻率超限 | 請求量不要超過接口調(diào)用頻率限制 |
500 | SYSTEM_ERROR | 系統(tǒng)錯誤 | 5開頭的狀態(tài)碼都為系統(tǒng)問題,請使用相同參數(shù)稍后重新調(diào)用 |