NPC trading system driven entirely from config, no per-trader scripting required
FX-Traders is a config-driven NPC trading system for QBCore that eliminates per-trader scripting. Add a trader, define what it accepts and what it gives back, and the system handles the rest.
Four trade types cover item-for-money, money-for-item, item-for-item, and item-plus-money-for-item exchanges. Each trade supports optional requirements, cooldowns, success chances, random reward pools and limited stock. The engine executes trades under lock with a reserve-then-commit model: goods are reserved before anything is taken, and any failure triggers a rollback with critical logging.
01Unlimited traders, each defined entirely in config
02Four trade types: item to money, money to item, item to item, item plus money to item
03Category tabs auto-generated from your trade list
04Per-trade requirements: job, gang, licence, item or custom
05Job and gang gates with memory to prevent quit-and-rejoin exploits
Often bought with this
fx-adminAdmin
FX-Admin
FX-ADMIN is a modern, fast, and production-ready administration panel that brings everything a staff team actually uses into a single interface.
FiveMQBCoreESX· 11 days ago
€50.00
FX-Fishing
FX-FISHING is the most comprehensive, advanced, and production-ready fishing and scuba diving career system for FiveM roleplay servers.
FiveMQBCoreESX· 11 days ago
€59.90
fx-chatChat
FX-Chat
FX-CHAT replaces the default chat with something people actually want to type in.
FiveMQBCoreESX· 11 days ago
€10.00
06Refused attempts logged to dedicated Discord channel
07Server-side per-trade cooldown tracking
08Configurable success chance with failure path
09Random reward pools with weighted outcomes
10Multi-quantity trades with server-side validation
11Limited stock with admin refill and stock-out logging
12Reserve-then-commit engine with full rollback on failure
13Critical logging channel for actual item loss only
14Two-event request flow for anticheat allow-listing
16Queued webhook delivery with retry and rate-limit handling
Supported Frameworks
QBCore
Trade Engine & Safety
Trades are executed under lock with a reserve-then-commit architecture. Goods are reserved before anything is taken, and if any step fails the reservation is rolled back and a critical log is written. The regression suite includes 380 simulated tests against the real engine code with faked inventory, money and database to inject failures on purpose. Tests cover duplication, item loss, lock leaks and rollback.
Access Control & Logging
Trader access can be gated by job or gang with memory: a player who quits the job to dodge a restriction does not gain access by rejoining. Refused attempts are logged to their own Discord channel, making the quit-sell-rejoin probe visible instead of silent.
Configuration & Validation
A config validator ships with the resource. Edit your traders, run the validator, and it compiles your actual config and prints exactly what it produced. Typos in currency names or broken shorthand surface in the validator rather than in front of players.
Discord Integration
Six log channels, each independently switchable
Queued webhook delivery with retry and rate-limit handling
Per-URL delivery cap
Critical channel that stays silent unless goods actually go missing
Refused attempts logged to dedicated channel
Performance & Streaming
Adaptive ped streaming with single thread and distance hysteresis
Blips without threading
Markers that only draw in range and switch themselves off
Interface & Localization
React-built interface, shipped pre-compiled
No npm required on server
English and Turkish locales included
Code Organization
Config, locales, bridges, SQL and validator outside escrow
Every request flows through two events for anticheat allow-listing