Before You Begin#
Before installing Shops Creator, make sure your server meets the minimum requirements. Three things are mandatory; everything else is optional and detected on its own when the server starts.
Requirement | Status | Notes |
|---|---|---|
| Required | Database access for shops, owners, employees, finances and history. |
| Required | Callbacks, zones, progress bars and shared helpers. |
OneSync | Required | Declared as a dependency in the manifest. Enable it in your server settings or txAdmin. |
Framework | Required |
|
Inventory | Recommended |
|
Target | Optional |
|
Societies | Optional |
|
Gangs | Optional | Native gangs on QBCore and Qbox; |
| Optional | Quasar progress bars, HUD toggling and 3D text. Without them, |
| Optional | Attaches a screenshot to Discord logs, together with a Fivemanage token. |
Downloading Shops Creator#
After purchasing Shops Creator, the resource is automatically linked to your CFX Portal account.
Sign in to the CFX Portal using the same account used during checkout, open Granted Assets, and download Shops Creator.
After extracting the download, you should have the following folder:
qs-shops-creator/
├── config/ -- main.lua: everything you may edit
├── custom/ -- framework bridges (esx, qb) and notifications (editable)
├── client/custom/ -- target bridge (editable)
├── server/custom/ -- inventory and society bridges (editable)
├── database/ -- database.sql, with 29 ready-made shops
├── locales/ -- 41 languages
├── server/webhooks.lua -- Discord webhook URLs
└── web/ -- the interface, already builtKeep the folder named
qs-shops-creator. Every export in Commands and Exports is called through that name, so a renamed copy breaks any script that talks to it.
Installing the Resource#
Move the qs-shops-creator folder into your server's resources directory. It can live anywhere inside it, including a category folder:
resources/
└── [qs]/
└── qs-shops-creator/Once copied, open your server.cfg and make sure every dependency — and everything it should detect — starts before Shops Creator:
ensure oxmysql
ensure ox_lib
# Framework (one of them)
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Inventory, target, societies
ensure qs-inventory
# ensure ox_inventory
ensure ox_target
ensure esx_society
ensure qs-shops-creatorThe loading order matters. The framework and the inventory are detected by checking which resources are already started, so an inventory that starts after Shops Creator is not found and the shop runs in standalone mode.
The Database#
Shops Creator ships its schema as a SQL file. Import database/database.sql into your server's database before the first start, with HeidiSQL, phpMyAdmin or any MariaDB/MySQL client.
Tables | Hold |
|---|---|
| Every shop: its zone, ped, blip, items, categories, sellable items, access rules, ownership, payment methods, opening hours and balance. |
| Who owns each shop, and its staff with their permissions. |
| Each shop's balance and figures, and every deposit, withdrawal, sale and expense. |
| Discounts and fixed-amount offers, with their targets and dates. |
| Every purchase from a store, and every item sold to a sell shop. |
| Saved shop templates, private or public. |
The same file also places 29 shops across the map — each with its zone, a shopkeeper and a blip — so you start from the vanilla locations instead of an empty map:
Shop | Locations |
|---|---|
24/7 Supermarket | 8 |
Ammu-Nation | 11 |
LTD Gasoline | 5 |
Rob's Liquor | 5 |
The SQL uses
CREATE TABLE IF NOT EXISTS,ADD COLUMN IF NOT EXISTSandINSERT IGNORE, so importing it again after an update adds what is new without touching your shops. A ready-made shop you deleted comes back only if you import the file again.
Granting Creator Access#
The creator is where shops are built, so it is restricted. Type /shopcreator in game — anybody without access sees You do not have permission to do this. Either of these routes lets someone in:
Automatic, nothing to configure. On ESX, players in the admin or superadmin group. On QBCore and Qbox, players with the god or admin permission, or with the command ace (txAdmin's admin group).
Hand the creator to a job without making anybody an admin — a city planning department, a business office. Each entry is a job and, optionally, the grades that may use it:
-- config/main.lua
Config.CreatorJobs = {
{ job = 'police', grade = { 1, 2, 3 } }, -- only these grades
{ job = 'ambulance', grade = false }, -- every grade
}The shipped list is an example: replace it with the jobs on your own server, or leave it empty to keep the creator for admins only.
Configuring the Resource#
Shops themselves are built in game, never in files. config/main.lua holds the server-wide plumbing, and every setting in it is tagged [EDIT], [ADV], [CORE] or [AUTO] so you can see at a glance what is safe to change.
Setting | What it controls |
|---|---|
| The language — any of the 41 codes in |
| The creator command, |
| Jobs and grades allowed to use the creator, on top of admins. |
| Payment methods a shop accepts until the creator picks its own. |
| Every payment method the creator may offer: |
| How prices are displayed: regional format, currency code and decimals. Visual only. |
| Target or keypress, and the size of the interaction zone. |
| The categories and icons suggested in the creator. |
| Keys and camera speeds used while drawing zones and placing points. |
| Verbose console output. |
The values worth reviewing first:
Config.Locale = 'en' -- ar, de, en, es, fr, it, pt, ru, tr, zh ...
Config.ShopCreatorCommand = 'shopcreator' -- typed in chat as /shopcreator
Config.UseTarget = false -- true = ox_target / qb-target
Config.Intl = {
locales = 'en-US',
options = { style = 'currency', currency = 'USD', minimumFractionDigits = 0 },
}
Config.Debug = false -- ships as true: turn it off on a live serverVerifying the Installation#
After completing the installation, restart your server and read the console. You should see the framework being loaded:
[INFO] Successfully loaded the framework. esxIf the console instead repeats Using standalone inventory, this is not recommended for production servers, your inventory was not detected — move its ensure above ensure qs-shops-creator.
Then join your server and work through the first loop:
Open the creator
Type
/shopcreator. The list of shops opens — the 29 ready-made ones are already there. Pick a 24/7 Supermarket to edit it.Stock it
Add a category, then a few items with a price and a stock, and save. Usage covers every panel.
Buy something
Walk up to that shop's shopkeeper and press
E(or use your target). Add an item to the cart, choose how to pay and confirm: the item lands in your inventory and the stock goes down for everybody.
Nothing needs a restart from here on. Shops, items, prices, owners, employees and promotions are all created and edited in game, and every change reaches every player at once.



