Description
A multi-currency exchange bureau: players swap cash into crypto or a foreign currency at a mid-rate that drifts on a server timer, paying a spread fee on every conversion. It goes beyond the usual crypto buy/sell button by modelling a live rate and a bureau cut, which gives crypto-RP economies a real FX surface and a steady money sink. The spread is the recurring drain servers pay for.
Prompt Template
You are writing a FiveM resource for qb-core.
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Expected Output
The reference Lua at content/expected-outputs/economy/27-currency-exchange-bureau.lua holds a server-side drifting rate table, validates and prices every swap with the spread server-side, and plays a…
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Known Failure Modes & Corrective Prompt
- Client-side rate — exposing the rate or math lets a player swap at their chosen price. Keep both server-side.
- Anim no-op —
TaskPlayAnimbefore the dict loads silently fails. Wait onHasAnimDictLoaded. - Overdraft swap — charging without re-checking cash mints the target currency. Re-check
GetMoney("cash")server-side.
Corrective re-prompt: Keep the rate table and all conversion math on the server with math.floor, re-check the held cash balance before charging, and guard the teller animation with RequestAnimDict + a while not HasAnimDictLoaded(dict) do Wait(0) end loop before TaskPlayAnim.
Framework Integration
- ESX: port to
ESX.GetPlayerFromId,getMoney/removeMoney, andaddInventoryItem(to, net)for the crypto/FX item. - QBCore: native —
Player.Functions.GetMoney/RemoveMoney("cash", ...)andAddItem(to, net)as shown. - QBox: drop-in via
exports.qbx_core; routeAddItemthroughox_inventoryand persist rates if you want them shared across restarts.
Profit Potential
$150–$2,000/mo on Tebex (expected ~$520). [INFERRED] priced in the $50-389 script band against the signal-scraper corpus (tebex_snapshot n=100, median seller $11.85K/mo); a stable, uncommon FX niche.
Trend Signal
→ stable — inferred: Beyond simple crypto buy/sell, a multi-currency spread/FX bureau is uncommon; reasoned demand pairing with crypto-RP economies.
Sales Angle
Position it above the basic crypto button — a real FX bureau with a live spread and drifting rates. Mid-to-upper band, ~$129-179 on Tebex, sold alongside a crypto economy.
Difficulty & Ship Time
intermediate · ships in 1 day.