海关申报提交
[!TIP|style:flat]
注意:
1.每个订单只能有一条非拆单数据和多条拆单数据,拆单数据中 sub_order_no (商户子订单号)相同时将会视为同一条数据。
2.如需修改报关信息,action_type 类型请传 MODIFY, 修改只能对商户备案号、备案名称、海关编码和金额、用户证件信息做修改,如果为拆单数据,则需传递 sub_order_no 来对应修改数据。
3.如果某笔交易已请求报送海关,但电子口岸丢单,可以使用重推接口, 重推时,需要保持报关流水号和原始请求一致。
4.海关申报接口的金额单位是分。
5.海关申报currency是CNY(用户支付的人民币金额)可通过订单查询。
API URL:https://mapi.yabandpay.com/Payments
Method:POST
POST data type:Json
| 参数 | 类型 | 描述 | 是否必填 |
|---|---|---|---|
| user | String | 收银员或超级管理员账号的的UID | 必填 |
| sign | String | 签名 | 必填 |
| method | String | v3.CustomDeclareOrder | 必填 |
| time | Long | 时间戳 | 必填 |
- 参数
| 参数 | 类型 | 描述 | 是否必填 |
|---|---|---|---|
| trade_id | String | YabandPay交易ID | 必填 |
| customs | String | 海关名称 | 必填 |
| mch_customs_no | String | 商户海关备案号 | 必填 |
| mch_name | String | 商户海关备案名称 | 必填 |
| duty | Int | 关税,单位(分),不会提交给海关 | 选填 |
| action_type | String | 报关类型,ADD 新增 MODIFY 修改,默认ADD 新增 | 选填 |
| sub_order_no | String | 商户子订单号 | 选填(拆单时必传) |
| currency | String | 报关的币种建议CNY | 选填(拆单时必传) |
| order_fee | Int | 子订单金额(通过QueryOrder获取订单总金额amount_cny),order_fee=transport_fee+product_fee | 选填(拆单时必传) |
| transport_fee | Int | 子订单物流金额,单位(分) | 选填(拆单时必传) |
| product_fee | Int | 子订单商品价格,单位(分) | 选填(拆单时必传) |
| cert_type | String | 证件类型,请传固定值IDCARD,暂只支持大陆身份证 | 选填 |
| cert_id | String | 证件号码,用户大陆身份证号,尾号为字母X的身份证号,请大写字母X | 选填 |
| name | String | 用户姓名 | 选填 |
customs字段如下:
微信支付报关字段
| 字段 | 描述 |
|---|---|
| GUANGZHOU_ZS | 广州(总署版) |
| GUANGZHOU_HP_GJ | 广州黄埔国检 |
| GUANGZHOU_NS_GJ | 广州南沙国检 |
| HANGZHOU_ZS | 杭州(总署版) |
| NINGBO | 宁波 |
| ZHENGZHOU_BS | 郑州(保税物流中心) |
| CHONGQING | 重庆 |
| SHANGHAI_ZS | 上海(总署版) |
| SHENZHEN | 深圳 |
| ZHENGZHOU_ZH_ZS | 郑州综保(总署版) |
| TIANJIN | 天津 |
TIANJIN (需要推送订单至天津海关时,需要在商户管理后台同时配置天津海关备案信息与天津国检备案信息;调用报关接口时只需推送天津海关,即请求一次报关接口。)
支付宝报关字段
| 字段 | 描述 |
|---|---|
| ZONGSHU | 中国海关总署 |
| ZHENGZHOU | 郑州 |
| NINGBO | 宁波 |
| SHANGHAI_CBT | 上海 |
签名示例:
拼接为URL方式并排序后的字符串
"customs=NINGBO&mch_customs_no=3302462090&mch_name=宁波保税区嘉里大通物流有限公司&method=v3.CustomDeclareOrder&time=1560499094&trade_id=4760a968-4c5d-1e7e-3b88-89641af6e041&user=016683"
得到的 stringA 使用 secret_key做签名
得到的签名如下:
"1c64c2cfd9fd903d953aa325051c09ca738528ea8cd4c977c520f48990b882c0"
提交示例:
{
"user": "016683",
"sign": "1c64c2cfd9fd903d953aa325051c09ca738528ea8cd4c977c520f48990b882c0",
"method": "v3.CustomDeclareOrder",
"time": 1560499094,
"data": {
"trade_id": "4760a968-4c5d-1e7e-3b88-89641af6e041",
"customs": "NINGBO",
"mch_customs_no": "3302462090",
"mch_name": "宁波保税区嘉里大通物流有限公司"
}
}
报关返回示例:
{
"status": true,
"code": "200",
"data": {
"appid": "",
"return_code":"SUCCESS",
"result_code":"SUCCESS",
"mchid": "3302462090",
"out_trade_no": "4434a6e235e81cde4aee954c0031ad96",
"state": "SUCCESS",
"sub_order_id": "e0721a7f957e8e55dfbb5c7bcb4441d6",
"sub_order_no": "1234567890",
"transaction_id": "2024061922001467961423939655",
"verify_department": "OTHERS",
"verify_department_trade_id": "2024061922001467961423939655",
"cert_check_result": "SAME", //订购人和支付人身份信息校验结果(UNCHECKED 商户未上传订购人身份信息 SAME 商户上传的订购人身份信息与支付人身份信息一致 DIFFERENT 商户上传的订购人身份信息与支付人身份信息不一致)
"transId": "20240619161756813048",
"customs_declarations_id": "e0721a7f957e8e55dfbb5c7bcb4441d6"
},
"message": ""
}
State状态如下:
| 状态 | 描述 |
|---|---|
| UNDECLARED | 未申报 (该状态表示已提交报关,等待海关处理中,无需再次提交) |
| SUBMITTED | 申报已提交(订单已经送海关,商户重新申报,并且海关还有修改接口,那么记录的状态会是这个) |
| PROCESSING | 申报中 |
| SUCCESS | 申报成功 |
| FAIL | 申报失败 |
| EXCEPT | 海关接口异常 |