Skip to content

Configuration

ARS Banking is configured through config.lua. This page documents the verified settings and what each one changes.

  1. Core Settings
  2. ATM Settings
  3. Bank Locations and Blips
  4. Card System
  5. Savings Account
  6. POS System
  7. Loan Settings
  8. Investments
  9. Admin Permissions
  10. Compatibility Layer
  11. ATM Currency Display
Config.DebugMode = false
Config.Framework = 'qb' -- 'esx', 'qb', or 'qbx'
Config.UseTarget = true
Config.MaxAccounts = 2
Config.ATMMaxWithdraw = 50000
Config.MaxTransferAmount = 1000000
Config.MaxTransactionAmount = 999999999
Config.BankingDataRetentionMonths = 6
Config.UseBankCards = true
Config.PreventStolenCardAccess = true
Config.PosRequestDistance = 3.0
Setting Default Description
DebugMode false Enables debug logging.
Framework 'qb' Selects the active framework: ESX, QBCore, or QBX.
UseTarget true Uses target interaction when a supported target resource is present.
MaxAccounts 2 Maximum personal/shared accounts a player can open.
ATMMaxWithdraw 50000 Maximum amount per ATM withdrawal.
MaxTransferAmount 1000000 Maximum amount for external transfers.
MaxTransactionAmount 999999999 Hard cap for a single transaction.
BankingDataRetentionMonths 6 Keeps only the latest N months of statements and POS history. Set to 0 to disable cleanup.
UseBankCards true Requires a physical bank_card for ATM access.
PreventStolenCardAccess true Blocks stolen-card access when enabled.
PosRequestDistance 3.0 Maximum distance between the employee and customer for POS requests.
Config.ATMModels = { 'prop_atm_01', 'prop_atm_02', 'prop_atm_03', 'prop_fleeca_atm' }

Defines which GTA V prop models are treated as ATMs.

Config.ATMDUI = {
Enabled = true,
LoadTextureDistance = 40.0,
InteractionDistance = 1.5,
ButtonProximity = 0.027,
PresetWithdrawAmounts = { 50, 100, 200, 500, 1000, 2000 },
}
Setting Default Description
Enabled true Enables DUI-based ATM screens.
LoadTextureDistance 40.0 Distance at which ATM textures start loading.
InteractionDistance 1.5 Distance at which the ATM can be interacted with.
ButtonProximity 0.027 Screen-space hover threshold for ATM buttons.
PresetWithdrawAmounts { 50, 100, 200, 500, 1000, 2000 } Preset withdraw amounts on the ATM screen.
Config.ATMBlips = {
Enabled = true,
Sprite = 277,
Color = 2,
Scale = 0.4,
RenderDistance = 150.0,
ClusterDistance = 10.0,
UpdateInterval = 2500,
AsShortRange = true,
}
Setting Default Description
Enabled true Shows ATM blips on the map.
Sprite 277 Blip sprite ID.
Color 2 Blip color.
Scale 0.4 Blip size.
RenderDistance 150.0 Maximum distance for visible ATM blips.
ClusterDistance 10.0 Merges nearby ATMs into one blip.
UpdateInterval 2500 Refresh interval in milliseconds.
AsShortRange true Keeps the blip short range.

Config.Locations defines the bank branch coordinates. The default config includes 8 locations.

Config.BlipInfo = {
name = locale('bank_blip_name'),
sprite = 108,
color = 2,
scale = 0.8,
}
Setting Default Description
name Locale bank_blip_name Label shown on the bank blip.
sprite 108 Bank icon sprite ID.
color 2 Blip color.
scale 0.8 Blip size.
Config.CardSystem = {
maxPrepaidCards = 3,
maxCreditCards = 3,
prepaidMaxBalance = 50000,
debitExpiresYears = 5,
prepaidExpiresYears = 4,
creditExpiresYears = 4,
renewalFee = 250,
expiryWarningDays = 30,
cashAdvanceFeePercent = 0.03,
replacementFee = 500,
replacementFeeCredit = 1000,
freeReplacements = 0,
mainCard = {
label = 'Debit Card',
network = 'Maze',
variantCode = 'debit-standard',
weeklyFee = 0,
},
prepaidCard = {
label = 'Prepaid Card',
network = 'Maze',
variantCode = 'prepaid-standard',
weeklyFee = 50,
},
}
Setting Default Description
maxPrepaidCards 3 Maximum prepaid cards per player.
maxCreditCards 3 Maximum credit cards per player.
prepaidMaxBalance 50000 Maximum prepaid card balance.
debitExpiresYears 5 Debit card expiry period.
prepaidExpiresYears 4 Prepaid card expiry period.
creditExpiresYears 4 Credit card expiry period.
renewalFee 250 Fee to renew an expired card.
expiryWarningDays 30 Days before expiry that the warning appears.
cashAdvanceFeePercent 0.03 Fee for credit card cash advances at ATMs.
replacementFee 500 Replacement fee for debit and prepaid cards.
replacementFeeCredit 1000 Replacement fee for credit cards.
freeReplacements 0 Number of free replacements per card.
Variant Code Limit Weekly Fee
Classic classic $5,000 $100
Gold gold $15,000 $200
Black black $50,000 $500
Config.CardSystem.creditPayments = {
enabled = true,
minPaymentType = 'percent',
minPaymentPercent = 5,
minPaymentFixed = 50,
autoPayEnabled = true,
autoPayTime = '03:00',
autoPayDefaultMode = 'fixed',
autoPayDefaultPercent = 5,
autoPayDefaultAmount = 100,
}
Setting Default Description
enabled true Enables credit card payments.
minPaymentType 'percent' Uses a percentage or fixed minimum payment.
minPaymentPercent 5 Minimum percent payment when the type is percent.
minPaymentFixed 50 Minimum fixed payment when the type is fixed.
autoPayEnabled true Enables automatic card payments.
autoPayTime '03:00' Time of day for auto-pay.
autoPayDefaultMode 'fixed' Default auto-pay mode.
autoPayDefaultPercent 5 Default auto-pay percent.
autoPayDefaultAmount 100 Default auto-pay amount.
Config.SavingsAccount = {
Enabled = true,
InterestRate = 0.02,
CompoundInterval = 'weekly',
MaxBalance = 5000000,
MinimumDeposit = 100,
MaxAccountsPerPlayer = 1,
}
Setting Default Description
Enabled true Enables savings accounts.
InterestRate 0.02 Annual interest rate.
CompoundInterval 'weekly' Interest payout interval: daily, weekly, or monthly.
MaxBalance 5000000 Maximum savings balance.
MinimumDeposit 100 Minimum deposit amount.
MaxAccountsPerPlayer 1 Maximum savings accounts per player.
Config.POS = {
registrationFee = 1000,
commandName = 'posmenu',
timeout = 60000,
maxAmount = 999999999,
allowCashPayment = true,
}
Setting Default Description
registrationFee 1000 Cost to register a POS terminal.
commandName 'posmenu' Command used to open the POS terminal.
timeout 60000 Customer payment timeout in milliseconds.
maxAmount 999999999 Maximum single POS payment amount.
allowCashPayment true Allows cash payments at POS terminals.
Config.UseLoans = true
Config.MaxLoanSlots = 3
Config.MaxLoanAmount = 100000
Config.MinLoanAmount = 1000
Config.LoanInterestRate = 0.085
Config.MaxLoanTerm = 52
Config.MinLoanTerm = 1
Config.KeepLoanHistory = true
Config.HistoryRetentionDays = 365
Config.AutoUnloadCompletedLoans = true
Setting Default Description
UseLoans true Enables the loan system.
MaxLoanSlots 3 Maximum concurrent loan slots per player.
MaxLoanAmount 100000 Maximum loan amount.
MinLoanAmount 1000 Minimum loan amount.
LoanInterestRate 0.085 Base annual interest rate.
MaxLoanTerm 52 Maximum term in weeks.
MinLoanTerm 1 Minimum term in weeks.
KeepLoanHistory true Keeps completed loans in the database.
HistoryRetentionDays 365 Loan history retention period.
AutoUnloadCompletedLoans true Frees the loan slot when a loan is paid off.
Config.Investments = {
Enabled = true,
UpdateInterval = 600000,
TradingFeePercent = 0.01,
MaxSharesPerTrade = 1000000,
MinimumPrice = 10,
MaximumPrice = 100000,
HistorySize = 144,
MinimumFee = 1,
ShareEpsilon = 0.0001,
}
Setting Default Description
Enabled true Enables the stock market system.
UpdateInterval 600000 Market refresh interval in milliseconds.
TradingFeePercent 0.01 Trading fee percentage.
MaxSharesPerTrade 1000000 Maximum shares per buy or sell order.
MinimumPrice 10 Minimum stock price.
MaximumPrice 100000 Maximum stock price.
HistorySize 144 Number of OHLCV candles to keep.
MinimumFee 1 Minimum trading fee.
ShareEpsilon 0.0001 Floating-point threshold for sold shares.
Symbol Name Base Price Trend
MAZE Maze Bank $1,500 up
FLEECA Fleeca $800 neutral
LSCS Los Santos Customs $2,500 up
AMMU Ammu-Nation $4,200 up
BINCO Binco $300 down
GRUPPE Gruppe Sechs $1,200 neutral
MERRY Merryweather $3,500 neutral
PONS Ponsonbys $1,800 up
BSHOT Burger Shot $450 neutral
Config.AdminPermissions = {
Permissions = { 'admin', 'god' },
License = {
-- ['license:YOUR_LICENSE_HERE'] = true,
}
}
Setting Description
Permissions Framework permission groups that grant admin access.
License Rockstar license identifiers that grant direct admin access.
Config.CompatibilityLayer = {
Enabled = true,
Debug = false,
AutoCreateAccounts = true,
}
Setting Default Description
Enabled true Enables qb-banking and qb-management compatible exports.
Debug false Enables verbose compatibility logging.
AutoCreateAccounts true Auto-creates job or gang accounts when compatibility exports need them.
Config.ATMCurrency = {
style = 'en-US',
symbol = '$'
}
Setting Default Description
style 'en-US' Locale style used for ATM currency formatting.
symbol '$' Currency symbol shown on ATM screens.

Note: This guide is written by a third party. If you find any incorrect or outdated information, please contact us on Discord so we can update it for you.