Configuration Reference

Reference for the current oxide-banking config layout and defaults.

Reference for the current oxide-banking config layout.

Config File Map

FilePurpose
config/config.luaGeneral settings, interaction, security, time, cards, business, transfer delays, and debug settings
config/accounts.luaTier definitions, account types, and savings goal categories
config/loans.luaLoan products, approval rules, late fees, collections, and vehicle-loan display types
config/interest.luaInterest, investments, market simulation, and certificates of deposit
config/fees.luaTransaction, maintenance, overdraft, service, and waiver rules

General Settings

File: config/config.lua

SettingTypeDefaultDescription
Config.DebugbooleanfalseEnables debug logging
Config.UseTargetbooleantrueUses o-link.target for bank/ATM interaction; false uses proximity fallback
Config.ATMModelsstring[]4 modelsATM object models used for detection and targeting
Config.BankLocationstable[]8 locationsBank interaction points and labels
Config.Blips.enabledbooleantrueEnables map blips for configured banks

Security

File: config/config.lua

SettingDefaultDescription
Config.Security.Enable2FAtrueEnables 2FA flow for large transactions
Config.Security.TwoFactorThreshold50000Amount that starts requiring 2FA
Config.Security.MaxLoginAttempts3Failed PIN attempts before lockout
Config.Security.LockoutDuration300Lockout duration in seconds
Config.Security.EnableFraudDetectiontrueEnables suspicious transaction checks
Config.Security.SuspiciousTransactionAmount100000Threshold for suspicious transaction flagging
Config.Security.EnableTransactionAlertstrueEnables bank transaction notifications
Config.Security.AlertThreshold10000Minimum amount for alerts

Scheduling And Time

File: config/config.lua

Config.TimeSettings still controls banking intervals and payout timing, but the current scheduler code uses server wall-clock time and an internal day counter rather than reading an external weather-sync resource.

SettingDefaultDescription
Config.TimeSettings.UseInGameTimetrueRetained config flag; current scheduler still falls back to server time behavior
Config.TimeSettings.InterestPayoutHour0Hour used for daily task processing
Config.TimeSettings.SavingsInterestInterval1Savings interest interval in banking days
Config.TimeSettings.LoanPaymentInterval7Loan processing interval in banking days
Config.TimeSettings.InvestmentUpdateInterval1Market update interval
Config.TimeSettings.RecurringPaymentCheck1Recurring payment processing interval
Config.TimeSettings.DaysPerYear28Banking calendar length used for calculations

Cards, Notifications, Logging, And Transfers

File: config/config.lua

Cards

Config.Cards controls card order cost, replacement cost, PIN length, per-account limits, shared-account card permissions, and cleanup retention for cancelled cards.

Important defaults:

  • OrderCost = 50
  • ReplacementCost = 100
  • PinLength = 4
  • MaxCardsPerAccount = 2
  • ShowAccountBalanceInSelector = false
  • AllowPINChange = true
  • AllowFreeze = true
  • AllowCancel = true
  • AllowReplacement = true

Notifications

SettingDefault
Config.Notifications.Positiontop-right
Config.Notifications.Duration5000

Logging

SettingDefaultDescription
Config.Logging.EnabledtrueEnables banking logging
Config.Logging.WebhookName'banking'Webhook channel/key used by the logging layer
Config.Logging.LogTransactionstrueTransaction log toggle
Config.Logging.LogLoanstrueLoan log toggle
Config.Logging.LogAccountChangestrueAccount/admin change log toggle
Config.Logging.LogSecurityEventstrueSecurity log toggle

Transfer delays and transaction caps

Config.TransferDelays controls delayed transfer behavior for internal, external, and wire transfers.

Config.Transactions caps individual deposit, withdrawal, and transfer amounts at 10000000 by default.

Account Tiers And Account Types

File: config/accounts.lua

Tiers

Config.AccountTiers currently ships with:

  • basic
  • premium
  • business

Each tier defines:

  • label and description
  • monthly fee
  • interest rate
  • max shared accounts
  • daily withdraw and transfer limits
  • feature flags
  • requirement rules

Account types

Config.AccountTypes currently includes:

  • checking
  • savings
  • shared
  • job
  • gang

These values are part of the data model and work identically across all supported frameworks (QBCore, QBX, ESX) through o-link.

Savings goals

Config.SavingsGoals defines max goals per player and the category list used by the UI.

Loans

File: config/loans.lua

Core loan settings

SettingDefault
Config.Loans.enabledtrue
Config.Loans.maxActiveLoans3
Config.Loans.dailyLoanLimit2
Config.Loans.gracePeriod1
Config.Loans.minimumInterestRate0.01

Built-in products

Current built-in products:

  • personal
  • business
  • emergency

Each product defines:

  • amount range
  • base interest rate
  • term options
  • eligibility requirements
  • collateral usage
  • optional instant-approval behavior

External loan types

Config.Loans.externalTypes is used for externally managed loan records that still appear in the bank UI. The shipped config includes vehicle.

Approval, late fees, and collections

The file also defines:

  • Config.CreditScoreRateModifiers
  • Config.LatePayment
  • Config.Loans.collections
  • Config.LoanApproval

Notable collection settings include wage garnishment, asset seizure support, and optional collateral handler resource configuration.

Interest, Investments, And CDs

File: config/interest.lua

Interest

Config.Interest controls:

  • enabled state
  • simple vs compound calculation
  • daily vs weekly payout frequency
  • minimum balance
  • max payout cap
  • account-type-specific rate overrides

Investments

Built-in investment products:

  • savings_bond
  • stock_index
  • crypto_fund
  • real_estate

The file also defines dividend defaults and market simulation behavior such as trend duration, crash chance, boom chance, and momentum carry-over.

Certificates of deposit

Config.CertificatesOfDeposit.products currently includes:

  • cd_short
  • cd_medium
  • cd_long

Each product defines term length, interest rate, min/max deposit, and early withdrawal penalty.

Fees

File: config/fees.lua

Config.Fees covers:

  • ATM fees
  • wire transfer fees
  • external transfer fees
  • expedited transfer fees
  • maintenance fees
  • service fees
  • overdraft fees
  • insufficient funds fees
  • late payment fees

Config.FeeWaivers defines waiver rules for premium tier, business tier, and high-balance customers.

Config.FeeDescriptions provides UI-facing labels for fee keys.

Debug Settings

File: config/config.lua

SettingDefaultDescription
Config.DebugSettings.AllowInProductionfalsePrevents debug mode from being enabled casually on production servers
Config.DebugSettings.AutoTimeoutMinutes30Auto-disables debug mode after the configured duration
Config.DebugSettings.RequireGodModefalseReserved setting; not used by the current implementation