微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析”這篇文章吧。

目前創(chuàng)新互聯(lián)已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、黎川網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

一、報關(guān)接口API

接口地址

https://api.mch.weixin.qq.com/cgi-bin/mch/customs/customdeclareorder

是否需要證書

不需要。

請求方式:post 數(shù)據(jù)格式:xml 簽名方式:MD5

注意:商戶訂單號金額以支付系統(tǒng)記錄的為準(zhǔn),無需上傳,如有子訂單號則必須上傳子訂單應(yīng)付金額、物流費(fèi)、商品價格(應(yīng)付金額=物流費(fèi)+商品價格)。


字段名變量名必填類型示例值說明
簽名signString(32)C380BEC2BFD727A4B6845133519F3AD6簽名,詳見簽名生成算法
公眾賬號IDappidString(32)wxd678efh667hg6787微信分配的公眾賬號ID
商戶號mch_idString(32)1230000109微信支付分配的商戶號
商戶訂單號out_trade_noString(32)20150806125346商戶系統(tǒng)內(nèi)部的訂單號
微信支付訂單號transaction_idString(28)1000320306201511078440737890微信支付返回的訂單號
海關(guān)customsString(32)SHANGHAI

NO 無需上報海關(guān)

GUANGZHOU 廣州

HANGZHOU 杭州

NINGBO 寧波

ZHENGZHOU_BS 鄭州(保稅物流中心)

CHONGQING 重慶

XIAN 西安

SHANGHAI 上海

ZHENGZHOU_ZH 鄭州(綜保區(qū))

SHENZHEN 深圳

商戶海關(guān)備案號mch_customs_noString(32)123456商戶在海關(guān)登記的備案號,customs非NO,此參數(shù)必填
關(guān)稅dutyInt888關(guān)稅,以分為單位

以下字段在拆單或重新報關(guān)時必傳

字段名變量名必填類型示例值描述
商戶子訂單號sub_order_noString(32)20150806125346商戶子訂單號,如有拆單則必傳
幣種fee_typeString(3)CNY微信支付訂單支付時使用的幣種,暫只支持人民幣CNY,如有拆單則必傳。
應(yīng)付金額order_feeInt888子訂單金額,以分為單位,不能超過原訂單金額,order_fee=transport_fee+product_fee(應(yīng)付金額=物流費(fèi)+商品價格),如有拆單則必傳。
物流費(fèi)transport_feeInt888物流費(fèi)用,以分為單位,如有拆單則必傳。
商品價格product_feeInt888商品費(fèi)用,以分為單位,如有拆單則必傳。

以下字段在微信缺少用戶信息時必傳,如果商戶上傳了用戶信息,則以商戶上傳的信息為準(zhǔn)。

字段名變量名必填類型示例值描述
證件類型cert_typeString(32)IDCARD暫只支持身份證,該參數(shù)是指用戶信息,商戶若有用戶信息,可上送,系統(tǒng)將以商戶上傳的數(shù)據(jù)為準(zhǔn),進(jìn)行海關(guān)通關(guān)報備;
證件號碼cert_idString(64)330821198809085211身份證號,該參數(shù)是指用戶信息,商戶若有用戶信息,可上送,系統(tǒng)將以商戶上傳的數(shù)據(jù)為準(zhǔn),進(jìn)行海關(guān)通關(guān)報備;
姓名nameString(64)張三用戶姓名,該參數(shù)是指用戶信息,商戶若有用戶信息,可上送,系統(tǒng)將以商戶上傳的數(shù)據(jù)為準(zhǔn),進(jìn)行海關(guān)通關(guān)報備;

舉例如下:

<xml>
   <appid>wx2421b1c4370ec43b</appid>
   <customs>ZHENGZHOU_BS</customs>
   <mch_customs_no>D00411</mch_customs_no>
   <mch_id>1262544101</mch_id>
   <order_fee>13110</order_fee>
   <out_trade_no>15112496832609</out_trade_no>
   <product_fee>13110</product_fee>
   <sign>8FF6CEF879FB9555CD580222E671E9D4</sign>
   <transaction_id>1006930610201511241751403478</transaction_id>
   <transport_fee>0</transport_fee>
   <fee_type>CNY</fee_type>
   <sub_order_no>15112496832609001</sub_order_no>
   </xml>

注:參數(shù)值用XML轉(zhuǎn)義即可,CDATA標(biāo)簽用于說明數(shù)據(jù)不被XML解析器解析。

應(yīng)答參數(shù)列表

字段名變量名必填類型示例值說明
返回狀態(tài)碼return_codeString(16)SUCCESS

SUCCESS/FAIL

此字段是通信標(biāo)識,非交易標(biāo)識,交易是否成功需要查看result_code來判斷

返回信息return_msgString(128)簽名失敗

返回信息,如非空,為錯誤原因

簽名失敗

參數(shù)格式校驗(yàn)錯誤

以下字段在return_code為SUCCESS的時候有返回

字段名變量名必填類型示例值描述
簽名類型sign_typeString(32)MD5暫只支持MD5
簽名signString(32)C380BEC2BFD727A4B6845133519F3AD6簽名,詳見簽名生成算法
公眾賬號IDappidString(32)wxd678efh667hg6787微信分配的公眾賬號ID
商戶號mch_idString(32)1230000109微信支付分配的商戶號
業(yè)務(wù)結(jié)果result_codeString(16)SUCCESSSUCCESS/FAIL
錯誤代碼err_codeString(32)SYSTEMERROR詳細(xì)參見錯誤列表
錯誤代碼描述err_code_desString(128)系統(tǒng)錯誤錯誤返回的信息描述

以下字段在return_code 和result_code都為SUCCESS的時候有返回

字段名變量名必填類型示例值描述
狀態(tài)碼stateString(2)UNDECLARED

狀態(tài)碼

UNDECLARED -- 未申報

SUBMITTED -- 申報已提交(訂單已經(jīng)送海關(guān),商戶重新申報,并且海關(guān)還有修改接口,那么記錄的狀態(tài)會是這個)

PROCESSING -- 申報中

SUCCESS -- 申報成功

FAIL-- 申報失敗

EXCEPT --海關(guān)接口異常

微信支付訂單號transaction_idString(28)1000320306201511078440737890微信支付返回的訂單號
商戶訂單號out_trade_noString(32)20150806125346商戶系統(tǒng)內(nèi)部的訂單號
商戶子訂單號sub_order_noString(32)20150806125346商戶子訂單號,如有拆單則必傳
微信子訂單號sub_order_idString(32)20150806125346微信子訂單號
最后更新時間modify_timeString(14)20091227091010最后更新時間,格式為yyyyMMddhhmmss,如2009年12月27日9點(diǎn)10分10秒表示為20091227091010。時區(qū)為GMT+8 beijing。該時間取自微信服務(wù)器

錯誤碼

名稱描述原因解決方案
132011004參數(shù)錯誤報關(guān)時僅傳入訂單號,不傳入子訂單號(sub_order_no)時,不能填費(fèi)用信息,須以支付系統(tǒng)中的值為準(zhǔn)請檢查參數(shù)是否都正確
132021028交易幣種與商戶結(jié)算幣種不一致】報關(guān)時傳入子訂單號(sub_order_no)時,幣種參數(shù)(fee_type)必填請檢查所傳幣種參數(shù)(fee_type)是否為空
MCHID_NOT_SET商戶號未設(shè)置商戶號為必傳參數(shù),請求時必傳請檢查商戶號是否為空
MCHID_INVALID_LENGTH無效的商戶號長度報關(guān)接口只支持12開頭10位數(shù)字的商戶號請檢查商戶號長度是否為10位
CUSTOMSCONFIG_NOT_SET海關(guān)配置未設(shè)置報關(guān)接口需要商戶已配置過海關(guān)信息才可以訪問請參照上文中的海關(guān)備案指引,進(jìn)行海關(guān)信息報備
FEETYPE_NOT_SET幣種類型未設(shè)置拆單情況下,幣種為必填參數(shù)請檢查fee_type是否為空
OUTTRADENO_NOT_SET商戶訂單號(out_trade_no)未設(shè)置商戶訂單號為必傳參數(shù)請檢查商戶訂單號(out_trade_no)是否為空
TRANSACTION_ID_NOT_SET微信訂單號(transaction_id)未設(shè)置微信訂單號(transaction_id)為必傳參數(shù)請檢查微信訂單號(transaction_id)是否為空
INVALID_TRANSACTION_ID無效的微信訂單號長度微信訂單號為28位數(shù)字,請確保長度一致請檢查微信訂單號(transaction_id)是否正確
CUSTOMS_NOT_SET海關(guān)信息未設(shè)置海關(guān)信息為必傳字段請檢查海關(guān)信息是否為空
CHCUSTOMSNO_NOT_SET海關(guān)備案號未設(shè)置海關(guān)備案號為必傳字段請檢查備案號是否為空
INVALID_MCHCUSTOMSNO無效的海關(guān)備案號長度海關(guān)備案號一般為6位字符串請檢查海關(guān)備案號是否正確
PAYFEE_NOT_MATCH金額不匹配報關(guān)的訂單金額必須和支付的金額一致請檢查報關(guān)訂單的金額是否正確
INVALID_SUBORDER_NO無效的子訂單號長度(sub_order_no)子訂單號要求是32位以內(nèi)的字符串請檢查子訂單號長度是否正確
APPID_NOT_EXISTAppId未設(shè)置(sub_order_no)appid為必傳字段請檢查appid是否正確
MCHID_NOT_EXIST商戶號(mch_id)未設(shè)置MCH_ID為必傳字段請檢查mch_id是否正確
AUTHORITY_NOT_FOUND未開通自助清關(guān)功能須先開通自助清關(guān)功能才可成功調(diào)用接口請檢查是否已開通自助清關(guān)功能,開通路徑:微信支付商戶平臺-產(chǎn)品中心-自助清關(guān)中申請開通。
NO_AUTH無權(quán)限未獲得此接口的調(diào)用權(quán)限請檢查當(dāng)前商戶號是否已獲得此接口的調(diào)用權(quán)限

二、SDK實(shí)現(xiàn)

sdk定義

微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析

微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析

三、調(diào)用方式

微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析

三、返回結(jié)果

發(fā)送數(shù)據(jù)如下

array(6) {
  ["appid"]=>
  string(18) "wxa8092dd025e45123"
  ["mch_id"]=>
  string(10) "1238298123"
  ["out_trade_no"]=>
  string(22) "SH20160824095750086988"
  ["transaction_id"]=>
  string(28) "4006742001201608242098415582"
  ["customs"]=>
  string(6) "NINGBO"
  ["mch_customs_no"]=>
  string(10) "3302461123"
}

接收到的數(shù)據(jù)如下

array(12) {
  ["return_code"]=>
  string(7) "SUCCESS"
  ["return_msg"]=>
  string(6) "成功"
  ["sign"]=>
  string(32) "91EFCEEAAD4322F331F3F63C4D8F1279"
  ["appid"]=>
  string(18) "wxa8092dd025e45123"
  ["mch_id"]=>
  string(10) "1238298123"
  ["result_code"]=>
  string(7) "SUCCESS"
  ["err_code"]=>
  string(1) "0"
  ["err_code_des"]=>
  string(2) "OK"
  ["state"]=>
  string(9) "SUBMITTED"
  ["transaction_id"]=>
  string(28) "4006742001201608242098415582"
  ["out_trade_no"]=>
  string(22) "SH20160824095750086988"
  ["modify_time"]=>
  string(14) "20160825111049"
}

以上是“微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站名稱:微信公眾平臺開發(fā)微信支付報關(guān)接口的示例分析-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://muchs.cn/article38/ddcosp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊響應(yīng)式網(wǎng)站、虛擬主機(jī)、建站公司網(wǎng)站排名、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營