πŸ”₯All scripts on our website are 50% off!πŸ”₯
Logo

πŸ”§ Configuration

Configure BIT-Coin System to match your server's needs.

Framework Settings

-- Framework Configuration
Config.Framework = "esx" -- Use "esx" or "qb"
Config.ESXExport = "" -- ESX script name (if using newer versions)
Config.Core = "qb-core" -- Default ESX: "esx:getSharedObject" | Default QB: "qb-core"
Config.Mysql = "oxmysql" -- oxmysql, mysql-async, or ghmattisql

Discord Webhooks

Configure webhooks for logging different actions:

-- Discord Logging
Config.webhookcar = "" -- Vehicle purchases
Config.webhookname = "" -- Name changes
Config.webhookphone = "" -- Phone number changes
Config.webhookplate = "" -- Plate changes
Config.webhookweapon = "" -- Weapon purchases
Config.webhookmoney = "" -- Money transactions
Config.webhookgeneratedcode = "" -- Code generation
Config.webhookusedcode = "" -- Code redemption
Config.webhookpayments = "" -- Payments

Key Binding

-- Menu Controls
Config.OpenWithKey = true -- Allow opening with key press
Config.OpenKey = 170 -- F3 key (see FiveM controls documentation)

Service Pricing

Configure prices for character services (in coins):

-- Service Prices
changenameprice = "1000" -- Name change cost
changephonenumberprice = "1000" -- Phone number change cost
changeplateprice = "1000" -- Vehicle plate change cost

Admin Permissions

Define admin groups that can generate coin codes:

-- Admin Groups
Config.adminsGroups = {"admin", "superadmin", "god"}

Integration Settings

-- External Integrations
Config.useCDgarage = false -- Enable if using cd_garage
urlbuy = "https://bit.tebex.io" -- Your store URL for buying coins

-- BattlePass Integration
battlepass = true -- Enable if you have BIT-Battlepass

Money Packages

Configure money packages that players can purchase:

Money = {
    [1] = {
        name = "Cash Money",
        type = "money", -- "money" or "blackmoney"
        image = "./img/money1.png",
        moneyprice = "1000", -- Cost in coins
        moneyobtained = "100000" -- Amount of money received
    },
    [2] = {
        name = "Black Money",
        type = "blackmoney",
        image = "./img/bmoney1.png",
        moneyprice = "1000",
        moneyobtained = "100000"
    }
    -- Add more packages as needed
}

Vehicle Shop

Configure vehicles available for purchase:

Cars = {
    [1] = {
        carprice = "1", -- Price in coins
        carname = "Lexus LX",
        carmodel = "t20", -- Spawn code
        carimage = "./img/cars/1.jpg"
    }
    -- Add more vehicles as needed
}

Weapon Shop

Configure weapons available for purchase:

weapons = {
    [1] = {
        price = "150000", -- Price in coins
        name = "Assault Rifle",
        model = "weapon_assaultrifle",
        image = "./img/weapons/1.jpg"
    }
    -- Add more weapons as needed
}

Custom Tab Actions

Customize what happens when clicking tabs:

-- Tab Customization
-- Leave empty to use default functions
-- Or set a command/URL to execute

Tabs.carsCommand = "" -- Command for cars tab
Tabs.carsURL = "" -- URL for cars tab

Tabs.plateCommand = "" -- Plate change command
Tabs.plateURL = ""

Tabs.numberCommand = "" -- Phone change command
Tabs.numberURL = ""

Tabs.nameCommand = "" -- Name change command
Tabs.nameURL = ""

Tabs.moneyCommand = "" -- Money command
Tabs.moneyURL = ""

Tabs.weaponsCommand = "" -- Weapons command
Tabs.weaponsURL = ""

Validation Functions

Phone Number Validation

function checkNumber(number)
    -- Example: Check number starts with "123" and has minimum 5 digits
    -- local stringNumber = string.sub(number, 1, 3)
    -- if stringNumber == 123 and #number >= 5 then
    --     return true
    -- else
    --     return false
    -- end
    
    -- No validation (default)
    return true
end

Plate Validation

function checkPlate(plate)
    -- Example: Check plate starts with "BIT" and has minimum 5 digits
    -- local stringPlate = string.sub(plate, 1, 3)
    -- if stringPlate == "BIT" and #plate >= 5 then
    --     return true
    -- else
    --     return false
    -- end
    
    -- No validation (default)
    return true
end

Vehicle Keys

Configure your vehicle keys system:

function giveKeys(vehicle)
    -- Example with QBCore:
    -- TriggerEvent("vehiclekeys:client:SetOwner", QBCore.Functions.GetPlate(vehicle))
    
    -- Add your keys system integration here
end

Notifications

function notifications(notitype, message, time)
    -- Change this trigger for your notification system
    TriggerEvent('codem-notification', message, time, notitype)
end

-- Notification Types
Noti.info = 'info'
Noti.check = 'check'
Noti.error = 'error'
Noti.time = 5000 -- Duration in milliseconds

Language Configuration

Customize all notification messages:

-- Success Messages
receivedcar = "You have received a new vehicle!"
updatedname = "Name has been updated!"
updatednumber = "The phone number has been updated!"
updatedplate = "Plate has been updated!"
donemoney = "Cash has been correctly delivered"
codegenerated = "The code has been generated correctly"
correctcode = "The code has been redeemed, you have just received the coins!"
receivedweapon = "You have received a weapon!"

-- Error Messages
waitcar = "You must wait a little while to get another vehicle"
nomoney = "You do not have enough money"
nocar = "No vehicle nearby"
notextplate = "Cant apply empty plate"
notextphone = "Cant apply empty phone number"
notextname = "Cant apply empty name"
dataerror = "Error updating the information, check that the data is correct."
erroramount = "You must enter a number of coins for the code"
wait = "You must wait a few seconds to do this action again."
codeerror = "The code cannot be empty"
nocorrectcode = "The code entered is not correct, please check it or contact the staff"
updateerror = "The value entered does not meet the requirements"

[!CAUTION] Configuration Warnings:

  • Do not modify the line: Config, Tabs, Noti = {}, {}, {}
  • Test all webhook URLs before production use
  • Validate coin prices match your server economy
  • Backup configuration before making changes