Installation

Script Download

Before starting, you must log in to the CFX portal to download the asset. You will be able to download it as many times as you want on the official CFX page. Just as you download it the first time, you will also download it multiple times in the future to get updates.

1

Logging in to the CFX Portal

First, log in to the official CFX portal by clicking here.

2

Finding Your Assets

Once logged in, navigate to the Granted Assets section to access your purchased assets. You can download them by clicking the "Download" button.

Remember, if you encounter any issues or errors when starting the asset, you can check here to see if the problem is related.

Understanding CFX Auth

Downloading Dependencies

The dependencies for this asset are mandatory, so please follow the dependency guide completely and use all required files.

When downloading a dependency, ensure the file is properly unzipped and does not include "-main" at the end of its name. If it does, please remove it.

This script has dependencies depending on its framework, even if it says optional we recommend having them for correct use.


Update artifacts and gamebuild

Updating to the latest artifacts and gamebuild is essential to avoid common server issues. Here's how to do it properly:

1

Update Artifacts

Completely replace your current artifacts with the latest version. Download the appropriate artifacts for your operating system from the official links:

2

Update Gamebuild

Using the latest gamebuild is critical to take advantage of the newest features and avoid compatibility errors.

Edit the server.cfg file and add the following line:

sv_enforceGameBuild 3258

You can see the complete guide to update your server here:

How to update my server

Server.cfg Positioning

This asset must always be started below your framework and inventory. Failure to do so may result in functionality issues or critical errors. To ensure smooth operation and proper initialization, it is recommended to start the entire download folder using "ensure [billing]" in your server.cfg.

## First we will start the cores, never below
ensure es_extended or qb-core

## The inventory should be executed above
ensure [inventory]

## Run qs-billing here along with its dependencies
ensure [billing]

Database Installation

For this step, we highly recommend using HeidiSQL to avoid issues, as it provides an updated version of MariaDB. We have a guide that explains step-by-step how to use HeidiSQL. If you choose to use phpMyAdmin, we will not be responsible for any errors that may occur in your database.

How to install HeidiSQL

It is essential to execute the SQL file completely for this asset to function correctly.

CREATE TABLE `qs_billing` (
  `id` int(50) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `receiver_identifier` varchar(255) NOT NULL,
  `receiver_name` varchar(255) NOT NULL,
  `author_identifier` varchar(255) NOT NULL,
  `author_name` varchar(255) NULL DEFAULT NULL,
  `society` varchar(255) NOT NULL,
  `society_name` varchar(255) NOT NULL,
  `item` varchar(255) NOT NULL,
  `invoice_value` int(50) NOT NULL,
  `status` varchar(50) NOT NULL,
  `notes` varchar(255) NULL DEFAULT ' ',
  `sent_date` varchar(255) NOT NULL,
  `limit_pay_date` varchar(255) NULL DEFAULT NULL,
  `fees_amount` int(50) NULL DEFAULT 0,
  `paid_date` varchar(255) NULL DEFAULT NULL
);

Items for inventories with metadata

This item is optional and will only work with metadata-based inventories.

This system will only work with metadata items, don't worry, you can not use this system if you do not have a compatible inventory or you do not like this function.

Items for qs-inventory
['bill_paper'] = {
    ['name'] = 'bill_paper',
    ['label'] = 'Bill Paper',
    ['weight'] = 0,
    ['type'] = 'item',
    ['image'] = 'bill_paper.png',
    ['unique'] = true,
    ['useable'] = true,
    ['shouldClose'] = true,
    ['combinable'] = nil,
    ['description'] = 'View your invoice'
},
Items for qb-inventory
    ['bill_paper'] = {
        ['name'] = 'bill_paper',
        ['label'] = 'Bill Paper',
        ['weight'] = 10,
        ['type'] = 'item',
        ['image'] = 'bill_paper.png',
        ['unique'] = false,
        ['useable'] = true,
        ['shouldClose'] = true,
        ['combinable'] = nil,
        ['description'] = 'Visa card, can be used via ATM'
    },
Items for ox_inventory
['bill_paper'] = {
    label = 'Bill paper',
    weight = 1,
    stack = false,
    close = false,
},

Basic asset configuration

We do not recommend editing frameworks unnecessarily, since almost all assets depend exclusively on your framework and exports on the name of your framework. Otherwise and if you edited your framework, read these steps carefully.

Please expand each part to see information about the configuration of the asset, this way you will understand the general operation of the asset on the framework and editable files side.

Basic framework configuration

The asset will work automatically if your framework is called es_extended or qb-core, it will automatically detect if any of them are started. In case your framework has been renamed, you can modify it in config.lua to edit the name of your framework.

Advanced framework configuration

If your framework is completely modified, both in events and name, you should access client/custom/framework or server/custom/framework to adapt the native events of your framework to the codes you have created. If this step doesn't work, we ask that you ask your framework modifier or trusted developer for help.

More general settings

This asset contains multiple configurations within the config folder. But you can also access more open source and configurations within client/custom or server/custom. We do not recommend using these configurations if you do not have the basics of programming.

Last updated