> For the complete documentation index, see [llms.txt](https://docs.cuxial.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cuxial.com/scripts/core/cuxial-banking/troubleshooting.md).

# Troubleshooting

Common Cuxial Banking problems, with their cause and fix.

The most frequent problems after installing Cuxial Banking, with the cause and the fix for each one.

<details>

<summary>The resource does not start</summary>

**Cause.** A dependency is missing or starts later than the bank. Cuxial Banking needs OneSync, `ox_lib`, `oxmysql` and `cuxial_bridge`.

**Fix.** Enable OneSync and start the dependencies first:

{% code title="server.cfg" %}

```cfg
ensure ox_lib
ensure oxmysql
ensure cuxial_bridge
ensure cuxial_banking
```

{% endcode %}

</details>

<details>

<summary>Every operation fails and the console shows a database step in red</summary>

**Cause.** A database step failed on start. The bank stops applying the rest to avoid leaving the tables half done, and refuses operations until the database is ready.

**Fix.** Read the red lines in the server console: they name the step and the reason given by the database. A usual cause is a database user without permission to create or alter tables. Fix the cause and restart the resource; it continues from the step that failed.

</details>

<details>

<summary>I edited a file in data/ and nothing changed</summary>

**Cause.** After the first start, the general, accounts, cards, loans, savings, cheques, rewards, credit score, ATM, admin and logs sections are read from the database, not from the files.

**Fix.** Change the value in `/bankadmin` → Config. To load the file again, restart the resource and press the reset button of that section in the panel. See [Where settings live](/scripts/core/cuxial-banking/configuration.md#where-settings-live).

</details>

<details>

<summary>Cash shows as 0, or deposits and withdrawals fail</summary>

**Cause.** The bank is counting cash as an inventory item named `money`, and your server uses another item or keeps cash in the framework.

**Fix.** In `/bankadmin` → Config → General, set the cash item to the one your inventory uses, or turn cash as item off. Before the first start, do it in the files as shown in [Installation](/scripts/core/cuxial-banking/installation.md).

</details>

<details>

<summary>There are no bank blips and no target option at the branches</summary>

**Cause.** One of these:

* No target supported by `cuxial_bridge` is running.
* The branches were never created, because the points table already had rows or `BankLocations` was empty on the first start.
* `ShowBankBlips` is off, which hides the blips only.

**Fix.** Start your target before the bank. Then open `/bankadmin` → Points and check the list; create the branches there if it is empty.

</details>

<details>

<summary>I changed BankLocations and the branches did not move</summary>

**Cause.** `data/banks.lua` is only read on the first start, to fill an empty points table.

**Fix.** Move, add or delete branches from `/bankadmin` → Points.

</details>

<details>

<summary>The branch NPC does not appear</summary>

**Cause.** NPCs are shown by `cuxial_interactions`. Without it, or when the point has no ped model, the branch is a target zone.

**Fix.** Start `cuxial_interactions` and give the point a ped model in `/bankadmin` → Points. The bank picks the change up when that resource starts or stops; no restart needed.

</details>

<details>

<summary>The ATM says I have no card</summary>

**Cause.** An ATM only opens for a player carrying an active card. The card items may also be missing from the inventory, so the bank could not hand one out.

**Fix.** Order a card at a branch. If ordering fails, check that `card_standard`, `card_premium` and `card_elite` exist in your inventory with `stack = false`, and that the `item` of each tier in the settings matches those names.

</details>

<details>

<summary>Using the cheque, the chequebook or the receipt does nothing</summary>

**Cause.** The items are not registered in the inventory, or their names differ from the ones in the settings.

**Fix.** Add the entries of `install/items.lua` to your inventory, keep `consume = 0` on the three of them, and restart the server. The chequebook only opens for a boss of a job.

</details>

<details>

<summary>The chequebook says a boss is required</summary>

**Cause.** Business cheques come out of the business account, which only the bosses of the job can use.

**Fix.** Give the player a boss grade in their job.

</details>

<details>

<summary>A job has no business account</summary>

**Cause.** Business accounts are created on start from the job list of your framework. The job did not exist yet, or the framework was not ready within the first minute.

**Fix.** Make sure the framework starts before the bank, then restart `cuxial_banking`. New jobs get their account on the next start.

</details>

<details>

<summary>Players never receive paychecks at the bank</summary>

**Cause.** The bank does not generate salaries. It only stores the paychecks other resources send.

**Fix.** Call [`AddPaycheck`](/scripts/core/cuxial-banking/developers.md#addpaycheck) from the resource that pays salaries.

</details>

<details>

<summary>Purchases made in other resources do not show in the history</summary>

**Cause.** One of these:

* `LogExternalBankChanges` is off.
* The server runs ESX. This record requires QBox or QBCore.
* The other resource used `AddMoney` or `RemoveMoney` of the bank, which write no history.

**Fix.** Turn the option on in `/bankadmin` → Config → General, or write the entry yourself with [`AddTransaction`](/scripts/core/cuxial-banking/developers.md#addtransaction).

</details>

<details>

<summary>/bankadmin says I have no permission</summary>

**Cause.** Your character does not have the permission set in `admin.permission`, `'admin'` by default, in your framework.

**Fix.** Grant yourself that permission in the framework. On ESX the group must be `admin` or `superadmin`. See [Commands & permissions](/scripts/core/cuxial-banking/commands.md#permissions).

</details>

<details>

<summary>No logs reach Discord</summary>

**Cause.** The convar is empty, or that log type is disabled.

**Fix.** Add the webhook to `server.cfg` with `set`, not in the files of the resource:

{% code title="server.cfg" %}

```cfg
set cuxial_banking_webhook "https://discord.com/api/webhooks/..."
```

{% endcode %}

Then check in `/bankadmin` → Config → Logs that logs and the log type are enabled.

</details>

<details>

<summary>The target option opens nothing, or the screen stays empty</summary>

**Cause.** The interface is not loading. The folder `web/build` is missing or incomplete, usually after a partial upload.

**Fix.** Make sure `web/build/index.html` and the folder `web/build/assets` exist inside the resource. If they do not, copy the resource again from the original package and restart the server.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cuxial.com/scripts/core/cuxial-banking/troubleshooting.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
