Tebex
Package commands for coins, cash, vehicles, passes, VIP, priority and character slots.
Add the command below as a Game Server Command on each Tebex package. Every command ignores resends, so a payment never pays twice.
Section 3.1 of the Cfx.re Creator Platform License Agreement restricts selling in-game currency (3.1(3)) and access to Rockstar-made items such as stock vehicles (3.1(4)) for real money. Which packages you sell is your decision.
Redeemed with a code
The player enters the Tebex transaction ID under Redeem in the menu. Everything bought in one checkout shares that ID, and one redeem pays all of it.
| Package | Command |
|---|---|
| Coins | filo_rewards_addtx {transaction} 500 {purchaseQuantity} |
| Cash | filo_rewards_addcash {transaction} 50000 {purchaseQuantity} |
| Vehicle | filo_rewards_addvehicle {transaction} {purchaseQuantity} {packageName} |
- The number is the amount per unit, so buying a 500-coin package twice gives 1,000.
- Cash goes to
Config.Tebex.cashAccount(cashorbank). If it can't be added, the redeem is undone and the ID stays valid. - If a basket can hold two packages of the same amount, add a unique tag as a fourth argument, for example
filo_rewards_addtx {transaction} 500 {purchaseQuantity} starter.
Vehicle packages
Name each package after the vehicle. Names are matched against qbx_core's vehicle list, ignoring case,
spaces and punctuation: Jester (spawn model), Dinka Jester (brand and name) or Jester RR (Drift)
(display name) all work.
- The car goes to
Config.VehicleGarage. Buying 2 gives 2 cars, up to 10. - A name that doesn't match exactly one vehicle is reported in the console when the purchase arrives. The redeem fails without using up the code, so you can fix the name and the same ID still works.
- Once a car is created, a redeem never hands it out again. Anything else in the basket that fails is logged with
STAFF:for a manual fix.
Paid automatically
These are tied to the buyer's FiveM account ({id}), so they need no code. The reward reaches whichever
of their characters is online, or the next one that loads in. The player must be signed in to FiveM
with their Cfx.re account.
| Package | Command | Set as |
|---|---|---|
| Timed pass | filo_rewards_addpass {id} {transaction} coins 50 30 {purchaseQuantity} | Initial |
| VIP subscription | filo_rewards_vip {id} {transaction} | Initial and renewal |
| Queue priority | filo_rewards_priority {id} {transaction} 3 | Initial and renewal |
| Character slots | filo_rewards_charslot {id} {transaction} {purchaseQuantity} | Initial |
Timed passes
The example pays 50 coins for every hour played, for 30 days. The full form is
<fivem id> <transaction> <coins|cash> <amount> <days> [quantity] [minutes per payment].
- The days run from purchase. Only time online and not AFK counts towards a payment.
- Progress is saved every minute. Quantity multiplies the amount, and separate purchases run side by side.
VIP subscription
Each payment queues one month of Config.Tebex.vip (default $5,000 cash and 500 coins). A month that
isn't paid simply doesn't pay out, so no expiry command is needed.
To test it, use Tebex's manual payment on your own account and look for queued VIP month for fivem:…
and delivered vip payout in the console.
Queue priority
The last number is the level (1, 2 or 3). Each payment adds Config.Tebex.priority.days (default 31)
of that level, and renewals stack on the time left. qbx_core's queue reads it on connect through
exports.filo_rewards:GetPriorityLevel.
Character slots
Each unit adds Config.Tebex.characterSlots.perUnit (default 1) permanent slots, capped at maxExtra
(default 10). filo_characters adds them to the player's limit.
Migrating from filo_tebex
With legacyTable = true, priority and character slots bought through the old filo_tebex resource
keep counting from filo_tebex_purchases. Old package_bought {json} commands are converted
automatically. Update the packages on Tebex when you can.