中华人民共和国海关总署下载179号数据对接

1. 第一步
第一步去海关注册备案拿到ukey
去中华人民共和国海关总署下载179号文档
https://www.chinaport.gov.cn/pages/news/news-detail.html?jumpNoticeId=1878联系相关人员添加微信
中国电子口岸控件安装:https://app.singlewindow.cn/cas/login?_loginCportCU=1&service=https%3A%2F%2Fwww.chinaport.gov.cn%2Fcenter%2Fuserinfodemo%2Fuserinfo(打开地址点击下载控件)
2. 接收海关请求
海关发起数据查询
post方式(x-www-form-urlencoded)
从请求中获取openReq参数的值,该参数值是一个符合json标准的字符串,由于海关提交的请求是post方式(x-www-form-urlencoded),所以在url中是没有参数的,必须要从表单中获取该参数

海关数据示例
{"orderNo":"202009231454212140210352","sessionID":"032C3F56-0EE6-4558-B548-6C7A3451F07D","serviceTime":"1600852846372"}
1
接收完后需企业返回响应json格式数据 必须是json格式 10000表示成功 20000失败

{ "code":"10000","message":"","serviceTime":1533271903898}
1
3. 组装数据和上传报文
使用接收到的sessionID就可以进行加签(前期可以自己模拟请求)
使用ukey进行加签获取签名(使用操作员ukey)
按照179号文档进行数据拼装

获取签名
1. 使用官方js请求时需按以下格式来请求
数据格式

"sessionID":"032C3F56-0EE6-4558-B548-6C7A3451F07D"||"payExchangeInfoHead":"{"guid":"E4766021-21AC-1AA2-21DD-E974DF93C11D","initalRequest":"<xml><appid><![CDATA[]]></appid><mch_id></mch_id><body><![CDATA[]]></body><nonce_str><![CDATA[]]></nonce_str><out_trade_no>202009231454212140210352</out_trade_no><total_fee>500</total_fee><spbill_create_ip><![CDATA[]]></spbill_create_ip><notify_url><![CDATA[]]></notify_url><openid><![CDATA[]]></openid><trade_type><![CDATA[JSAPI]]></trade_type><sign><![CDATA[]]></sign></xml>","initalResponse":"<xml><appid><![CDATA[]]></appid><bank_type><![CDATA[OTHERS]]></bank_type><cash_fee>500</cash_fee><fee_type><![CDATA[CNY]]></fee_type><is_subscribe><![CDATA[N]]></is_subscribe><mch_id></mch_id><nonce_str><![CDATA[]]></nonce_str><openid><![CDATA[]]></openid><out_trade_no></out_trade_no><result_code><![CDATA[SUCCESS]]></result_code><return_code><![CDATA[SUCCESS]]></return_code><sign><![CDATA[]]></sign><time_end>20200923145426</time_end><total_fee>500</total_fee><trade_type><![CDATA[JSAPI]]></trade_type><transaction_id>4200000681202009235085032319</transaction_id></xml>","ebpCode":"11111111","payCode":"4403169D3W","payTransactionId":"4200000681202009235085032319","totalAmount":5,"currency":"142","verDept":"3","payType":"4","tradingTime":"20200923145426","note":""}"||"payExchangeInfoLists":"[{"orderNo":"202009231454218421271832","goodsInfo":[{"gname":"济州花梨精华面膜","itemLink":"https://填写自己的商品地址"}],"recpAccount":"111111111","recpCode":"22222222222","recpName":"填写在海关注册的公司"}]"||"serviceTime":"1601282210417"
1
js请求示例


2. WebSocket请求
请求地址:
ws://127.0.0.1:61232
wss://wss.singlewindow.cn:61231

数据格式

{"_id":"1","_method":"cus-sec_SpcSignDataAsPEM","args":{"inData":"\"sessionID\":\"032C3F56-0EE6-4558-B548-6C7A3451F07D\"||\"payExchangeInfoHead\":\"{\"guid\":\"E4766021-21AC-1AA2-21DD-E974DF93C11D\",\"initalRequest\":\"<xml><appid><![CDATA[]]><\/appid><mch_id><\/mch_id><body><![CDATA[]]><\/body><nonce_str><![CDATA[]]><\/nonce_str><out_trade_no>202009231454212140210352<\/out_trade_no><total_fee>500<\/total_fee><spbill_create_ip><![CDATA[]]><\/spbill_create_ip><notify_url><![CDATA[https:\/\/www.qingwatour.com\/api\/notify\/index]]><\/notify_url><openid><![CDATA[]]><\/openid><trade_type><![CDATA[JSAPI]]><\/trade_type><sign><![CDATA[]]><\/sign><\/xml>\",\"initalResponse\":\"<xml><appid><![CDATA[]]><\/appid><bank_type><![CDATA[OTHERS]]><\/bank_type><cash_fee>500<\/cash_fee><fee_type><![CDATA[CNY]]><\/fee_type><is_subscribe><![CDATA[N]]><\/is_subscribe><mch_id><\/mch_id><nonce_str><![CDATA[]]><\/nonce_str><openid><![CDATA[]]><\/openid><out_trade_no>202009231454212140210352<\/out_trade_no><result_code><![CDATA[SUCCESS]]><\/result_code><return_code><![CDATA[SUCCESS]]><\/return_code><sign><![CDATA[]]><\/sign><time_end>20200923145426<\/time_end><total_fee>500<\/total_fee><trade_type><![CDATA[JSAPI]]><\/trade_type><transaction_id>4200000681202009235085032319<\/transaction_id><\/xml>\",\"ebpCode\":\"111111\",\"payCode\":\"4403169D3W\",\"payTransactionId\":\"4200000681202009235085032319\",\"totalAmount\":5,\"currency\":\"142\",\"verDept\":\"3\",\"payType\":\"4\",\"tradingTime\":\"20200923145426\",\"note\":\"\"}\"||\"payExchangeInfoLists\":\"[{\"orderNo\":\"202009231454218421271832\",\"goodsInfo\":[{\"gname\":\"\u6d4e\u5dde\u82b1\u68a8\u7cbe\u534e\u9762\u819c\",\"itemLink\":\"商品链接地址"}],\"recpAccount\":\"111111\",\"recpCode\":\"222222\",\"recpName\":\"测试测试"}]\"||\"serviceTime\":\"1601282210417\"","passwd":"88888888"}}
1
!!!把以上加签数据替换成你自己的信息!!!

获取到签名格式
{"Result":true,"Data":["KT1m7MkJ98/O5s33P0BpF34b7+gyW5WEpMvaTB+Ji0O9H3FabJuoRj8s2DxbglUbqA9mFDoCXbljgt+GaO73HE0eO8vl+eWx981S5hYumdK7sVovMTqkCKs211ZsB3edVUVfDau3D8ew8rwoda/zOBVBiDKmo3J5iQ5INxN3oF8=","证书"],"Error":[]}
1
4. 上传报文
请求地址:https://customs.chinaport.gov.cn/ceb2grab/grab/realTimeDataUpload
方式:POST
参数名:payExInfoStr
参数类型: JSON

报文格式

{"sessionID":"032C3F56-0EE6-4558-B548-6C7A3451F07D","payExchangeInfoHead":{"guid":"E4766021-21AC-1AA2-21DD-E974DF93C11D","initalRequest":"<xml><appid><![CDATA[xwxwxwxwx112121]]></appid><mch_id>11111111</mch_id><body><![CDATA[测试测试]]></body><nonce_str><![CDATA[ashdgahgdhaghgliqwueyqu1]]></nonce_str><out_trade_no>202009231454212140210352</out_trade_no><total_fee>500</total_fee><spbill_create_ip><![CDATA[192.168.0.1]]></spbill_create_ip><notify_url><![CDATA[https://www.baidu.com]]></notify_url><openid><![CDATA[adasyduiyasdhjxzycua-Q]]></openid><trade_type><![CDATA[JSAPI]]></trade_type><sign><![CDATA[asd1sa56d4545wqe44wq5]]></sign></xml>","initalResponse":"<xml><appid><![CDATA[xwxwxwxwx112121]]></appid><bank_type><![CDATA[OTHERS]]></bank_type><cash_fee>500</cash_fee><fee_type><![CDATA[CNY]]></fee_type><is_subscribe><![CDATA[N]]></is_subscribe><mch_id>11111111</mch_id><nonce_str><![CDATA[ashdgahgdhaghgliqwueyqu1]]></nonce_str><openid><![CDATA[adasyduiyasdhjxzycua-Q]]></openid><out_trade_no>202009231454212140210352</out_trade_no><result_code><![CDATA[SUCCESS]]></result_code><return_code><![CDATA[SUCCESS]]></return_code><sign><![CDATA[asgdhasgdhasgdhgasgdhasgdh]]></sign><time_end>20200923145426</time_end><total_fee>500</total_fee><trade_type><![CDATA[JSAPI]]></trade_type><transaction_id>4200000681202009235085032319</transaction_id></xml>","ebpCode":"请替换","payCode":"4403169D3W","payTransactionId":"4200000681202009235085032319","totalAmount":5,"currency":"142","verDept":"3","payType":"4","tradingTime":"20200923145426","note":""},"payExchangeInfoLists":[{"orderNo":"202009231454218421271832","goodsInfo":[{"gname":"济州花梨精华面膜","itemLink":"请替换"}],"recpAccount":"请替换","recpCode":"请替换","recpName":"请替换"}],"serviceTime":"1601282210417","certNo":"证书号要小写","signValue":"KT1m7MkJ98/O5s33P0BpF34b7+gyW5WEpMvaTB+Ji0O9H3FabJuoRj8s2DxbglUbqA9mFDoCXbljgt+GaO73HE0eO8vl+eWx981S5hYumdK7sVovMTqkCKs211ZsB3edVUVfDau3D8ew8rwoda/zOBVBiDKmo3J5iQ5INxN3oF8="}
1
返回信息
{"code":"20006","message":"上传失败,入库失败 java.sql.SQLException: ORA-00001: 违反唯一约束条件 (sessionID重复)","total":0,"serviceTime":1603684304670}
1
返回以上json如上就基本完成,因为这里sessionID是自己生成的或者第二次上传,才会返回sessionID重复。可以去海关http://ceb1.chinaport.gov.cn/填写测试订单号进行线上模拟测试


 {"code":"20004","message":"企业实时数据获取验签证书未在服务系统注册","total":0,"serviceTime":1603693566761}
1
未上传证书编号和证书,这里需要注意的事项!!!证书编号需要小写,并且页面上传的和上传支付数据的证书编号保持一致!!! 如果已上传请检查证书是否一致


{"code":"20005","message":"验签失败","total":0,"serviceTime":1603696878548}
1
查看数据格式是否出现问题,查看证书是否一致
有一些坑需要注意
文档中的payExchangeInfoList应该是payExchangeInfoLists
serviceTime必须是字符串类型
totalAmoun不是string类型
查看上传数据和加签数据的时间,guid是否一致

{"code":"10000","message":"上传成功","total":0,"serviceTime":1603696878548}
1
测试完成
 

  • 17
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
/api/USB 接口地址 常见错误结果和解决方法: 下面凑字数 {“code”:“20004”,“message”:“企业实时数据获取验签证书未在服务系统注册”,“total”:0,“serviceTime”:1500000000000} 得到这个结果,说明证书没有注册,测试环境联系管理员,生产环境需要到单一窗口去注册上传。如果已经上传了的,去看看你填的ebpCode是否是你自己的。 {“code”:“20000”,“message”:“上传失败 java.lang.IllegalStateException: xxxx这里是错误信息内容”,“total”:0,“serviceTime”:1500000000000} 这个错误说明上传的数据格式不对,海关系统无法解析,注意看看是否有字段类型或者格式错误,也注意看具体看错误内容,一般都有提示。 {“code”:“20005”,“message”:“验签失败”,“total”:0,“serviceTime”:1500000000000} 得到这个信息,说明上传的内容格式没问题了,验签失败,可能加签过程不对,一般都是字符串或者加签格式不对导致的,相见加签部分的细节,注意比对加签内容的格式和样例是否一致。另外也要看看用得证书什么的有没有问题。 {“code”:“20006”,“message”:“上传失败,入库失败 java.sql.SQLException: ORA-00001: 违反唯一约束条件 (sessionID重复)”,“total”:0,“serviceTime”:1500000000000} 得到这个消息,恭喜你,测试基本成功了:加签成功、数据格式没有问题了,接下来就可以自己生成模拟数据去测试了。 {“code”:“10000”,“message”:“上传成功”,“total”:0,“serviceTime”:1500000000000} 恭喜,测试成功。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值