訂單附加信息提交接口
應用場景
以下為財付通的海關備案信息,一般海關會提供,如果沒有請參考下表:
財付通海關備案名稱:財付通支付科技有限公司
財付通10位海關注冊編碼:4403169D3W
支付單申報規(guī)則:a.如果沒有拆單,就以支付時的out_trade_no和transaction_id、原支付單對應的人民幣金額(如有部分退款,減去部分退款金額)申報
b.如果拆單了,就以申報接口傳的商戶子單號sub_order_no和接口返回的子支付單號sub_order_id、申報接口傳的order_fee金額申報
c.拆單的判斷標準:調用支付申報接口時,商戶傳了sub_order_no就認為是拆單
身份信息校驗申報規(guī)則:
a.身份信息校驗不管是否一致,微信支付都只能以系統(tǒng)登記的支付人信息推送海關
b.商戶調用修改接口上傳新的用戶身份信息,微信支付會重新校驗
接口鏈接
URL地址:https://api.mch.weixin.qq.com/cgi-bin/mch/customs/customdeclareorder
重點注意:請求接口前請先在以下頁面提交您的海關信息,所有你需要報關的海關信息都需要提交,且信息真實有效:http://www.tg885.com/index.php/extend/customs
是否需要證書
否
請求參數(shù)
請求方式:post 數(shù)據(jù)格式:xml 簽名方式:MD5
注意:商戶訂單號金額以支付系統(tǒng)記錄的為準,無需上傳,如有子訂單號則必須上傳子訂單應付金額、物流費、商品價格(應付金額=物流費+商品價格)。字段名 | 變量名 | 必填 | 類型 | 示例值 | 說明 |
---|---|---|---|---|---|
簽名 | sign | 是 | String(32) | C380BEC2BFD727A4B6845133519F3AD6 | 簽名,詳見簽名生成算法 |
公眾賬號ID | appid | 是 | String(32) | wxd678efh567hg6787 | 微信分配的公眾賬號ID |
商戶號 | mch_id | 是 | String(32) | 1230000109 | 微信支付分配的商戶號 |
商戶訂單號 | out_trade_no | 是 | String(32) | 20150806125346 | 商戶系統(tǒng)內部訂單號,要求32個字符內,只能是數(shù)字、大小寫字母_-|*@ ,且在同一個商戶號下唯一。 |
微信支付訂單號 | transaction_id | 是 | String(28) | 1000320306201511078440737890 | 微信支付返回的訂單號 |
海關 | customs | 是 | String(32) | SHANGHAI |
GUANGZHOU_ZS 廣州(總署版) HANGZHOU_ZS 杭州(總署版) NINGBO 寧波 ZHENGZHOU_BS 鄭州(保稅物流中心) CHONGQING 重慶 SHANGHAI_ZS 上海(總署版) SHENZHEN 深圳 ZHENGZHOU_ZH_ZS 鄭州綜保(總署版) TIANJIN 天津(需要推送訂單至天津海關時,需要在商戶管理后臺同時配置天津海關備案信息與天津國檢備案信息;調用報關接口時只需推送天津海關,即請求一次報關接口。) 接口文檔列表沒有的海關,商戶在商戶平臺新增海關備案信息時選“廣州(總署)”,備案號和備案名稱填商戶在海關登記的信息,然后按商戶平臺登記的信息調用“訂單附加信息提交接口”即可 |
商戶海關備案號 | mch_customs_no | 是 | String(32) | 123456 | 商戶在海關登記的備案號,customs非NO,此參數(shù)必填 |
關稅 | duty | 否 | int | 888 | 關稅,以分為單位,非必填項,不會提交給海關 |
報關類型 | action_type | 否 | String | ADD | 不傳,默認是新增 ADD 新增報關申請 MODIFY 修改報關信息 |
以下字段在拆單或拆單修改時必傳
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
商戶子訂單號 | sub_order_no | 否 | String(32) | 20150806125346 | 商戶子訂單號,如有拆單則必傳 |
幣種 | fee_type | 否 | String(3) | CNY | 微信支付訂單支付時使用的幣種,暫只支持人民幣CNY,如有拆單則必傳。 |
應付金額 | order_fee | 否 | int | 888 | 子訂單金額,以分為單位,不能超過原訂單金額,order_fee=transport_fee+product_fee(應付金額=物流費+商品價格),如有拆單則必傳。 |
物流費 | transport_fee | 否 | int | 888 | 物流費用,以分為單位,如有拆單則必傳。 |
商品價格 | product_fee | 否 | int | 888 | 商品費用,以分為單位,如有拆單則必傳。 |
用戶實名信息將以微信側的為準,推送給海關。以下字段上傳后,如與微信側的信息不一致,會反饋給商戶,便于商戶收集正確的信息用于訂單推送,不影響報關結果。如用戶是未實名微信用戶,請聯(lián)系用戶完成實名后再報關。
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
證件類型 | cert_type | 否 | String(32) | IDCARD | 請傳固定值IDCARD,暫只支持大陸身份證。 |
證件號碼 | cert_id | 否 | String(64) | 330821198809085211 | 用戶大陸身份證號,尾號為字母X的身份證號,請大寫字母X。 |
姓名 | name | 否 | String(64) | 張三 | 用戶姓名。 |
舉例如下:
? ?<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轉義即可,CDATA標簽用于說明數(shù)據(jù)不被XML解析器解析。
應答參數(shù)列表
字段名 | 變量名 | 必填 | 類型 | 示例值 | 說明 |
---|---|---|---|---|---|
返回狀態(tài)碼 | return_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL 此字段是通信標識,非交易標識,交易是否成功需要查看result_code來判斷 |
返回信息 | return_msg | 否 | String(128) | 簽名失敗 | 返回信息,如非空,為錯誤原因 如:簽名失敗 等。 |
以下字段在return_code為SUCCESS的時候有返回
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
簽名類型 | sign_type | 是 | String(32) | MD5 | 暫只支持MD5 |
簽名 | sign | 是 | String(32) | C380BEC2BFD727A4B6845133519F3AD6 | 簽名,詳見簽名生成算法 |
公眾賬號ID | appid | 是 | String(32) | wxd678efh567hg6787 | 微信分配的公眾賬號ID |
商戶號 | mch_id | 是 | String(32) | 1230000109 | 微信支付分配的商戶號 |
業(yè)務結果 | result_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL |
錯誤代碼 | err_code | 否 | String(32) | SYSTEMERROR | 詳細參見錯誤列表 |
錯誤代碼描述 | err_code_des | 否 | String(128) | 系統(tǒng)錯誤 | 錯誤返回的信息描述 |
以下字段在return_code 和result_code都為SUCCESS的時候有返回
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
狀態(tài)碼 | state | 是 | String(32) | UNDECLARED |
狀態(tài)碼 UNDECLARED -- 未申報 SUBMITTED -- 申報已提交(訂單已經送海關,商戶重新申報,并且海關還有修改接口,那么記錄的狀態(tài)會是這個) PROCESSING -- 申報中 SUCCESS -- 申報成功 FAIL-- 申報失敗 EXCEPT --海關接口異常 |
微信支付訂單號 | transaction_id | 是 | String(28) | 1000320306201511078440737890 | 微信支付返回的訂單號 |
商戶訂單號 | out_trade_no | 是 | String(32) | 20150806125346 | 商戶系統(tǒng)內部訂單號,要求32個字符內,只能是數(shù)字、大小寫字母_-|*@ ,且在同一個商戶號下唯一。 |
商戶子訂單號 | sub_order_no | 否 | String(32) | 20150806125346 | 商戶子訂單號,如有拆單則必傳 |
微信子訂單號 | sub_order_id | 否 | String(32) | 20150806125346 | 微信子訂單號 |
最后更新時間 | modify_time | 是 | String(14) | 20091227091010 | 最后更新時間,格式為yyyyMMddhhmmss,如2009年12月27日9點10分10秒表示為20091227091010。時區(qū)為GMT+8 beijing。該時間取自微信服務器 |
訂購人和支付人身份信息校驗結果 | cert_check_result | 是 | String(256) | UNCHECKED |
UNCHECKED 商戶未上傳訂購人身份信息 SAME 商戶上傳的訂購人身份信息與支付人身份信息一致 DIFFERENT 商戶上傳的訂購人身份信息與支付人身份信息不一致 |
驗核機構 | verify_department | 是 | String(16) | UNIONPAY | 驗核機構包括: |
驗核機構交易流水號 | verify_department_trade_id | 是 | String(64) | 2018112288340107038204310100000 | 交易流水號,來自驗核機構,如銀聯(lián)記錄的交易流水號,供商戶報備海關 |
錯誤碼
名稱 | 描述 | 原因 | 解決方案 |
---|---|---|---|
132011004 | 參數(shù)錯誤 | 報關時僅傳入訂單號,不傳入子訂單號(sub_order_no)時,不能填費用信息,須以支付系統(tǒng)中的值為準 | 請檢查參數(shù)是否都正確 |
132021028 | 交易幣種與商戶結算幣種不一致 | 報關時傳入子訂單號(sub_order_no)時,幣種參數(shù)(fee_type)必填 | 請檢查所傳幣種參數(shù)(fee_type)是否為空 |
MCHID_NOT_SET | 商戶號未設置 | 商戶號為必傳參數(shù),請求時必傳 | 請檢查商戶號是否為空 |
MCHID_INVALID_LENGTH | 無效的商戶號長度 | 報關接口傳入的商戶號長度錯誤 | 請傳入正確的商戶號 |
CUSTOMSCONFIG_NOT_SET | 海關配置未設置 | 報關接口需要商戶已配置過海關信息才可以訪問 | 請參照上文中的海關備案指引,進行海關信息報備 |
FEETYPE_NOT_SET | 幣種類型未設置 | 拆單情況下,幣種為必填參數(shù) | 請檢查fee_type是否為空 |
OUTTRADENO_NOT_SET | 商戶訂單號(out_trade_no)未設置 | 商戶訂單號為必傳參數(shù) | 請檢查商戶訂單號(out_trade_no)是否為空 |
TRANSACTION_ID_NOT_SET | 微信訂單號(transaction_id)未設置 | 微信訂單號(transaction_id)為必傳參數(shù) | 請檢查微信訂單號(transaction_id)是否為空 |
INVALID_TRANSACTION_ID | 無效的微信訂單號長度 | 微信訂單號為28位數(shù)字,請確保長度一致 | 請檢查微信訂單號(transaction_id)是否正確 |
CUSTOMS_NOT_SET | 海關信息未設置 | 海關信息為必傳字段 | 請檢查海關信息是否為空 |
CHCUSTOMSNO_NOT_SET | 海關備案號未設置 | 海關備案號為必傳字段 | 請檢查備案號是否為空 |
INVALID_MCHCUSTOMSNO | 無效的海關備案號長度 | 海關備案號一般為6位字符串 | 請檢查海關備案號是否正確 |
PAYFEE_NOT_MATCH | 金額不匹配 | 報關的訂單金額必須和支付的金額一致 | 請檢查報關訂單的金額是否正確 |
INVALID_SUBORDER_NO | 無效的子訂單號長度(sub_order_no) | 子訂單號要求是32位以內的字符串 | 請檢查子訂單號長度是否正確 |
APPID_NOT_EXIST | AppId未設置(sub_order_no) | appid為必傳字段 | 請檢查appid是否正確 |
MCHID_NOT_EXIST | 商戶號(mch_id)未設置 | MCH_ID為必傳字段 | 請檢查mch_id是否正確 |
AUTHORITY_NOT_FOUND | 未開通自助清關功能 | 須先開通自助清關功能才可成功調用接口 | 請檢查是否已開通自助清關功能,開通路徑:微信支付商戶平臺-產品中心-自助清關中申請開通。 |
NO_AUTH | 無權限 | 未獲得此接口的調用權限 | 請檢查當前商戶號是否已獲得此接口的調用權限 |