最近公司的一个商城的客户,做保税仓发货的功能,该功能需要对接到一些第三方的物流仓报关系统以及支持系统的报关功能,中途碰上了N多个坑,因此记录下来,省的下次忘了

1.由于原本的系统并没有计算税费的功能,因此需要在订单中增加税费的计算,这时候,就需要在商品详情里增加几个字段:增值税、消费税、付税方;

增值税一般为:16%,消费税为15%,付税方: 顾客/商家(如果为商家,即为保税)

一般跨境电商的需要交一个综合税,计算方式为:

如果消费税=0,则为 16%*70%=11.2%

如果消费税>0,则为 ((16% + 15% )/(1-16%) )*70%

2.在实际的销售过程中,有可能出现包税的情况存在,如果一张订单里出现包税和不包税的商品,则推送报关单的时候,需要拆分成两张子订单,付款单号可以相同,只要多张子订单的付款金额加起来不超过该付款单的总金额即可。

在包税的子订单里,需要将商品金额中,拆分出税金,这就是为什么上面需要存一个付税方字段,而不是把两个税率都设为0的原因了

计算方式为:  商品总金额=原商品总金额-((商品总金额 / 1+税率) * 税率)

商品单价   = 新的商品总金额/商品数量    (可能会出现除不尽,建议保留小数点后4位)

依次类推,合计数子订单的商品金额和税金

3.由于商城还可能出现一种情况,就是包邮/不包邮的情况。

如果不包邮的情况下,其实运费= 实际运费+运费的税金(运费*综合税率),

如果包邮的情况下,实际上是商家替用户支付了运费的税费,如果实在非要算个一下税费的话,那就将税费平摊到商品里即可

有些对接的系统是需要传一个总税金的字段,那么总税金=运费税金+商品税金总和

4.可能还会再出现一种情况就是包税不包邮,这时候需要拆单的情况下,运费可以根据两张订单占总商品金额的比例将运费和运费税平摊到两张子订单中,在子订单中进行分配

5.如果出现一张订单中,都是跨境电商的商品,那么还算简单,原有的订单结构不需要变化,只是在推送的时候,将订单进行拆分推送就好,子订单的订单号可以简单的在主订单号后加一个后缀标识一下即可,如果出现跨境电商为分仓库发货或者存在跨境电商+直邮商品的情况的,则最好在下单的时候,将订单各自拆分成订单,由于付款单号可以共用,因此 只需要让用户支付一次即可

6.还有个很细节的地方需要特别注意的,,就是由于报关单一般是三单对碰成功之后,才可以,但,支付单是由支付平台推送的,而订单和物流单是另外一个物流报关系统推送的 ,因此这里会存在一个问题就是,物流系统是以什么方式取到支付单的,,根据对接这几天的总结,有两种,一种是通过支付单号匹配,一种是通过订单号取支付单号。。。如果是支付平台提示报关成功,而物流平台提示无法找到支付单的情况,,一定要使用微支付或支付宝的原始交易单号进行提交,不能用支付平台提供的内部支付单号提交,否则就会出现无法匹配到支付单的情况。

7.有些支付平台会要求必须拆单推送,即不管是否存在包税+不包税的情况下,必须拆分成子订单提交,因此,对接时,请跟你的支付商确定好这个问题

8.如果对接的物流系统的商品信息推送接口过程中,,凡是有叫编号或者ID的字段的,不管是否写着可空或者可以默认与xxx字段相等,也都直接添加在界面上,让客户自己去填写,否则可能会出现匹配不到商品的错误

9.由于报关是个很复杂的事情,因此说上面所说的,只是本人碰到的比较简单的情况,,实际对接,请跟对接平台确定好细节 

最后的最后,,,如果需要四舍五入的话,一定要使用 System.Math.Round(value , 2, MidpointRounding.AwayFromZero) 这个方法,并且 value必须

是decimal

转载于:https://www.cnblogs.com/kugar/p/10527815.html

关于对接保税仓物流系统或支付系统推送报关单的一些琐碎的问题相关推荐

  1. 2018最新支付系统/第三方支付系统/第四方支付系统/聚合支

    2018最新支付系统/第三方支付系统/第四方支付系统/聚合支这里写自定义目录标题 2018最新第三方API第四方支付平台程序源码完整开源全套完美运营版聚合支付平台源码,此平台源码是客户独家运营的版本, ...

  2. 一加7pro运动计步功能_系统:一加推送一加7Pro的氢OS9.5.9系统版本更新,继续优化屏幕...

    最新消息,一加目前已经正式推送更新了一加7Pro的Hydrogen OS 9.5.9.GM21系统版本.这次的更新继续优化了屏幕的亮度和灵敏度问题.还加入了游戏中心功能. 其实一加7 Pro在不久之前 ...

  3. 滴滴回应高额抽成:确实存在;抖音火山版被判赔腾讯 800 万元;华为鸿蒙系统有望下月规模化推送|极客头条...

    「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...

  4. 【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息

    往期回顾: [逗老师带你学IT]PRTG监控系统通过企业微信推送告警消息 [逗老师带你学IT]PRTG HTTP API获取指定传感器流量图表图片 在往期的文章里,我们讲了 1.如何在PRTG产生告警 ...

  5. JAVA对接企业微信,实现文本消息推送

    对接企业微信,实现文本消息推送,可分为以下两部: 1.根据企业ID+应用的凭证密钥,获取Token 2.根据Token+要传输的body,实现文本消息推送 1.根据企业ID+应用的凭证密钥,获取Tok ...

  6. ios预支付系统 java_支付系统的预发布环境如何搭建

    支付系统涉及到很多回调通知,如何把第三方回调重定向到预发布环境上,特定的一些测试的url走预发布环境,其他的回调通知还是走生产环境(利用订单号区分?很多第三方回调的url很怪异) 例如: 腾讯退款 T ...

  7. 这是我见过最好的支付系统,支付系统开发神器

    适合互联网企业使用的开源支付系统 今天,推荐一个支付系统项目.第一次使用就有点上头,爱不释手,必须要推荐给大家. 上次是谁要的支付系统项目啊,帮你找到了. 这是我目前见过最好的支付系统项目.功能完整, ...

  8. 开源支付系统--龙果支付系统操作说明

    1. 商家开通支付 1.1 在用户信息页面添加用户,系统会自动生成对应的资金账户 1.2 添加支付产品 1.3 在支付产品列表添加支付方式,支付费率是支付系统用来计算商家手续费,单位:%,将支付产品上 ...

  9. vivo手机系统android9,vivo终于推送Android9.0,这几款机型你有吗?V粉们已经迫不及...

    原标题:vivo终于推送Android9.0,这几款机型你有吗?V粉们已经迫不及 随着科技的发展,现在手机的更新也是非常的快,当然现在很多人都非常在乎手机系列,因此很多手机厂商都在不断的更新手机系统, ...

最新文章

  1. SSM框架之批量增加示例(同步请求jsp视图解析)
  2. 汇编中常用的DOS系统调用功能号
  3. 静态属性、类方法、静态方法
  4. linux命令--vi,vim
  5. sqlServer对内存的管理
  6. Python操作SQLAlchemy
  7. 操作系统课程设计之磁盘调度系统的设计与实现c语言
  8. python就业班2017_2017黑马Python就业班视频教程
  9. android地图旋转监听,ArcGIS for Android示例解析之地图旋转-----MapRotation
  10. 国足0:2不敌韩国 淘汰赛将战泰国
  11. R语言中 attach()与detach(),及with()的使用
  12. 得力针式打印机第一联清晰第二联不清晰解决办法
  13. Centerface + Facenet实现视频人脸识别(附代码)
  14. 学海灯塔新增课程文件点赞、下载、排序功能
  15. 定时器(setTimeout()和setInterval())的清除问题
  16. ajax练习——聊天机器人
  17. git错误: The requested URL returned error: 403 Forbidden while accessing https://github.com/wangz/futu
  18. 前端基础(三)_JavaScript数据类型(基本数据类型、复杂数据类型)
  19. 智慧灯杆项目案例:点亮科技城市!宁波第一个5G智能路段投入使用!
  20. 基于Java日月星养老院管理系统的设计与实现

热门文章

  1. Delphi编译指令说明
  2. Log4Net配置使用简记
  3. H.264编码profile level控制
  4. Java 自动转换和强制转换
  5. Class类 获取Class对象
  6. 如何将.sof转换成.jic
  7. 在子线程中创建新的窗体,遇到的问题。
  8. .NET开发者必备的工具箱
  9. Adroid真机调试
  10. [译] 每天一段 Spring 5 官方文档(5.1.4.RELEASE)—— Spring Framework Overview 06