Home › Documentation › Configuration · origen_billing
All configurable options live in config.lua (client + server shared) and svconfig.lua (server-only, Discord logs). Both files are in escrow_ignore — edit freely.
| Variable | Default | Description |
|---|---|---|
Config.Debug | false | Print debug messages to the server console |
Config.Language | 'en' | Locale file to load from locales/. Options: 'en', 'es' |
Config.MaxPendingInvoices | 10 | Maximum number of pending invoices a player can have at once |
Config.InvoiceDistance | 3.0 | Maximum distance (game units) the biller must be from the target to issue an invoice in-person |
Config.ExpirationDays | 30 | Reserved for future use — not enforced in the current version |
| Variable | Default | Description |
|---|---|---|
Config.BankingProvider | 'auto' | Banking resource to use. 'auto' picks the first detected running resource |
Config.NotifyProvider | 'auto' | Notification resource to use. 'auto' picks the first detected running resource |
Valid values for Config.BankingProvider: 'auto' · 'qb-banking' · 'renewed-banking' · 'fd_banking' · 'kartik-banking' · 'okokBanking' · 'tgg-banking' · 'tgiann-bank' · 'wasabi_banking' · 'qb-management' · 'custom'
Valid values for Config.NotifyProvider: 'auto' · 'ox_lib' · 'origen_notify' · 'brutal_notify' · 'okokNotify' · 'mythic_notify' · 'lation_ui' · 'r_notify' · 't-notify' · 'wasabi_notify' · 'pNotify' · 'FL-Notify' · 'ZSX_UIV2' · 'custom'
Config.Commands = {
OpenBilling = 'billing', -- Standard employee panel
OpenBillingAdmin = 'billingadmin', -- Global admin panel (staff only)
}Changes require restarting the resource.
Config.AuthorizedJobs defines the initial jobs inserted into the database on first start. Jobs that already exist in the database are not overwritten.
Config.AuthorizedJobs = {
['police'] = {
label = 'LSPD',
societyAccount = 'police',
canInvoice = true,
isBoss = function(source, jobName)
return Custom.isJobBoss(source, jobName)
end,
commission = 90.0, -- % of net amount paid to the author
societyLoss = 80.0, -- % deducted from total before commission
},
}Given a $1,000 police invoice with societyLoss = 80 and commission = 90:
| Step | Calculation | Result |
|---|---|---|
| Net amount | 1000 − (1000 × 80%) | $200 |
| Author commission | 200 × 90% | $180 → author's bank |
| Society deposit | 200 − 180 | $20 → society account |
After the resource has started once, use /billingadmin to manage jobs. Changes to Config.AuthorizedJobs only apply to jobs that do not yet exist in the database.
svconfig.lua)return {
enabled = true,
webhooks = {
['invoice-created'] = 'YOUR_WEBHOOK_URL',
['invoice-paid'] = 'YOUR_WEBHOOK_URL',
['invoice-cancelled'] = 'YOUR_WEBHOOK_URL',
['commission-paid'] = 'YOUR_WEBHOOK_URL',
},
}Set enabled = false to disable all Discord logging.