海关179对接

1.背景

http://www.customs.gov.cn/customs/302249/302266/302267/2155884/index.html

跨境电子商务平台企业支付相关原始数据必须对接179,否则会清关失败

例:清单[电商企业编码:xxxx,订单编号:xxxxxxxx]报文校验失败:电商平台[xxx]未对接海关总署179号公告数据实时抓取业务,无法正常申报。

2.准备

  1. 第一步去海关注册备案拿到法人卡(用于服务注册管理)和操作员卡(或者ukey)(用于上传支付信息加签)
    1. 如果操作员卡(或者ukey)丢失,可以去重新申请(需使用法人卡登录)互联网+门户登录
  2. 去中华人民共和国海关总署下载179号文档对接前先看一遍文档
  3. 添加微信说明情况会邀请你入群,进群先看公告群公告很重要
  4. 注意以上需要下载的文档,内容比较乱。
  5. 1步骤的两个卡是必须的。其他的可以先不看

3.代码设计

整体流程:整体流程就这几步,但是细节很多,相互影响。(这只是整体的调用流程,不是开发流程

步骤说明
1.海关发起调用

海关发起调用前提:

1.先登录(使用法人卡):互联网+海关主页

2.填写:见图1.可以开发完成再配置

2.电商平台接受请求     

电商平台部署接口(步骤1配置的服务地址)

3.电商平台返回成功步骤2接口返回成功
4.电商平台组装支付数据,加签,上传到海关平台组装数据、加签(使用操作员卡

 图1

注意:当海关调用电商平台的接口时,电商平台必须2分钟内上传数据。

整体流程设计(可根据上面注意事项,自行设计方案):以下是我司对接方案。

 步骤说明:

1.调用(此步骤可以最后调试):电商平台提供http接口。服务地址必须是http开头的,不能带端口号,只能是默认的80端口,不能是https。

2.入库:入参的orderNo,sessionID直接入库

 3.开启线程异步同步支付信息&直接返回成功:

4.组装参数:

5. 加签(加签流程见):加签会调用pc机。pc机上部署一个springboot应用(对外提供http接口,对内连接websocket服务)+海关提供的html(提供websocket服务)

6.调用海关上传信息接口&处理上传结果(更新db)

 7.补偿job(每分钟执行一次):查询同步失败的记录,重新进行4/5/6步骤。

4.开发

按照上述步骤进行开发

https://download.csdn.net/download/mgq_1991/68243183https://download.csdn.net/download/mgq_1991/68243183java海关179签名-Java文档类资源-CSDN下载java海关179签名更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/mgq_1991/68258679

此处详情说明下加签

1.生成证书编号、证书(可在本地机器生成):

插入操作员卡,找到海关提供的资料:

 按照这个操作。

2.加签逻辑部署在pc机,此pc机必须是windows系统(据说可以使用其他系统,但是我不会)。提供http接口,供自己应用调用。见:6.部署-pc机部署

5.测试

已经无测试环境,和xx确认过。直接把测试数据上传到线上

企业注册接口是企业公网请求接口测试完成后才提交审核的,不是企业测试接口的试验场。海关请求企业接口格式内容以及方式在公告资料里都有样例。

不用提交给xx任何资料,上传数据测试地址是正式环境地址:

https://customs.chinaport.gov.cn/ceb2grab/grab/realTimeDataUpload

企业在正式环境自行测试。没有联调环境。

测试方式:

企业模拟请求测试接口连通性。

  1. 通过样模拟样例中海关实时数据获取请求,按返回格式正确返回正常调用值。(模拟调用提供的http接口)

  2. 在相应时间内上传支付相关原始数据-https://customs.chinaport.gov.cn/ceb2grab/grab/realTimeDataUpload。(上传数据)

6.部署

1.pc机部署(操作员卡要一直插在此pc机上):

1.1.打开index.html(根据群公告中,下载的资料中有。)

 效果:使用console中的地址连接此websocket,也可以使用127.0.0.1

 1.2.启动springboot应用。

2.应用部署。

部署自己应用

3.配置

配置事项(要使用法人卡登录配置互联网+门户登录

证书编号、证书,使用操作员卡生成,生成后,进行上传。

审核订单编号:使用生产上订单号,如果没有,随便填写一个,但是要保证,电商平台提供http接口返回成功。否则服务地址审核不通过

企业联系人、联系方式:随便填写,联系方式格式要正确

服务地址:<电商平台提供http接口>就是填写这个接口。这个点击注册地址后,需要在微信群里@xx进行审核。格式:@xx 电商平台代码:xxxx ,麻烦审核一下,谢谢!

启用地址:审核通过后,选择审核通过的地址,然后启用,至此,整体流程结束。

7.问题盘点

参考其他文章。

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 19
    评论
js加签一般都没有问题,我就是加签之后上传的问题弄了两个礼拜,最后弄清楚了。 以下是数据上报海关方法,我用的是.net的web方式: 1.添加三个引用,见dll文件夹。 2.加载我写的类:两个cs文件(放到web目录下) 3.组织上报数据实体格式如下 public class payExchangeInfoLists { public string orderNo { get; set; }//String 订单编号 public List goodsInfo { get; set; }// List 商品信息 public string recpAccount { get; set; }// String 收款账号 public string recpCode { get; set; }// String 收款企业代码 public string recpName { get; set; }// String 收款企业名称 } public class goodsInfo { public string gname { get; set; }// String 商品名称 public string itemLink { get; set; }// String 商品展示链接地址 } public class payExchangeInfoHead { public string guid { get; set; }// String 系统唯一序号 public string initalRequest { get; set; }// String 原始请求 public string initalResponse { get; set; }// String 原始响应 public string ebpCode { get; set; }// String 电商平台代码 public string payCode { get; set; }// String 支付企业代码 public string payTransactionId { get; set; }// String 交易流水号 public double totalAmount { get; set; }// double 交易金额 public string currency { get; set; }// String 币制 public string verDept { get; set; }// String 验核机构 public string payType { get; set; }// String 支付类型 public string tradingTime { get; set; }// String 交易成功时间 public string note { get; set; }// String 备注 } public class payExInfoStr { public string sessionID { get; set; }// string Y In 海关发起请求时,平台接收的会话ID。 public payExchangeInfoHead payExchangeInfoHead { get; set; }// String Y In 支付原始数据表头 public List payExchangeInfoLists { get; set; }// List Y In 支付原始数据表体 public string serviceTime { get; set; }// Long Y In 返回时的系统时间 public string certNo { get; set;

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值