Step 1 — Set your Tebex secret
The script reads the standardsv_tebexSecret convar that Tebex’s official FiveM integration uses, so you set it once in server.cfg and never touch the config files.
- Sign in at https://creator.tebex.io.
- Game Servers → click your server.
- Server Keys → click Reveal on the active key.
-
Add this line to your
server.cfg, above theensure nex_donatorsystemline:
If you’d rather hard-code it (e.g. for a staging server with a different secret), set
ServerConfig.TebexSecret in configs/sv_config.lua. An explicit value there overrides the convar.Step 2 — Find each package’s ID
- Sign in at https://creator.tebex.io.
- Left sidebar → Packages.
- Click the package you want to expose (e.g. 100 Coins).
-
Look at the browser URL bar:
The numeric chunk on the end is the ID. Example:
https://creator.tebex.io/packages/6543210→ package ID is6543210.
Step 3 — Map packages to currency
EditServerConfig.CoinPackages in configs/sv_config.lua. Each entry is [package_id] = currency_amount:
Step 4 — Optional fallback rate
If you don’t want to list every package, set a flat rate. Anything not inCoinPackages will use this:
0 to be strict — any unmapped package will grant zero currency and the redeem will error out cleanly.
Step 5 — Restart and test
In your server console:tbx-xxxxx-xxxxx order ID from the confirmation email, open the shop (F9 by default or /donatorshop), go to Redeem, paste it, and the currency lands in your wallet.
What happens behind the scenes
- Player pastes their
tbx-xxxxx-xxxxxorder in the Redeem tab. - Server calls the Tebex Plugin API with your
sv_tebexSecret. - Tebex returns the package ID, price, and current status.
- If the order is refunded or charged back, the redeem is rejected and the order is marked as such.
- If the order has already been redeemed by anyone, the redeem is rejected.
- Otherwise the player’s wallet is credited the amount mapped in
CoinPackages(orCoinPerDollar * priceas fallback), and the order is locked to the redeemer’s identifier.

