Where money comes from and goes
- Added
- Updated
Money flows record balance changes reported by the framework, grouped by transaction reason. Issuance and destruction are classified explicitly through config/sv_config.lua → flows.classifications.
| Kind | Meaning |
|---|---|
faucet | Newly issued currency, such as a paycheck or reward |
sink | Destroyed currency, such as payment to an NPC shop |
transfer | Transfers between players or other holders |
internal | Internal movements, such as cash to bank |
unknown | Unmapped reasons or movements that could not be classified |
config.flows.classifications = {
["paycheck"] = "faucet",
["npc-shop"] = "sink",
["player-transfer"] = "transfer",
["bank-deposit"] = "internal",
}
Use the exact reason strings reported by your framework. Classification changes apply to new records; existing history is not reclassified. Unclassified movements are displayed separately from issuance and destruction.
Storage and aggregation
The admin settings use flows.interval for flush frequency, flows.jobs.enabled for job totals and flows.live.enabled for updates before the next flush. Unflushed changes are lost on restart. Restart when turning flows.enabled or flows.live.enabled on.
Collection requires framework money-change events: qb/qbx are supported, ESX depends on the build and ox_core has no suitable event. Missing reasons use unknownReason; reasons beyond the configured cap use otherReason.
Economic analysis separates classified issuance/destruction from unclassified movement and displays observation coverage and comparison periods.
