Company - RHMAccounting/spring-allacc GitHub Wiki
The software needs all the details of the registered company to adapt some functions which depend on the type and size of the company. For instance the following fields are required :
- Name of company
- ID of company (SIRET in France)
- Company address (with country)
- VAT number
- Company logo
- Date of creation
- Beginning and end of fiscal year
- Director of company
- ...
Besides these above elements, some details and options must be set up by the manager to deal with scheduling tax(es) payments and other matters.
Let's see what kind of use cases we identify in this micro service :
All that matter here is the configuration parameters of a company.
How the micro service interacts iself with various functionalities...
Several entities are interacting for the whole service to work :
@DEPRECATED--------------------
Many modules will depend on this Chart of accounts, for instance adding new VAT entries will involve modification(s) of the chart.
Another important module is integrating the chart for proper rendering : the accounting journal. But there are other features belonging to a company and a few of them will be gathered inside a unique module names : MyEnterprise.
This module will depend on the Chart of accounts, it's designed to allow the end user to add simple configuration details such as the different currencies the enterprise is using or the different VAT and other taxes in use.
Currency settings
At any time, the end user is allowed to add new currency to the list. An identification number is thus generated and when adding new entries within the journal, the new currency will be available.
-
functions used :
Adding currency Editing currency Removing unused currency
VAT settings
VAT details can be added inside this module, each entry is directly linked to the chart of accounts as it's being used by most company events.
-
functions implemented :
Adding VAT details Editing details Removing unused VAT entry
Other Taxes
Same functions are defined for other taxes such as custody or whatever tax you may need to add. Proper chart account is required too.
A company is usually having a bank account in order to live so we need to define a module where the system handles bank account settings. For instance, a company can have multiple bank accounts and each one is refering to a specific chart of account entry. Besides, the bank module is being shared for our contact module we will cover later.
An enterprise might need to add details at the top and bottom of their documents and a specific section will be available for such purpose (logo, notes...).
Within the Chart of Acccounts module will sit basic functionalities such as :
- Adding new account
- Edition of existing account (only the description)
- Deletion of existing account (if and only if it's not used by another module)