Configuration

This section includes all configurable files for the selected script. Most settings are configured automatically, but each config.lua file contains a header comment explaining the purpose and usage of every configuration type. Be sure to read the header of each file carefully to fully understand how to customize and adapt the system for QBCORE, ESX, or standalone environments, ensuring seamless integration with your server.


qs-banking/config.lua
--──────────────────────────────────────────────────────────────────────────────
--  Quasar Store · Configuration Guidelines
--──────────────────────────────────────────────────────────────────────────────
--  This configuration file defines all adjustable parameters for the script.
--  Comments are standardized to help you identify which sections you can safely edit.
--
--  • [EDIT] – Safe for users to modify. Adjust these values as needed.
--  • [INFO] – Informational note describing what the variable or block does.
--  • [ADV]  – Advanced settings. Change only if you understand the logic behind it.
--  • [CORE] – Core functionality. Do not modify unless you are a developer.
--  • [AUTO] – Automatically handled by the system. Never edit manually.
--
--  Always make a backup before editing configuration files.
--  Incorrect changes in [CORE] or [AUTO] sections can break the resource.
--──────────────────────────────────────────────────────────────────────────────

Config                      = Config or {} -- [CORE]
Locales                     = Locales or {} -- [CORE]

--──────────────────────────────────────────────────────────────────────────────
-- Language Selection                                                          [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Main language for the asset. Locales are under locales/* — add yours if missing.
-- [INFO] Shipped examples: 'ar','bg','ca','da','de','en','es','fa','fr','he','hi','it','jp','ko','pt','ru','tr','zh-CN','zh-TW'
-- [ADV]  Keep the code aligned with filenames in locales/* (e.g. 'ja' vs 'jp').
--──────────────────────────────────────────────────────────────────────────────
Config.Language             = 'en' -- [EDIT] 'en' or 'es' by default (you can create more)

--──────────────────────────────────────────────────────────────────────────────
-- Framework Detection                                                         [AUTO]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Auto-detects ESX/QBCore/QBX. If you renamed resources, set manually and
--        adapt framework files inside this resource.
--──────────────────────────────────────────────────────────────────────────────
local esxHas                = GetResourceState('es_extended') == 'started'         -- [CORE]
local qbHas                 = GetResourceState('qb-core') == 'started'             -- [CORE]
local qbxHas                = GetResourceState('qbx_core') == 'started'            -- [CORE]

Config.Framework            = esxHas and 'esx' or qbHas and 'qb' or qbxHas and 'qbx' or 'esx' -- [AUTO]

--──────────────────────────────────────────────────────────────────────────────
-- Target System                                                               [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Select the target adapter used by your server.
--──────────────────────────────────────────────────────────────────────────────
Config.UseTarget            = 'none' -- [EDIT] 'ox_target', 'qb-target' or 'none'

--──────────────────────────────────────────────────────────────────────────────
-- Banking / Economy Limits                                                    [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] General economy guards and society toggle.
--──────────────────────────────────────────────────────────────────────────────
Config.AtmLimit             = 2500 -- [EDIT] Max ATM withdrawal per operation
Config.DepositLimit         = true -- [EDIT] Enable deposit limit logic
Config.WithdrawLimit        = true -- [EDIT] Enable withdraw limit logic
Config.TransferLimit        = true -- [EDIT] Enable transfer limit logic

Config.EnableSociety        = true -- [EDIT] ESX: esx_society | QB: qb-management

--──────────────────────────────────────────────────────────────────────────────
-- Metadata (Card System)                                                      [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Requires a metadata-capable inventory: 'qs-inventory','qb-inventory','ox_inventory','core_inventory'.
-- [ADV]  If disabled or unsupported inventory, card features are ignored.
--──────────────────────────────────────────────────────────────────────────────
Config.Metadata             = true -- [EDIT] Enable card metadata system
Config.CreateCardPrice      = 100  -- [EDIT] Price to create a credit card
Config.MaxiCardsCreated     = 3    -- [EDIT] Max cards a player may hold
Config.AttemptsCards        = 3    -- [EDIT] Max PIN attempts before block
Config.CreateCardEverywhere = true -- [EDIT] True: any bank; False: only in spots below

Config.CreateCard           = {    -- [EDIT] Specific creation spots (used when CreateCardEverywhere = false)
    { coords = vec3(143.2664, -1042.5907, 29.3679) },
    -- Add more vec3(...) entries as needed
}

--──────────────────────────────────────────────────────────────────────────────
-- Bank Locations                                                              [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Physical bank coordinates; used for blips/interactions.
--──────────────────────────────────────────────────────────────────────────────
Config.Bank                 = { -- [EDIT]
    vec3(149.91, -1040.74, 29.374),
    vec3(-1212.63, -330.78, 37.59),
    vec3(-2962.47, 482.93, 15.5),
    vec3(-113.01, 6470.24, 31.43),
    vec3(314.16, -279.09, 53.97),
    vec3(-350.99, -49.99, 48.84),
    vec3(1175.02, 2706.87, 37.89),
    vec3(246.63, 223.62, 106.0),
}

--──────────────────────────────────────────────────────────────────────────────
-- Teller Peds (Ambience)                                                      [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Spawn clerks behind counters with a simple scenario/anim.
--──────────────────────────────────────────────────────────────────────────────
Config.EnablePeds           = true -- [EDIT]
Config.Peds                 = { -- [EDIT]
    { position = vector4(149.5513, -1042.1570, 29.3680, 341.6520),  model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(-1211.8585, -331.9854, 37.7809, 28.5983),  model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(-2961.0720, 483.1107, 15.6970, 88.1986),   model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(-112.2223, 6471.1128, 31.6267, 132.7517),  model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(313.8176, -280.5338, 54.1647, 339.1609),   model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(-351.3247, -51.3466, 49.0365, 339.3305),   model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(1174.9718, 2708.2034, 38.0879, 178.2974),  model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
    { position = vector4(247.0348, 225.1851, 106.2875, 158.7528),   model = `U_M_M_BankMan`, scenario = 'WORLD_HUMAN_CLIPBOARD' },
}

--──────────────────────────────────────────────────────────────────────────────
-- Currency Formatting (Intl)                                                  [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] UI money formatting using JS Intl options.
--──────────────────────────────────────────────────────────────────────────────
Config.Intl                 = {    -- [EDIT]
    locales = 'en-US',             -- [EDIT] e.g. 'en-US','pt-BR','es-ES','fr-FR','de-DE','ru-RU','zh-CN'
    options = {
        style = 'currency',        -- [EDIT] 'decimal'|'currency'|'percent'|'unit'
        currency = 'USD',          -- [EDIT] 'USD','EUR','BRL','RUB','CNY'
        minimumFractionDigits = 0, -- [EDIT]
    }
}

Config.ShowBlips            = true -- [EDIT] Toggle bank/ATM blips on map

--──────────────────────────────────────────────────────────────────────────────
-- ATM Models                                                                  [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Game prop names treated as ATMs for interaction/blips.
--──────────────────────────────────────────────────────────────────────────────
Config.ATMModels            = { -- [EDIT]
    'prop_atm_01',
    'prop_atm_02',
    'prop_atm_03',
    'prop_fleeca_atm',
}

--──────────────────────────────────────────────────────────────────────────────
-- Debug Options                                                               [EDIT]
--──────────────────────────────────────────────────────────────────────────────
-- [INFO] Enable only for admins/developers. Adds verbose logs and zone helpers.
--──────────────────────────────────────────────────────────────────────────────
Config.Debug                = false -- [EDIT]
Config.ZoneDebug            = false -- [EDIT]