It reads your script. It writes your docs. It answers your customers.
Upload a zip of your FiveM resource. It reads the code — the exports, the events, the config, what it depends on — and writes your documentation from what it finds. Then it answers your customers from that, in your own Discord, citing the file and the line.
Card required · nothing charged for 14 days · cancel any time
Config.UseOxMySQL matches the driver you actually have installed. legacy-banking/ server/ main.lua:88 is where the payload is built, and it returns early when the driver name does not match.A customer who half-remembers a config option still gets the right page. Every question is searched against your documentation three ways at once — by meaning, by wording, and by the exact names in your code.
Setting it up
Ten minutes of setup. Then it runs without you.
A zip, up to 50 MB, and your bot token. Then you can close the tab. It keeps building without you, and shows you how far it has got when you come back.
It reads your code, not your README
It walks the archive and maps what is in it: every export, event, command, config option and database table, plus what your resource depends on, each with the file and line it came from.
legacy-banking6 found- ExportCreateBill(source, amount, reason)server/billing.lua:88
- Server eventlegacy-
banking: depositserver/main.lua:142 - Client eventlegacy-
banking: refreshclient/nui.lua:31 - Command/bankclient/main.lua:12
- Config keyConfig.UseOxMySQLconfig.lua:7
- Database tablebank_accountsinstall.sql:1
Read straight out of your files, so a name it cannot find is a fact about the resource rather than a shrug. An illustration, not a screenshot.
It writes the docs you never wrote
Written from that map, in plain English, on your own site, in your own colour. Edit any page and your version is the one that publishes.
docs.legacy-studio.com/legacy-banking/installationInstallation
Legacy Banking depends on oxmysql and ox_lib. Both must start before it.
- 1.Drop the resource into resources/
- 2.Import install.sql, which creates bank_accounts
- 3.Add ensure legacy-banking after its dependencies
Your own subdomain on every plan, or your own domain on Studio and above. An illustration, not a screenshot.
Your bot answers from it
Your token, your name, your avatar. Nobody can tell it is us, because in every way that matters it is not.
Your server, your botWaiting on themticket-0091TodayrikoToday at 21:07el panel del banco no abre, se queda la pantalla en negroLegacy StudioAPPToday at 21:07Eso suele pasar cuandoConfig.UseOxMySQLno coincide con el driver que tienes instalado. El payload se construye enlegacy-banking/y se detiene antes si el nombre no coincide.server/ main.lua:88 Message #ticket-0091Same answer, same file and line, in the language the customer used. Setting names and paths stay exactly as they are, because those are names rather than words. An illustration, not a screenshot.
The part that matters
It would rather say nothing than embarrass you in public.
Every answer is checked against your own documentation before it is sent. When nothing in there is a good enough match, it stops, tells your customer a human is coming, and pings your team.
No export, event or config key named "WithdrawalFee" exists in legacy-banking.
Recorded as a documentation gap. The next person to ask the same thing, however they word it, adds to the count instead of opening a second entry. An illustration, not a screenshot.
What it does with a question your documentation cannot answer.
16 / 16
Sixteen real questions. Half your docs could answer, half they could not. It got the difference right every time.
The line it draws sits deliberately low. If it is ever wrong, it is wrong in the safe direction: a question your docs do cover gets handed to a person instead of the bot. Nobody gets a made-up answer.
The job nobody sold you
You did not start a studio to answer tickets.
The same handful of questions, in whatever language the buyer speaks, at whatever hour they are online. Every one of them is already answered somewhere in your own code.
- bank ui opens but the panel is blank
- does this work with qb-inventory?
- wie ändere ich das währungssymbol?
- where is the transaction log stored
- can i make the atm charge a withdrawal fee
- how do I add a second bank location?
- ¿por qué el panel sale vacío?
Verified against your Tebex store
Map a package to a resource and that mapping is the gate. A transaction ID is claimed by the first Discord account to use it, then remembered. If your store key ever breaks, tickets come through unverified instead of locking every paying customer out of support.
Legacy Banking is only supported for customers who bought it. Paste the transaction ID from your receipt.
Transaction ID
It only debugs a problem once
A solved ticket is written up and kept. The next customer who hits the same thing — however they word it — skips the back and forth and gets the fix straight away. What nothing could answer becomes a ranked list of what to write next.
- How do I add a second bank location?11×
- Can I change the currency symbol?6×
- Does this work with qb-inventory?asked again4×
- Where is the transaction log stored?2×
Every plan starts free
Starter
$19per monthBilled monthlyAfter the trial: $19 a month$19$16per monthBilled annually · save $38 a yearAfter the trial: $190 billed once a year
- Upload a script archive and get documentation
- Hosted documentation site in your own colour
- AI-answered Discord tickets, cited to the file and line
- Only your paying customers can open a ticket
- A hard stop when the credits run out, never a surprise overage
- Top up any time if you need more
- 1,000 AI credits a month, and 3 scripts
Studio
Most studios$49per monthBilled monthlyAfter the trial: $49 a month$49$41per monthBilled annually · save $98 a yearAfter the trial: $490 billed once a year
- Everything in Starter
- Your own domain with automatic HTTPS
- Ticket channels named by what they are about
- Every solved ticket reused, so it is only worked out once
- Answers from resolved tickets published to your docs
- Docs rebuild themselves when you push to GitHub
- Ticket CSV export, and ninety days of analytics
- 2,000 AI credits a month, and 10 scripts
Publisher
$129per monthBilled monthlyAfter the trial: $129 a month$129$108per monthBilled annually · save $258 a yearAfter the trial: $1290 billed once a year
- Everything in Studio
- Your own footer, and no powered-by credit
- Headroom for a catalogue rebuilt on every push
- Top up whenever you need more, at any time
- 6,000 AI credits a month, and unlimited scripts
Upload one script and see what it writes
The trial runs the whole product for 14 days. If the documentation it writes is not accurate, you will know within ten minutes.
Start 14 days freeCard required · cancel inside the 14 days and no invoice is ever raised