Exports & Developer API
Comprehensive Lua exports and client/server events for integrating third-party resources with Finals Bossmenu / Management.
1. Server-Side Exports
Process or Store a Paycheck
Lua
--- Issues or stores a paycheck for the specified player source based on Config.PaycheckDelivery.method
---@param source number Server player source ID
---@param amount number Gross salary amount
---@param jobName string Department job name (e.g. 'police')
---@param opts table|nil Optional overrides: { moneyType = 'bank', skipSlip = false }
exports['finals_management']:AddPendingPaycheck(source, amount, jobName, opts)
-- Aliases:
exports['finals_management']:ProcessPaycheck(source, amount, jobName, opts)
exports['finals_management']:SendPaycheck(source, amount, jobName, opts)Get Player Duty Status
Lua
--- Returns whether a player is currently on watch / on duty
---@param source number
---@return boolean
local isOnDuty = exports['finals_management']:GetPlayerDutyStatus(source)Get Society Vault Balance
Lua
--- Queries the active society bridge for the department's balance
---@param jobName string
---@return number
local vaultBalance = exports['finals_management']:GetSocietyBalance('police')2. Client-Side Exports
Open Management Tablet
Lua
--- Programmatically opens the boss management tablet (validates permissions)
exports['finals_management']:OpenBossMenu()Display Custom Paycheck Slip
Lua
--- Renders the Paytm/Maze Bank animated receipt slip overlay on the player's screen
---@param dataTable table Slip copy, amount, recipient, and logo
---@param layoutTable table Position, size, and display duration
exports['finals_management']:ShowPaycheck({
title = 'Salary Deposit',
amount = 1250,
recipient = 'John Doe',
department = 'San Andreas State Police',
currencySymbol = '$',
ref = 'TXN-94821',
}, {
position = 'middle-right',
size = 'large',
displayMs = 3500,
})Collect Pending Paycheck
Lua
--- Triggers collection of accrued paychecks from the database
exports['finals_management']:CollectPendingPaycheck()3. Events & Triggers
Client Events:
finals_management:client:showPaycheck(payloadTable,layoutTable): Triggers the NUI receipt slip.finals_management:client:timedPaycheck(data): Internal event invoked by the server payroll cycle.finals_management:client:openBossMenu: Opens the boss interface.
Server Events:
finals_management:server:toggleDuty: Toggles current player duty state and logs session.finals_management:server:depositSociety(amount): Deposits cash into society vault.finals_management:server:withdrawSociety(amount): Withdraws money from society vault.
4. Custom Framework Bridging (bridge/custom.lua)
For custom or standalone frameworks, open bridge/custom.lua and implement the 6 bridge methods:
FinalsBridge.GetPlayer(source)FinalsBridge.GetJob(source)FinalsBridge.SetJob(source, job, grade)FinalsBridge.IsBoss(source)FinalsBridge.AddMoney(source, type, amount)FinalsBridge.GetOfflinePlayers(job)