Accueil › Documentation › Configuration · origen_billing

Configuration · origen_billing

Toutes les options configurables se trouvent dans config.lua (partagé client + serveur) et svconfig.lua (serveur uniquement, logs Discord). Les deux fichiers sont dans escrow_ignore : modifie-les librement.


General

Variable Par défaut Description
Config.Debug false Affiche des messages de débogage dans la console du serveur
Config.Language 'en' Fichier de langue à charger depuis locales/. Options : 'en', 'es'
Config.MaxPendingInvoices 10 Nombre maximal de factures en attente qu’un joueur peut avoir en même temps
Config.InvoiceDistance 3.0 Distance maximale (unités du jeu) à laquelle l’émetteur doit se trouver du destinataire pour émettre une facture en personne
Config.ExpirationDays 30 Réservé à un usage futur ; non appliqué dans la version actuelle

Providers

Variable Par défaut Description
Config.BankingProvider 'auto' Ressource bancaire à utiliser. 'auto' choisit la première ressource en cours d’exécution détectée
Config.NotifyProvider 'auto' Ressource de notifications à utiliser. 'auto' choisit la première ressource en cours d’exécution détectée

Valeurs valides pour Config.BankingProvider : 'auto' · 'qb-banking' · 'renewed-banking' · 'fd_banking' · 'kartik-banking' · 'okokBanking' · 'tgg-banking' · 'tgiann-bank' · 'wasabi_banking' · 'qb-management' · 'custom'

Valeurs valides pour Config.NotifyProvider : 'auto' · 'ox_lib' · 'origen_notify' · 'brutal_notify' · 'okokNotify' · 'mythic_notify' · 'lation_ui' · 'r_notify' · 't-notify' · 'wasabi_notify' · 'pNotify' · 'FL-Notify' · 'ZSX_UIV2' · 'custom'


Commands

lua
Config.Commands = {
    OpenBilling      = 'billing',       -- Standard employee panel
    OpenBillingAdmin = 'billingadmin',  -- Global admin panel (staff only)
}

Les modifications nécessitent de redémarrer la ressource.


Authorized jobs (seed)

Config.AuthorizedJobs définit les métiers initiaux insérés dans la base de données au premier démarrage. Les métiers qui existent déjà dans la base de données ne sont pas écrasés.

lua
Config.AuthorizedJobs = {
    ['police'] = {
        label          = 'LSPD',
        societyAccount = 'police',
        canInvoice     = true,
        isBoss         = function(source, jobName)
            return Custom.isJobBoss(source, jobName)
        end,
        commission  = 90.0,  -- % of net amount paid to the author
        societyLoss = 80.0,  -- % deducted from total before commission
    },
}

Exemple de flux de paiement

Pour une facture de police de $1,000 avec societyLoss = 80 et commission = 90 :

Étape Calcul Résultat
Montant net 1000 − (1000 × 80%) $200
Commission de l’auteur 200 × 90% $180 → banque de l’auteur
Dépôt à la société 200 − 180 $20 → compte de la société

Une fois que la ressource a démarré une fois, utilise /billingadmin pour gérer les métiers. Les modifications de Config.AuthorizedJobs ne s’appliquent qu’aux métiers qui n’existent pas encore dans la base de données.


Webhooks Discord (svconfig.lua)

lua
return {
    enabled = true,
    webhooks = {
        ['invoice-created']   = 'YOUR_WEBHOOK_URL',
        ['invoice-paid']      = 'YOUR_WEBHOOK_URL',
        ['invoice-cancelled'] = 'YOUR_WEBHOOK_URL',
        ['commission-paid']   = 'YOUR_WEBHOOK_URL',
    },
}

Mets enabled = false pour désactiver tous les logs Discord.