Salary System
With Settings.SalarySystem.enabled = true (the default), the resource replaces the framework’s paycheck with its own payout loop, so bosses can set per-grade salaries in-game.
Disabling the framework paycheck
With the salary system enabled you must turn off your framework’s own paycheck, or employees are paid twice.
In qb-core/server/player.lua, comment out the paycheck starter:
-- PaycheckInterval() -- disabled: bablo-bossmenu pays salariesHow a paycheck is decided
Every intervalMinutes (default 10), each online employee is paid:
- If their grade has a custom salary set in the boss menu / creator, that amount is paid.
- Otherwise, the framework’s own grade salary for that job is used as a fallback.
- Jobs without a boss menu are paid their normal framework salary — nothing changes for them.
Zero-salary grades are skipped. On QBCore and Qbox, off-duty employees are skipped unless offDutyPay = true — jobs marked offDutyPay in the framework’s own job data are always paid regardless. (ESX has no duty system — everyone counts as on duty.)
Society-funded paychecks
With societyFunded = true, paychecks for jobs that have a boss menu are taken out of the job’s society money. If the society can’t afford a paycheck, the employee is notified and that payout is skipped — it is not queued or retried.
Setting salaries in-game
- Boss Creator → Grades & Salary — edit each grade’s salary inline.
- Boss menu → Employees → Set Salary — sets the salary of that employee’s grade (requires
edit_permissions; without full access, only for grades below your own).
All salary changes are validated server-side and capped by Settings.SalaryLimit (default 25000).
Disabling the system
Set Settings.SalarySystem.enabled = false to keep your framework’s paycheck untouched. The “Set Salary” action disappears from the boss menu; grade salaries set in the creator are still written into the framework’s job data, so its paycheck keeps using them.

