-
Notifications
You must be signed in to change notification settings - Fork 6
Description
@DavoudTaghawiNejad and I have been discussing and decided that Inventory and Accounting are different services.
Inventory is a collection of Items which can be Good or Contract (as in the original design of the ESL).
Accounting is a way to keep track of balances. The link between an inventory and an accounting system is valuation. For example, a Balance Sheet should be part of an accounting system, but not of an inventory.
InventoryAPI will include operations to add and remove items, and queries to obtain items. AccountingAPI will include queries only, such as get asset value, get equity value, get value of items according to predicate P, etc.
The main technical challenge is how to keep the accounting and inventory systems coherent. They are coherent when all valuations of items are up to date. One option is to have every accounting system provide a function consolidate which will somehow iterate through the inventory and update the balances according to the potentially modified valuations of all items.
Any discussion on inventories, accounting and valuation here please!