Swiss SME Account System Structure
Swiss SME Account System Structure
Abstract Hierarchy & Subledgers
While the Chart of Accounts (above) defines the banking logic, the actual volume of data resides in Subledgers.
Control vs. Subledger
- Control Ledger: Structural. Defines policies (overdraft, currency, type).
- Subledger: Transactional. Holds actual customer balances. It inherits its configuration from the parent Control Ledger but maintains its own available and posted balances.
Legend
- Class 1: Assets (100-199)
- Class 2: Liabilities (200-299)
- Class 3: Revenue (300-399)
- Class 4: Control Accounts (400-499)
- Class 5: Foreign Exchange movements (500-599)
- Class 7: Analytical Accounts (700-799)
Note:
- Accounts highlighted in pink are monitored on the dashboard (dashboard: true).
- Accounts highlighted in blue are system-managed accounts for funds in transit.
Chart of Accounts Structure
The CoreBanq chart of accounts follows this structure:
-
Class 1: Assets (100-199)
- Group 10: Current Assets (100-199)
- 102: Bank Accounts
- 1021: Bank Accounts Audax
- 1024: Nostro Accounts
- 102: Bank Accounts
- Group 10: Current Assets (100-199)
-
Class 2: Liabilities (200-299)
- Group 20: Short-term Liabilities (200-299)
- 220: Other Short-term Liabilities
- 2201: Public Customer Deposits
- 2203: Exempt Customer Deposits
- 220: Other Short-term Liabilities
- Group 20: Short-term Liabilities (200-299)
-
Class 3: Revenue (300-399)
- Group 30: Sales of Services (300-399)
- 310: Sales of Services
- 3101: Account Service Fees
- 3102: Transaction Fees
- 3104: Income from FX conversion
- 310: Sales of Services
- Group 30: Sales of Services (300-399)
-
Class 4: Control Accounts (400-499)
- Group 40: Control Accounts (400-499)
- 490: Funds in Transit
- 491: Suspense
- Group 40: Control Accounts (400-499)
-
Class 5: Foreign Exchange movements (500-599)
- Group 50: Foreign Exchange movements (500-599)
- 570: Foreign Exchange movements
- 5701: Foreign Exchange Losses
- 5702: Foreign Exchange Gains
- 570: Foreign Exchange movements
- Group 50: Foreign Exchange movements (500-599)
-
Class 7: Analytical Accounts (700-799)
- Group 70: Analytical Accounts (700-799)
- 710: Receivable from Nostro accounts
- 711: Revaluation: Receivables from Nostro SECB EUR
- 720: Audax's Funds in Nostro accounts
- Group 70: Analytical Accounts (700-799)
Funds in Transit Accounts
Group 49 contains system-managed accounts for tracking funds in transit between ledgers:
-
490: Funds in Transit
- 4901: Funds in Transit (CHF) - Holds CHF funds during transfers
- 4902: Funds in Transit (EUR) - Holds EUR funds during transfers
- 4903: Funds in Transit (USD) - Holds USD funds during transfers
-
491: Suspense Accounts
- 4911: Suspense CHF - For holding CHF funds pending allocation
- 4912: Suspense USD - For holding USD funds pending allocation
- 4913: Suspense EUR - For holding EUR funds pending allocation
These accounts are automatically used by the system during the two-phase transfer process:
- In the first phase, funds are debited from the source ledger and credited to the appropriate transit account
- In the second phase, funds are debited from the transit account and credited to the destination ledger
This approach ensures proper double-entry accounting and provides clear visibility into funds that are in transit at any given time.
See also
Banking-Specific Accounts
For banking operations, the following accounts are particularly important:
- 102: Bank Accounts (including nostro accounts)
- 490: Funds in Transit accounts (for tracking transfers between ledgers)
- 220: Short-term Liabilities (including customer deposits)
Customer Deposit Monitoring
The accounts highlighted in pink are specifically monitored for the deposit insurance cap:
- 2201: Public Customer Deposits
Flexible Ledger Identification
The ledger system supports multiple identification methods to provide flexibility in how ledgers are referenced across different systems and interfaces:
-
UUID-based Identification: Primary identification method using UUID v4 format
- Example:
"ledger_id": "550e8400-e29b-41d4-a716-446655440000" - Used in system-to-system integrations and as the primary key in the database
- Example:
-
Code-based Identification: Alphanumeric codes for accounting purposes
- Example:
"ledger_code": "102411"(for Nostro SNB CHF) - Follows the chart of accounts numbering scheme
- Easier for human readability and accounting reports
- Example:
-
Numeric ID Identification: Sequential numeric identifiers
- Example:
"ledger_num_id": 102411 - Useful for legacy system integration and numeric-only interfaces
- Example:
When using the API, you can choose any of these identification methods. The system will resolve the ledger using the following precedence:
- UUID (highest priority)
- Code (if UUID not provided)
- Numeric ID (if neither UUID nor code provided)