Banking - Account types
Related sub-modules
Banking - Currencies, Banking - Transfer types, Banking - Account fees, Banking - Transfer filters, Users - Products.
Description
Account types allows administrators to create member and system accounts. Accounts are used to store the currency on. All transfers are done from and to an account and this information is stored on the accounts.
Business rules
There are two sorts of account types:
- Member account type in the member product, members can get an account of a member account type. Members with this product have the same account type, but each member owns an individual account with its own balance, account history etc.
- System account type unlike the member account type there is only one system account for each system account type. This single system account is commonly managed by the administrators who have the permission for this account. Administrators can be given permissions to perform payments from the system account.
An account type is always in a Currency. If there are more currencies in the system, then for each currency there must be at least one account type, to make it possible to use the currency. Finally the maximal positive and negative account balances can be set for an account. When this is unlimited the account has no limit to go positive or negative on with the balance. When this is limited a user cannot have less then "-1000 units" or more than "500 000 units" (this is just an example).
The following (extra) tabs can be displayed for an account type:
An important thing to note is that the balance for a given account is not stored - it's calculated summing the amounts of the transfer destination minus the sum for transfers where the account is the source. Several questions arose from this approach, specially performance. It is important to say that even on systems with millions of transfers, calculating the balance does not impact in a sensible way on performance. This may, however change in the future, where caching or storing mechanisms will have to be developed.
???? What is the latest status about this ????
Per member product one member account can be enabled, in this case a lot of settings can be specified e.g. the accessibility, the payment filters, which transfer types the user may use etc. When a user has more then one product enabling the same user account type the permissions of both products are added (e.g. a user has two products enabling the same user account. The first product gives him the permission to do transfer type A, B and C. The second product gives him the permission to do transfers type C and D. Then the user is allowed to do use transfer type A, B, C and D.)
- Also the maximal negative and positive account balance can be specified. If a user has multiple products enabling the same user account type the highest values (most unrestrained) are taken (see also Account_balance_limits).
- Finally also the initial credit must be set. This is the amount transfered to the account when it is created. An account is created in the following cases:
- When a new user is created:
- If the user`s group does only have a single product enabling an account, the amount specified in that product is transferred.
- If the user`s group does have multiple products enabling an account, the highest amount specified in one of these products is transferred.
- When a new product is added to a user or to the users group:
- When the user doesn't have a product yet enabling this user account type, the initial balance amount specified in that product is transferred to the user.
- When the user does already have a product enabling this user account type, no transfer is made.
- When the user did have a product enabling this user account type in the past, then the account is not created, but activated again, therefore no transfer is made.
- When a new user is created:
Notifications
N/a.
Page: Account types list
Security
Roles:
- Admin
View permission:
Other permission:
Page sections
Search page (filters)
| Fields | Type | Rules |
| Keywords | TextField | Text to be used in the full text search. |
| Currency | Single selection | Show currencies the admin has acces to
|
| Type | Single selection (radio) | All, system or member account type
|
| New | Multi Action button | Multi action button that lists the possible natures ("Member account type" or "System account type") for the creation of a account type. |
Search result (list *)
* Automatically shows all account types, sorted alphabetically first by currency then by type and finally by name (due to technical reasons first the uppercase then lowercase names are shown).
| Fields | Type | Rules |
| Name | Text (read only) | The name of the account type. |
| Currency | Text (read only) | The currency of the account type. |
| Type | Text (read only) | The nature of the account type ("Member" or "System"). |
| Remove | Action button | Removes the account type.
|
| "Row" | "Row" | Clicking on the row will open the account type details page. Here are the following new tabs:
|
Page: Account type details
Security
Roles:
- Admin
View permission:
Other permission:
Page sections
Details page
| Fields | Type | Rules |
| Name | Text |
|
| Description | Text area |
|
| Currency | At creation:
When editing:
|
|
| Freeze maturity on accounts | At creation:
When editing:
|
|
| Account balance limit type | At creation:
When editing:
|
Options: "Limited" and "Unlimited".
|
| Maximal negative account balance | Negative decimal |
|
| Maximal positive account balance | Positive decimal / Boolean |
|
| ?????? Card number format ?????? | Text |
Examples of possible formats:
Same widget is used for card numbers, when inserting a new account it check all accounts (of all types) if this number is unique. |