Developer reference
Database responsibilities
Map storage groups to money, plans, context, evidence and authorization.
The database stores several kinds of facts. A setup record, source row and completed movement have different effects even when all are persisted.
Responsibility map
| Group | Responsibility |
|---|---|
| Accounts and institutions | Where money is held or owed and which institution serves it. |
| Transactions and entries | Balanced actual financial movements. |
| Counterparties and loans | People and agreements behind money. |
| Income sources, events and obligations | Expected plans and context. |
| Categories and tags | Spending vocabulary and independent labels. |
| Identities | Persistent real-world matters across movements. |
| Gameyyas | Rotating savings arrangements and schedule context. |
| Settlements | Matching payment evidence to a planned matter. |
| Imports and stored SMS | Source evidence, reviewed interpretation and durable processing. |
| Preferences and API tokens | User choices and integration authorization. |
Follow the actual effect
A stored bank message does not automatically create a transaction. An income source does not record salary. A physical card identifies a payment instrument rather than another balance.
For a fictional EGP 150 purchase, entries determine the money, while category and matter links explain the same movement. Those links do not double the amount.
Authorization state
Private session and consistency tables support server behavior. Do not expose their whole rows to a browser or grant broad access as an integration shortcut.
Use concept relationships and controlled financial functions before implementing a service around these groups.