Society Banking
Set up bank accounts for framework-job businesses and Society Purchase
Config.UseFrameworkJobs = true is enabled by default. With it enabled, JG Dealerships uses each business's internal job name as its society account name. A business with the job cardealer needs a society account named cardealer.
Society Purchase also uses the internal job or gang name from its whitelist as the account name.
Creating a dealership business or adding a job or gang to a Society Purchase whitelist doesn't create its bank account. A missing or mismatched account can make the business balance show 0 and prevent deposits, withdrawals or society purchases.
Start your banking resource before jg-dealerships in server.cfg.
okokBanking
- Open
okokBanking/config.lua. - Find
Config.Societies. - Add each internal job name used by a dealership business or Society Purchase whitelist. Keep your existing entries.
For current okokBanking versions, add the job and the grades that can manage its account:
["cardealer"] = {0, 1, 2, 3, 4},Replace cardealer with the exact internal job name. Older okokBanking versions may list society names without grades. Use the same format as the other entries in your installed version.
See the okokBanking configuration reference.
TGG Banking
- Give your account admin permission in TGG Banking.
- Open the banking interface and select Admin Actions.
- Create a society account.
- Set Society Name to the exact internal job or gang name, such as
cardealer. Display Name can be any player-facing name.
Repeat this for every business job and every job or gang used in a Society Purchase whitelist.
See the TGG Banking society account setup.
Connect another banking resource
Your banking resource needs server exports that can read, remove and add money for a society account.
Open jg-dealerships/framework/sv-functions.lua. In each function below, add an elseif block after the built-in banking blocks and before the QBCore block.
The resource and export names below are examples. Replace them with the names from your banking resource's server export documentation.
GetSocietyBalance
This export must return the account balance as a number.
elseif GetResourceState("your-banking-resource") == "started" then
return exports["your-banking-resource"]:GetSocietyBalance(society)RemoveFromSocietyFund
elseif GetResourceState("your-banking-resource") == "started" then
exports["your-banking-resource"]:RemoveSocietyMoney(societyName, amount)AddToSocietyFund
elseif GetResourceState("your-banking-resource") == "started" then
exports["your-banking-resource"]:AddSocietyMoney(societyName, amount)Fully restart your server. Open the management interface for a framework-job business and check that the correct balance appears. Deposit and withdraw a small amount, then confirm that the same society account changes.
If you're using Society Purchase, open the showroom and check that the correct balance appears. Complete a test purchase and confirm that the same account is charged.
Troubleshooting
Check that the account exists in your banking resource. Its name must match the business job or Society Purchase whitelist entry exactly. Names are case-sensitive. Restart the banking resource before restarting jg-dealerships.
Check that Framework.Server.AddToSocietyFund calls the correct server export for your banking resource. Confirm that the export accepts the society name first and the amount second.
Check that Framework.Server.RemoveFromSocietyFund calls the correct server export for your banking resource. Confirm that the export accepts the society name first and the amount second.
Last updated 31 July 2026