Standalone
Agency-Banking
A complete banking system for FiveM. Manage your money through online banking and ATMs with a sleek glassmorphism UI — transfers, bills, loans, savings and society/job accounts. Physical cards, transaction history, configurable fees & interest, Discord webhook logging. 13 languages, MySQL persistence & ACE permissions. Auto-detects QBCore, ESX & Standalone.

01 Configuration
Complete config.lua for Agency-Banking. All options documented via inline comments.
Config = {}
-- UI Settings
Config.BankName = 'Agency Bank'
Config.BankLogo = 'logo.png' -- Place this image directly in the main folder (where this config.lua is)
Config.UseAgencyNotify = true -- Set to true to use Agency-Notify script for all banking messages
-- Framework Settings
Config.Framework = 'qbcore' -- 'esx' or 'qbcore'
Config.Locale = 'en' -- Check locales folder for available languages (e.g., 'en', 'de', etc.)
-- Database Configuration
-- Supported: 'oxmysql' (standard for modern servers), 'mysql-async', 'ghmattimysql'
-- By using oxmysql as our primary bridge, we ensure compatibility with Tebex.
Config.DatabaseType = 'oxmysql'
-- Card Settings
Config.UsePhysicalCards = false -- If true, players need a "creditcard" item in their inventory to use custom cards. If false, cards are entirely virtual in the UI.
Config.CardItemName = 'creditcard' -- The item name in the database/shared items.
Config.MaxCardsPerPlayer = 3 -- Maximum number of custom cards a player can create.
Config.CardCreationCost = 500 -- Cost to create a new Agency Card.
-- Fixed Deposits (Savings)
Config.EnableFixedDeposits = true
Config.FixedDepositOptions = {
{ days = 7, interestRate = 2.0 }, -- e.g. 7 Days • 2.0% return
{ days = 14, interestRate = 3.5 },
{ days = 30, interestRate = 6.0 }
}
-- Blips and Markers (Banks & ATMs)
Config.UseTarget = false -- If true, uses qb-target or ox_target. If false, uses 3D text/Markers.
Config.TargetResource = 'qb-target' -- 'qb-target' or 'ox_target'
Config.BankLocations = {
vector3(149.91, -1040.64, 29.37), -- Legion Square Bank
vector3(314.19, -278.62, 54.17), -- Alta Bank
vector3(-1212.98, -330.84, 37.78), -- Rockford Hills
vector3(-2962.58, 482.63, 15.70), -- Chumash
vector3(-112.20, 6469.29, 31.62), -- Paleto Bay
vector3(1175.06, 2706.64, 38.09), -- Sandy Shores
vector3(241.727, 220.706, 106.286), -- Pacific Standard Bank
vector3(1143.514, -471.189, 66.828), -- Mirror Park (Actually near Mirror Park)
vector3(-350.938, -49.805, 49.042) -- Burton
}
-- You can add ATM locations or detect standard ATM props client-side.
Config.ATMProps = {
`prop_atm_01`,
`prop_atm_02`,
`prop_atm_03`,
`prop_fleeca_atm`
}
-- Translation Function Helper
function _U(str, ...)
if Locales[Config.Locale] ~= nil then
if Locales[Config.Locale][str] ~= nil then
return string.format(Locales[Config.Locale][str], ...)
else
return 'Translation [' .. Config.Locale .. '][' .. str .. '] does not exist'
end
else
return 'Locale [' .. Config.Locale .. '] does not exist'
end
end