> For the complete documentation index, see [llms.txt](https://beetle-studios.gitbook.io/beetle-studios-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://beetle-studios.gitbook.io/beetle-studios-docs/beetle-studios/ottos.md).

# Ottos

## Used car dealership (player-owned)

`bs_ottos` is a comprehensive used car dealership.

Players can own and operate the business, hire other players, and run a real secondary vehicle market.

***

### Features

* **Inventory system**
  * Purchase stock or modified vehicles and add them to inventory.
  * Vehicles are removed from the garage and stored in a separate inventory.
* **Display system**
  * Display inventory vehicles at configurable locations.
  * Buyers and employees can inspect a specific displayed vehicle.
  * Buyers and employees can also browse the full inventory catalog.
* **Vehicle information**
  * Shows major upgrades.
  * Shows mileage.
  * Shows whether a vehicle needs service.
* **Employee workflow**
  * Auto-populate the nearest plate.
  * Quickly evaluate a purchase using the vehicle’s info.
  * Separate permissions for **buying** vs **selling**.
* **Business visibility**
  * Transaction history for purchases and sales.
  * Management dashboard for sales, profitability, and top performers.

***

### Requirements & Dependencies

#### Framework

* **Qbox** or **QBCore**

#### Required resources

* `oxmysql`
* `ox_lib`
* `jg-dealerships`
* `jg-advancedgarages`
* `jg-mechanic`

***

### Supported integrations

#### Targeting

* `ox_target` or `qb-target`

#### Banking

* `Renewed-Banking`
* `qb-banking`
* `okokBanking`
* `fd_banking`
* `tgiann-bank`

***

### Install

{% stepper %}
{% step %}

### Drop in the resource

Place the `bs_ottos` folder in your server’s resources.

Keep the folder name as `bs_ottos`.
{% endstep %}

{% step %}

### Ensure dependencies

Ensure these start before `bs_ottos`:

* `oxmysql`
* `ox_lib`
* `jg-dealerships`
* `jg-advancedgarages`
* `jg-mechanic`
  {% endstep %}

{% step %}

### Start the script

Add to `server.cfg`:

```cfg
ensure bs_ottos
```

{% endstep %}
{% endstepper %}

***

### Configuration (what you can change)

#### Server setup

* Framework: **QBCore** or **Qbox**
* Targeting: `ox_target` or `qb-target`
* Banking: one of the supported banking systems

#### Business setup

* Job name
* Job grade permissions
  * Who can **buy** vehicles
  * Who can **sell** vehicles
* Dealership location
* Display spots
* Display zone distance
* `GarageId` for `jg-advancedgarages`

#### Economy & labels

* Commission percentage for employees
* Minimum / maximum purchase prices
* Minimum / maximum sale prices
* Labels for:
  * Engine levels
  * Suspension levels
  * Brakes levels
  * Transmission levels
  * Turbo stock vs installed

***

### Note

Default configuration is located at [Gabz Ottos](https://fivem.gabzv.com/package/5127313) but all locations can be changed. [Gabz](https://fivem.gabzv.com/category/subscription) also offers a monthly subscription for an assortment of maps.
