What goes wrong most often, what the message actually means, and what to do about it. Most of these are configuration, not faults — and every refusal the job shows names its own reason. When something fails silently, set Config.Debug = true and watch the server console and F8 to see how far it got.
Installation#
The server console freezes after "You have renamed the script!"
The folder is not named qs-newspaperjob. A renamed copy halts the server on purpose. Rename the folder back, update server.cfg and restart.
The editor does not appear at the News Station
The framework was not detected: es_extended, qb-core or qbx_core must start before the job. Without a framework the editor never spawns.
F8 shows
Ped model '…' never loaded:Config.StartJob.ped.modelis not a valid ped model.
There is no News Station blip
Correct behaviour for players without the job: the blip is only shown to those who can deliver. Give the job, set Config.RequireJob = false, or check that Config.EnableBlip is on.
"Illegal mix of collations" or an empty leaderboard after a MariaDB update
The job's tables and your framework's characters table use different collations. On start the script aligns its own columns automatically. If the console prints could not align …, run the ALTER TABLE statement it prints, exactly as shown, in your database and restart.
"Could not register the ESX job rows"
Your database has no ESX jobs / job_grades tables in the shape the script expects. The job's own tables are still created. Add the job by hand, or import [sql]/qs-newspaperjob.sql.
Starting a Route#
"You don't have the newspaper delivery job"
The player's job is not in Config.NewspaperJob. Check the job name matches exactly — on QBCore and Qbox it must also exist in shared/jobs.lua (see Registering the Job). Set Config.RequireJob = false to let anybody deliver.
"This item does not exist: weapon_acidpackage"
The inventory has never been told about the newspaper, so no route can hand a bag out. Register the item for your inventory — Registering the Newspaper Item — or correct Config.NewspaperItem, then restart the inventory and the job.
"Your inventory is full"
The bag of newspapers does not fit — by slots or by weight (1,000 per paper in the qs-inventory and qb-inventory snippets). Nothing was taken and nothing is owed; free some space and start again, or lower the item's weight.
"Hand in the newspapers from your last route… Still owed: N"
The courier owes more than one bag of papers from earlier routes — dropped, stashed or given away. Any papers they carry are handed in automatically when they try again, and the figure goes down. Smaller debts are simply charged out of the next route's pay. The tab is cleared by a restart of the resource.
"The car park is full"
Every spot in Config.VehicleSpawnCoords has a vehicle within 2 m. Move the vehicle or add more spots. If the spot is empty and the message still appears right after Start route, the ride's model does not exist on your server — F8 shows could not load vehicle model ….
"You don't have the level needed" or "You have not unlocked that ride yet"
The route's or the ride's levelRequired is above the courier's level, which the server reads from its own records.
"You are too far from the news station"
A route must be started within 15 m of the editor. It happens when the panel was opened through the export from somewhere else.
During the Route#
The throw does nothing: "You are not on your work bike"
With Config.RequireWorkVehicle on, throwing is blocked unless the courier is on the bike the route spawned. Get back on it, or turn the setting off.
The paper lands but the stop is not counted
It must land within
Config.DeliveryRadius(5 m) of the stop point — aim at the ground marker, not the house.The courier must still be within
Config.DeliveryValidationDistance(40 m) when the server checks. Lowering that value costs fast riders stops.The projectile must be
Config.NewspaperWeapon, thrown withConfig.Keys.ThrowKey. A different throwable is ignored.The inventory must actually spend the paper when it is thrown — that is how the server knows a throw happened. On qs-inventory and qb-inventory,
acidpackagemust be inConfig.Throwables.
A stop can no longer be delivered after a miss
By default the bag holds exactly one paper per stop, so a missed throw leaves one stop without a paper. Raise Config.NewspaperAmount to hand out spares, or turn on Config.UnlimitedNewspapers.
The bike is locked, or the Faggio has no fuel
Your keys resource is not in the supported list or starts after the job — see Vehicle Keys. For fuel, set Config.Fuel = true and point Config.FuelExport at your fuel resource.
There is no prompt to hand the bike in
The drop-off only opens once every stop is delivered or the bag is empty. To stop earlier, use Abandon route in the panel — it pays nothing.
"You are too far from the drop-off point"
The server measured the courier more than Config.ReturnValidationDistance (15 m) from Config.DeliverBikeCoords. Step closer and press E again — the prompt stays up.
Pay and Rankings#
The pay is lower than the route shows
The route's figure is for every stop. Pay is scaled by the share of stops delivered, then by the ride and level bonuses, and any newspaper that left the bag without reaching a stop is charged at one stop's worth — the courier is told so. See How Pay Is Worked Out.
The route ended but nothing was paid
The courier no longer held a newspaper job when they handed the bike in — the server re-checks the job at payout. Or no stop was delivered at all.
The money went to the job, not the courier
qs-job-management is running, so payouts are booked through the job's treasury. That is its intended behaviour — see Job Accounts.
A finished route does not appear in the rankings
The boards refresh every Config.UpdateLeaderboard minutes. Reopen the statistics after that. Only couriers with experience in the period are listed.
Names show as "Unknown"
The character has no first or last name in the framework's table, or the character was deleted. With Config.PlayerNameSource = 'cfx', offline couriers fall back to their character name.
A ranking winner did not get the prize
Winners who were offline at the reset are paid the next time their character loads. Resets run at 00:00 server time; if the server was off at midnight, the reset runs on the next start.
The Statistics button is missing
Config.EnableLeaderboard is off. Turning it off also stops the daily and season resets and their prizes.
Message Keys#
Every message comes from config/translations.lua, so the same refusal reads correctly in every language. The keys behind the refusals above:
Key | Means |
|---|---|
| The player does not hold a job from |
| The newspaper item is not registered in the inventory. |
| The bag does not fit in the inventory. |
| More than one bag is still owed from earlier routes. |
| Unreturned papers were taken out of this route's pay. |
| The route or the ride needs a higher level. |
| No free parking spot, or the bike could not spawn. |
| The server measured the player too far from the editor or the drop-off. |
| A throw was attempted off the work bike. |
Still stuck? Open a ticket and include your framework and its version, your inventory, the
server.cfgstart order, and the console output withConfig.Debug = true. A screenshot of the F8 console helps for anything about the interface.



