GL System Documentation
Enterprise-grade, API-first double-entry general ledger engine for modern financial platforms.
What is GL System?
GL System is a standalone, enterprise-grade general ledger engine that provides double-entry bookkeeping as a service. It is designed for fintech platforms, payment processors, banking systems, and any application that requires auditable, standards-compliant financial record-keeping.
Unlike embedded accounting modules, GL System runs as an independent microservice with a clean REST API. New transaction types are added through configuration (movement definitions) — zero code changes required.
Key Features
| Feature | Description |
|---|---|
| Double-Entry Bookkeeping | Every transaction produces balanced debit and credit entries. The accounting equation (Assets = Liabilities + Equity) is enforced at all times. |
| Multi-Currency | Unified registry supporting ISO 4217 (fiat), ISO 24165-1:2025 (digital tokens), stablecoins, and commodities. All amounts stored as Decimal(38,18). |
| Hash Chain Integrity | SHA-256 tamper-evident audit trail. Each journal entry is cryptographically chained to the previous, providing blockchain-equivalent immutability. |
| Config-Driven Posting | Movement definitions map event types to journal entries using formula expressions. Add new transaction types via API without code changes. |
| Event Sourcing | Immutable event store with truncate-and-replay rebuild. All ledger state is derived from events. |
| Financial Standards | ISO 8583 (card payments), ISO 20022 (banking messages), IFRS/GAAP account classification, FASB ASU 2023-08 (digital assets). |
| Multi-Tenant SaaS | Schema-per-tenant isolation, API key management, usage-based billing, and webhook delivery. |
| API-First | Full REST API with Swagger/OpenAPI documentation, JWT and API key authentication, idempotent event ingestion. |
Quick Example
Post a financial event in one API call:
curl -X POST https://api.glsystem.io/api/v2/gl/events \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"eventKey": "INV-2026-001",
"eventType": "INVOICE_PAYMENT",
"currencyCode": "USD",
"amount": "1250.00",
"entityId": "customer-42",
"occurredAt": "2026-03-28T10:00:00Z",
"attributes": {
"invoiceNumber": "INV-2026-001",
"paymentMethod": "bank_transfer"
}
}'
GL System automatically applies the matching movement definition, creates balanced journal entries, updates running balances, extends the hash chain, and fires webhook notifications.
Architecture at a Glance
Next Steps
- Getting Started — Sign up, get an API key, and post your first event in 5 minutes.
- API Reference — Complete endpoint documentation with examples.
- Core Concepts — Understand double-entry, hash chains, and event sourcing.
- Guides — Webhooks, reporting, billing, and multi-tenancy integration.
- Architecture — Technical design decisions and database schema.