文档章节

电子商务系统的设计与实现(五):账务系统的功能接口设计

FansUnion
 FansUnion
发布于 2015/10/22 10:29
字数 600
阅读 33
收藏 1
电商系统、p2p网贷系统、第三方支付都可以有自己的账务系统,
账务系统与用户系统可以完全独立,不需要用户ID等信息,只提供给其它系统若干接口。
服务可以用WebService的方式实现,对内提供服务非常方便,调用接口,就要调用普通的API一样。
也可以做成HTTP的方式,外部使用相对麻烦一些。
疑问:WebService提供的接口,可以直接用HTTP的方式调用么?


账务系统的功能接口设计


1.开户

  可选输入:用户ID、账户资金类型(人民币、美元)
  功能描述:创建一个账户。
  理论上不需要存入用户的ID,因为账务系统和用户系统是比较独立的。
  
  当然也可以存入用户ID,方便查询。
  另外,构造账户号的时候,可以把用户ID作为账户号的一部分。


2.交易
  充值:为一个账户增加一笔钱。
  提现:从一个账户减少一笔钱。
  转账:把一个账户中的钱,转移到另外一个账户。
  批量转账:转账的增强版。
  冻结资金:把一个账户的资金,冻结一部分,可用余额会减少相同的数额。
  解冻资金:把一个账户的资金,解冻一部分,可用余额会增加相同的数额。


3.冻结账户/解冻账户
  冻结;把一个账户给冻结了,冻结的账户可能无法进行提现等操作。
  解冻:把账户从冻结状态,变为正常状态。


4.查询
 基本信息查询:查询一个账户的总金额、可用余额、冻结余额等信息。
 批量查询:查询多个账户的金额等信息。
 开户-冻结账户-解冻账户
 冻结资金、解冻资金等日志
 交易明细:包含了充值、提现、交易等所有的账户资金变动日志。
 

 补充:一次购物消费,交易行为只会记录一条,而做账需要2条记录,借和贷。

CSDN2014博客之星评选,帮小雷投一票吧

http://vote.blog.csdn.net/blogstar2014/details?username=fansunion

版权声明:本文为博主原创文章,未经博主允许不得转载。

© 著作权归作者所有

共有 人打赏支持
FansUnion
粉丝 57
博文 858
码字总数 825464
作品 0
丰台
高级程序员
【支付系统设计从0到1】深度解析支付宝产品架构

支付宝作为最老牌的支付机构,其支付系统的架构和使用的技术是很值得我们在设计与实现支付系统时作为参考的,这篇文章为大家深度解析支付宝的产品架构。 系统架构概况 支付宝的系统采用的是一...

金融民工小曾
08/26
0
0
对于账务系统开发的一点儿理解

做支付系统建设也有一段时间了,受累于各种事务性工作,一直没有沉下心好好研究和理解下其中较为核心的部分,账务便是一个。对于开发账务系统的人来说,系统的阅读和学习一些会计知识是必须的...

orpheus
2016/03/07
0
0
Java Web开发实践 - 设计需求

设计需求 1 概述 本项目要求实现一个内容销售的系统。 系统有两类用户:卖家和买家。系统只有一个卖家和一个买家,用户的账号由后台直接注入,不由本系统的功能来注册和维护。 卖家可以发布内...

抢小孩糖吃
2016/11/01
187
0
mickelfeng/mao10cms

#mao10cms http://www.mao10.com/ #推荐国内开源的8个PHP电子商城系统 在电商十分火热的情况下,除了开店各大电商企业开始建立自己的电子商务平台,在选择网络的电商平台系统的时候我们来看看...

mickelfeng
2015/10/09
0
0
支付系统0X00: 支付系统预研

date: 2017-11-19 17:12:16 title: 支付系统0X00: 支付系统预研 最近在写支付系统, 之前公司写了一版, 量级比较小, 纯同步, 应用层就简单的 api + task, 项目结构也简单: lib: 用来存放项目核...

daydaygo
2017/11/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

自定义Ubuntu/Windows双系统引导菜单主题

学习Linux自然少不了要装双系统,其中Ubuntu便是我们用的最多的Linux系统。装完双系统后,Ubuntu会自动生成grub开机引导及菜单,及其丑陋,而且很多我们用不到的选项。今天我们就介绍burg:修...

Linux就该这么学
5分钟前
0
0
Go 并发(二)

Go Mutex 通过Mutex和信道处理竞态条件。 临界区 当程序并发运行时,多个协程不应该同时访问那些修改共享资源的代码,这些修改共享资源的代码称为临界区。 Go中通过Mutex可以避免同时访问临界...

春哥大魔王的博客
7分钟前
0
0
CentOS 7安装和部署Docker

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。通过 uname -r 命令查看你当前的内核版本 uname -r3.10.0-514.el7.x86_64 1、...

狼王黄师傅
11分钟前
0
0
php扩展可以通过pecl 或者phpize 安装

pecl 算是 php 扩展的一个官方聚合平台,一些比较有名,有特点的扩展会被 pecl 收录,收录后可以通过 pecl 的方式安装。但是更多的扩展是没有收录在 pecl 上的,这些扩展还是需要通过 phpize...

bengozhong
12分钟前
0
0
CentOS中如何安装7ZIP

执行以下命令下载安装: wget http://nchc.dl.sourceforge.net/project/p7zip/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2tar -jxvf p7zip_9.20.1_src_all.tar.bz2cd p7zip_9.20.1make......

凯文加内特
17分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部