payment相关逻辑

付款有手动付款和计划程序自动付款两种,照例先列出涉及到的概念

付款方式 - PaymentTypes - 现金,支票,信用卡,等等
记账类型 - Ledger_AccTransTypes - 涉及到金钱往来的都需要记账,简单说就是收到的钱和支出的钱作何用途

手动付款

支持的付款方式有EFT,CC,Agent Sweep,Check,Money Order和Cash,有相应的权限才可以使用对应的付款方式。在Quote绑定和Policy的Insured Info tab中都可以进入付款页面。手动付款的大致过程是这样的:

  1. 填写付款金额
  2. 选择付款方式
  3. 填写选定的付款方式下的账号信息以及账单的地址信息
  4. 如果选择了EFT或者CC
    1. 获取accounting date, Bill Code 没有就生成一个,这个code只是存入了Policy和Payment Process表中,不知道有什么其他用途
    2. 需要手续费的在总金额中加入手续费
    3. 调用solupay,如果不成功就显示付款不成功页面
    4. 付款成功会添加accounting记录,也就是记账信息,有手续费的要分开记录成两条记账信息, 对应的记账类型如下:
      1. PMT_OCC Invoice Premium - Online Credit Card Payment -> Credit Card
      2. PMT_EC Invoice Premium - Electronic Check Payment -> EFT/EC, 注意这里和自动扣款有些区别
      3. CON_FEE Invoice Convenience Fee -> 手续费
    5. 将付款的相关信息保存以供自动付款适用 - Policy_PaymentProcess
    6. Over
  5. 其他的付款方式暂不介绍

自动付款

自动付款需要Policy有多个待支付分期账单,而且有支付历史,并且保存了相应的账号信息。支持的付款方式有EFT/EC(Electronic Check)和CC(Credit Card)
CC记账类型 - PMT_OCC Invoice Premium - Online Credit Card Payment
EFT/EC记账类型 - PMT_ACH Invoice Premium - ACH Payment
自动付款的过程:

  1. 找到自动设置了自动付款的Policy下的待支付的Bill,以及对应的最新付款账号信息,TODO这是啥? NSF=0,DueDate<处理时间
  2. 从Policy_PaymentProcess获取保存的账号信息,和手动付款不同之处
  3. 后面的和手动付款基本一样,调用接口,添加记账信息
  4. Over

修改付款信息

从policy action页面我们可以进入修改自动付款信息页面,选择付款方式,填写好账号信息保存,后台会利用新的账号信息调用付款接口验证账号的合法性。成功后将所有的老记录失效,插入一条新的payment process记录,下次自动付款便会使用它。

Agent Sweep付款方式:

Agency的账户给保险公司,客户的钱直接交给agency,保险公司直接从账户扣除所需的保费。
手动付款选择Agent Sweep之后,会添加记账信息,schedule一个付款任务到agentsweep表,然后有dts去跑,调用付款接口

Solupay付款接口

solupay wiki
接口支持action参数,包括根据付款账号信息注册solupay账号,获取已注册账号token,更新注册信息,自动扣款,退款。
所有的付款结果都将保存到这里Merchant_Responses。付款报错就来这里查。entry id 为0的agent sweep的sst加入的,为2的是自动扣款sst加的,其他的则是对应的用户手动付款的。

PolicyData_Bill

账单分期信息都在这里,付款、退款、保费变化,将重新计算账单,top down类型的费用在最近bill一次性收取,event spread费用平摊到剩下的所有的未支付bill中。TODObill变动如何计算,如何adjustment.
任何影响accounting的操作都将引起recalculate bill,但是这个是底层封装的,无从知道更细节的逻辑。

ACH Payment

不知道是否准确
abbr. 自动化交易所(Automated Clearing House)
将付款信息按如下的格式保存为文本文件


posted @ 2017-02-14 21:45 by Mark

Payment相关逻辑相关推荐

  1. SAP MM 中级之事务代码MICN的相关逻辑

    SAP MM 中级之事务代码MICN的相关逻辑 1, 事务代码MICN的初始界面: 2, 相关逻辑说明.OSS note 518418 2.1), In principle, the program ...

  2. kotlin实现的简单个人账户管理APP(三) 自定义View仿支付宝的密码输入框/密码相关逻辑

    转载请注明出处:http://blog.csdn.net/a512337862/article/details/78874322 前言 1.本篇博客相关的项目介绍请参考基于kotlin实现的简单个人账 ...

  3. 【Unity植物大战僵尸】阳光点击的效果及相关逻辑实现(三)

    目录 7.UI管理和游戏管理并实现阳光数量显示 8.阳关点击事件实现,并累加阳光值 9.点击后阳光飘到阳光UI处消失 测试(由于动图帧数原因,阳光移动效果不明显) 7.UI管理和游戏管理并实现阳光数量 ...

  4. 架构设计-业务逻辑层简述

    业务逻辑层是专门处理软件业务需求的一层,处于数据库之上,服务层之下,完成一些列对Domain Object的CRUD,作为一组微服务提供给服务层来组织在暴露给表现层,如库存检查,用法合法性检查,订单创 ...

  5. onmounted vue3_基于项目时间阐述vue3.0新型状态管理和逻辑复用方式

    作者:Mingle 转发链接:https://mp.weixin.qq.com/s/iOq-eeyToDXJ6lvwnC12DQ 前言 背景:2019年2月6号,React 发布 「16.8.0」 版 ...

  6. SAP UI5 manifest.json 和 i18n 多语言文本的解析逻辑

    正则表达式: {{foo}} 在 sap.ui.core.Component.js 里,执行 loadManifests 进行加载: 我们的 controller extensions 在这里也能看见 ...

  7. lua——赢三张牌型处理相关算法(中)——牌型判定

    赢三张的牌型大题分为6种:单牌<对子<顺子<同花<同花顺<豹子. CardType = {UNDEFINE=0, --单牌DUI_ZI =1, --对子SHUN_ZI = ...

  8. ASP.NET Web Game 构架设计3--业务逻辑服务器之计时器

      ASP.NET Web Game 构架设计3--业务逻辑服务器之计时器   业务逻辑服务器里主要包括以下四个模块 u          计时服务器 u          资源服务器 u       ...

  9. sqlserver leftjoin出现重复数据_数据库存数据时,逻辑上防重了为啥还会出现重复记录?...

    在很多异常情况下,比如高并发.网络糟糕的时候,数据库里偶尔会出现重复的记录. 假如现在有一张书籍表,结构类似这样 +----+--------------+ | id | name | +----+- ...

  10. layui数据表格如何获取id_LayUI之table数据表格获取行、行高亮等相关操作

    前言 目前LayUI数据表格既美观有不乏一些实用功能.基本上表格应有的操作已经具备,LayUI作者[贤心]肯定是煞费苦心去优化,此处致敬.但是实话实话,如果单纯那数据表格功能来说,EasUI的数据表格 ...

最新文章

  1. 图解|什么是高并发利器NoSQL
  2. 思科预计全球云数据流量将以66%的混合年增长率递增
  3. 《剑指offer》二叉树镜像
  4. Vue中集成高德地图API实现定位与自定义样式信息窗体
  5. (十三)洞悉linux下的Netfilteramp;iptables:为防火墙增添功能模块【实战】
  6. fread函数和fwrite函数,read,write
  7. python vtk_VTK在python环境下的安装和调用
  8. 详解两阶段3D目标检测网络PVRCNN:Point-Voxel Feature Set Abstraction for 3D Object Detection
  9. 给i茅台APP提几个建议
  10. spark指定python版本_1.Spark学习(Python版本):Spark安装
  11. 全新Wijmo5中文学习指南正式上线
  12. 多小区下小区上行速率的计算(3)
  13. 记住不要把Bitmap往List等集合放
  14. WiFi共享二维码自动生成
  15. 使用驱动器中的光盘之前需要将其格式化怎么办,使用驱动器中的光盘之前需要将其格式化寻回方法
  16. Springboot 集成 Camunda
  17. tweenMax代码未定义问题
  18. 005-2-Python文件操作
  19. Axure RP9 安装教程
  20. 直线二阶倒立摆之数学建模

热门文章

  1. Linux代理配置_wuli大世界_新浪博客
  2. Squid安装及运行控制_wuli大世界_新浪博客
  3. Excel——输入身份证号后三位显示为0的问题
  4. [面试题]1000瓶毒药里面只有1瓶是有毒的,问需要多少只老鼠才能试出那瓶有毒。
  5. 运维堡垒机—如何解决企业运维操作审计问题?
  6. 对话「平衡车之父」:把Solowheel带回中国
  7. 深度学习经历过程(caffe学习过程)
  8. linux马达驱动程序,一种Linux系统的微型针式打印机及其驱动方法与流程
  9. mysql水仙花数,水仙花数_水仙花数c语言程序
  10. 计算机组成原理A原是什么,计算机组成原理(A).doc