ScriptsAboutBlogToolsKnowledge BaseReviewsFAQBasketDocsSupport
Tutorials

How to Make a Custom Job With a Boss Menu in QBCore

A job with a proper boss menu โ€” where the boss can hire, fire, promote, and manage the job's money โ€” turns a flat job into a living business on your server. Here's how these systems work and how to set one up in QBCore.

What a boss menu adds

A basic job just assigns players a role and grade. A boss menu adds management on top:

  • Hiring and firing employees
  • Promoting/demoting grades
  • A society/business bank account โ€” shared job money
  • Managing the job from in-game rather than admin commands

This is what makes a mechanic shop, restaurant, or gang feel like a real organization players run themselves.

The pieces involved

Setting up a managed job typically involves:

  1. The job definition โ€” the job and its grades, with the top grade marked as boss (isboss = true). Covered in our add a job guide.
  2. A boss menu resource โ€” provides the management interface.
  3. A society/banking system โ€” the shared job account the boss manages.
  4. A boss menu location โ€” where the boss accesses the menu (often via ox_target at a desk or marker).

Step 1: Define the job with a boss grade

In your job definition, make sure the top grade is flagged as the boss:

['mechanic'] = {
    label = 'Mechanic',
    grades = {
        ['0'] = { name = 'Trainee', payment = 50 },
        ['1'] = { name = 'Mechanic', payment = 75 },
        ['2'] = { name = 'Boss', payment = 150, isboss = true },
    },
},

The isboss = true flag is what grants access to the boss menu.

Step 2: Set up the boss menu resource

Install and configure a boss menu system compatible with your QBCore version. This provides the actual hire/fire/promote interface. Configure:

  • Which jobs have boss menus
  • The location where the boss accesses it
  • Permissions (only the boss grade should access management)

Step 3: Configure the society account

The boss menu ties into a society/business banking system โ€” the shared account where job income collects and from which the boss pays wages or expenses. Make sure this is set up so the job has real economic function.

Step 4: Place the access point

Decide where the boss manages the job โ€” usually a desk or office, accessed via target interaction. Grab the coordinates and configure the access point there.

Step 5: Test the full flow

  1. Give a test player the boss grade.
  2. Access the boss menu at its location.
  3. Test hiring another player, promoting, firing.
  4. Confirm only the boss grade can access it (server-side โ€” a non-boss shouldn't be able to exploit their way in).
  5. Check the society account works.

Common pitfalls

  • Boss grade not flagged โ€” without isboss = true, no menu access.
  • Society account not set up โ€” the job has no shared money.
  • Weak permission checks โ€” make sure management is validated server-side, not just hidden on the client.
  • Version mismatches โ€” boss menu resources must match your QBCore version.

Jobs work better with multijob

Once players can be hired into your custom jobs, a multijob system lets them hold this alongside other roles and switch cleanly โ€” making your custom jobs far more usable. Our Viper Multijob handles exactly this with grade display, duty toggling, and server-side security.

Browse Viper Development scripts โ†’.

Premium FiveM scripts for QBCore & ESX

Viper Development builds escrow-protected, dual-framework scripts that install clean and run without dragging your server down.

Keep reading

Related guides