复式记帐数据库设计/架构

时间:2019-08-27 15:26:19

标签: mysql sql database accounting

我目前正在学习如何为PayPal或PayTim等支付系统设计会计数据库。在我的一个项目中,我无法弄清楚如何以及在何处应用两次输入模式,因为我了解到这在会计中非常重要

因此,我的项目旨在像PayPal一样用于学习目的。我创建了一些表,例如:

  1. payments_table -用户用来支付服务或发送给某人的每笔付款都存储在哪个商店中(存储系统内流通的钱)。
  2. transfers_in_table -存储来自Visa / MasterCard 的每笔交易(记录系统中存入的钱)
  3. withdrawals_table -存储用户提取的所有资金。 (存储从系统中取出的钱)
  4. transfers_out_table -存储已被用户成功提取的钱。

因此,当user1向某人付款或为某项服务付款时(比如说user2),流程将类似于

用户1 ->签证->我的项目-> 用户2 -> 一些费用->银行。

在这种情况下如何实现重复输入,不要忘了我也需要将提取的费用存储在数据库中,以便每次计算都能平衡? 我当时在考虑再使用一个表格分类帐,但我不认为这是一个很好的解决方案。

表格摘要

payments_table - id,amount, and userId(FK)
transfers_in_table - id,amount and paymentId(FK)
withdrawals_table - id,amount and userId(FK)
transfers_out_table - id,amount and withdrawalId(FK)

0 个答案:

没有答案