適用對象:直連商戶
請求URL:https://api.mch.weixin.qq.com/v3/payscore/serviceorder
請求方式:GET
前置條件:商戶下單已受理后
path 指該參數(shù)為路徑參數(shù)
query 指該參數(shù)需在請求URL傳參
body 指該參數(shù)需在請求JSON傳參
參數(shù)名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
商戶服務(wù)訂單號(hào) | out_order_no | string[1,32] | 二選一 | query 商戶系統(tǒng)內(nèi)部服務(wù)訂單號(hào)(不是交易單號(hào)),與創(chuàng)建訂單時(shí)一致 示例值:1234323JKHDFE1243252 |
回跳查詢ID | query_id | string[1,64] | query 微信側(cè)回跳到商戶前端時(shí)用于查單的單據(jù)查詢id。詳見章節(jié)“小程序跳轉(zhuǎn)接口,回跳商戶接口”。 商戶單號(hào)與回跳查詢id必填其中一個(gè).不允許都填寫或都不填寫。 示例值:15646546545165651651 |
|
服務(wù)ID | service_id | string[1,32] | 是 | query 該服務(wù)ID有本接口對應(yīng)產(chǎn)品的權(quán)限 示例值:500001 |
應(yīng)用ID | appid | string[1,32] | 是 | query 微信公眾平臺(tái)分配的與傳入的商戶號(hào)建立了支付綁定關(guān)系的appid,可在公眾平臺(tái)查看綁定關(guān)系,此參數(shù)需在本系統(tǒng)先進(jìn)行配置。 示例值:wxd678efh567hg6787 |
https://api.mch.weixin.qq.com/v3/payscore/serviceorder?service_id=500001&out_order_no=8416518464133&appid=wxd678efh567hg6787
參數(shù)名 | 變量 | 類型[長度限制] | 必填 | 描述 |
---|---|---|---|---|
應(yīng)用ID | appid | string[1,32] | 是 | 調(diào)用接口提交的公眾賬號(hào)ID 示例值:wxd678efh567hg6787 |
商戶號(hào) | mchid | string[1,32] | 是 | 調(diào)用接口提交的商戶號(hào) 示例值:1230000109 |
服務(wù)ID | service_id | string[1,32] | 是 | 調(diào)用該接口提交的服務(wù)ID 示例值:500001 |
商戶服務(wù)訂單號(hào) | out_order_no | string[1,32] | 是 | 調(diào)用接口提交的商戶服務(wù)訂單號(hào) 示例值:1234323JKHDFE1243252 |
服務(wù)信息 | service_introduction | string[1,20] | 是 | 服務(wù)信息用于介紹本訂單所提供的服務(wù),當(dāng)參數(shù)長度超過20個(gè)字符時(shí),報(bào)錯(cuò)處理。 示例值:某某酒店 |
服務(wù)訂單狀態(tài) | state | string[1,32] | 是 | 表示當(dāng)前單據(jù)狀態(tài) 枚舉值: CREATED:商戶已創(chuàng)建服務(wù)訂單; DOING:服務(wù)訂單進(jìn)行中; DONE:服務(wù)訂單完成; REVOKED:商戶取消服務(wù)訂單;? EXPIRED:服務(wù)訂單已失效,"商戶已創(chuàng)建服務(wù)訂單"狀態(tài)超過30天未變動(dòng),則訂單失效 示例值:CREATED |
訂單狀態(tài)說明 | state_description | string[1,32] | 否 | 對服務(wù)訂單"進(jìn)行中"狀態(tài)的附加說明: USER_CONFIRM:用戶確認(rèn) MCH_COMPLETE:商戶完結(jié) 示例值:MCH_COMPLETE |
商戶收款總金額 | total_amount | int64 | 否 | 總金額,大于等于0的數(shù)字,單位為分,只能為整數(shù),詳見支付金額。 此參數(shù)需滿足:總金額=后付費(fèi)項(xiàng)目金額之和-后付費(fèi)商戶優(yōu)惠項(xiàng)目金額之和,且小于等于訂單風(fēng)險(xiǎn)金額。取消訂單時(shí),該字段必須為0。 示例值:40000 |
+后付費(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)目 |
+訂單風(fēng)險(xiǎn)金 | risk_fund | object |
否 | 訂單風(fēng)險(xiǎn)金信息 |
+服務(wù)時(shí)間段 | time_range | object |
否 | 服務(wù)時(shí)間范圍 |
+服務(wù)位置 | location | object |
否 | 服務(wù)使用信息 |
商戶數(shù)據(jù)包 | attach | string[1,256] | 否 | 商戶數(shù)據(jù)包可存放本訂單所需信息,需要先urlencode后傳入。 當(dāng)商戶數(shù)據(jù)包總長度超出256字符時(shí),報(bào)錯(cuò)處理。商戶接收回包是根據(jù)場景,決定是否需要做安全過濾(XSS/CSRF)。 示例值:Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald |
商戶回調(diào)地址 | notify_url | string[1,255] | 是 | 商戶接收用戶確認(rèn)訂單和扣款成功回調(diào)通知的地址 示例值:https://api.test.com |
微信支付服務(wù)訂單號(hào) | order_id | string[1,64] | 是 | 微信支付服務(wù)訂單號(hào),每個(gè)微信支付服務(wù)訂單號(hào)與商戶號(hào)下對應(yīng)的商戶服務(wù)訂單號(hào)一一對應(yīng) 示例值:15646546545165651651 |
是否需要收款 | need_collection | bool | 條件選填 | 是否需要收款,非0元完結(jié)后返回 true:微信支付分代收款 false:無需微信支付分代收款 示例值:true |
+收款信息 | collection | object | 條件選填 | 收款信息,非0元完結(jié)后返回 |
用戶標(biāo)識(shí) | openid | string[1,128] | 否 | 微信用戶在商戶對應(yīng)appid下的唯一標(biāo)識(shí) 示例值:oUpF8uMuAJO_M2pxb1Q9zNjWeS6o |
{
"appid": "wxd678efh567hg6787",
"mchid": "1230000109",
"service_id": "500001",
"out_order_no": "1234323JKHDFE1243252",
"service_introduction": "某某酒店",
"state": "DOING",
"state_description": "MCH_COMPLETE",
"total_amount": 3900,
"post_payments": [
{
"name": "就餐費(fèi)用服務(wù)費(fèi)",
"amount": 4000,
"description": "就餐人均100元服務(wù)費(fèi):100/小時(shí)",
"count": 1
}
],
"post_discounts": [
{
"name": "滿20減1元",
"description": "不與其他優(yōu)惠疊加",
"amount": 100
}
],
"risk_fund": {
"name": "ESTIMATE_ORDER_COST",
"amount": 10000,
"description": "就餐的預(yù)估費(fèi)用"
},
"time_range": {
"start_time": "20091225091010",
"end_time": "20091225121010"
},
"location": {
"start_location": "嗨客時(shí)尚主題展餐廳",
"end_location": "嗨客時(shí)尚主題展餐廳"
},
"attach": "Easdfowealsdkjfnlaksjdlfkwqoi&wl3l2sald",
"notify_url": "https://api.test.com",
"order_id": "15646546545165651651",
"need_collection": true,
"collection": {
"state": "USER_PAID",
"total_amount": 3900,
"paying_amount": 3000,
"paid_amount": 900,
"details": [
{
"seq": 1,
"amount": 900,
"paid_type": "NEWTON",
"paid_time": "20091225091210",
"transaction_id": "15646546545165651651"
}
]
}
}
狀態(tài)碼 | 錯(cuò)誤碼 | 描述 | 解決方案 |
---|---|---|---|
500 | SYSTEM_ERROR | 系統(tǒng)錯(cuò)誤 | 5開頭的狀態(tài)碼都為系統(tǒng)問題,請使用相同參數(shù)稍后重新調(diào)用 |
400 | PARAM_ERROR | 參數(shù)錯(cuò)誤 | 根據(jù)錯(cuò)誤提示,傳入正確參數(shù) |
403 | NO_AUTH | 商戶信息不合法 | 登錄商戶平臺(tái)核對,傳入正確信息 |
429 | FREQUENCY_LIMITED | 頻率超限 | 請求量不要超過接口調(diào)用頻率限制 |
400 | INVALID_REQUEST | 請求參數(shù)符合參數(shù)格式,但不符合業(yè)務(wù)規(guī)則 | 請確認(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)無需操作 |
400 | ORDER_DONE | 訂單已完成 | 當(dāng)前狀態(tài)無需操作 |