FIREFLO_CONFIG_SOURCE=db, the gateway reads four domains from PostgreSQL instead of files:
properties, credentials, routing and rates.
Accounts, logins and products
Money
balance has exactly one writer — the gateway’s recharge poll. The panel writes ledger rows and
never the balance column.
Routing
A rule referencing a missing or disabled filter is skipped entirely rather than loaded with fewer
conditions — dropping conditions would silently widen the rule.
Approvals and TLVs
Both
app_header and app_template carry an approval status (V1.19.0) — only APPROVED rows are
loaded. A pending row behaves exactly as if it did not exist.
Workers and settings
The three-tier resolution is
outSms.instance.<name>.<key> → outSms.default.<key> → the coded
default. Not every setting can be scoped to one listener — one that cannot silently reads a global
nobody sets.
Audit
Operator access is logged to a file in the panel’s data folder rather than to this table.
Migrations are forward-only
Flyway,V1.19.0__baseline.sql onward. There is no down-migration — the rollback path is a
restore, so take the backup before applying, not after.
Related
Call record tables
The traffic and money half of the schema.
Database configuration
Connecting the gateway, and the db-mode switch.