> For the complete documentation index, see [llms.txt](https://docs.rainmad.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rainmad.com/resources/blackmarkets-player-run-contraband-operation/how-to-add-an-item.md).

# How to Add an Item

Every item that can be **ordered, stocked or sold** lives in `cfg.items`. Adding one is two steps: register it in your inventory, then list it here.

{% stepper %}
{% step %}

## Register the item in your inventory

The item or weapon must already exist in your inventory. Items and weapons are usually registered separately — in ox\_inventory, for example, items live in `data/items.lua` and weapons in `data/weapons.lua`. Blackmarket doesn't create them; it only trades what your server already has.
{% endstep %}

{% step %}

## Add it to `cfg.items`

```lua
cfg.items = {
    -- existing entries...

    { name = 'WEAPON_HEAVYPISTOL', supplyPrice = 950, maxPerSupplyOrder = 8 },
    { name = 'lockpick', supplyPrice = 120, label = 'Lockpick', maxPerSupplyOrder = 25 },
}
```

### Fields

| Field               | Required | Default                                    | Description                                                                                                      |
| ------------------- | -------- | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `name`              | Yes      | —                                          | Item/weapon name, exactly as in your inventory.                                                                  |
| `supplyPrice`       | Yes      | —                                          | Cost to order one unit from the vault. The sale price defaults to `supplyPrice × cfg.warehouse.pricing.default`. |
| `label`             | No       | inventory label                            | Display name override in the UI.                                                                                 |
| `weight`            | No       | inventory weight                           | Per-unit weight used for van capacity (`capacity.mode = 'weight'`).                                              |
| `minPerSupplyOrder` | No       | `cfg.supplyOrder.defaultMinPerSupplyOrder` | Minimum units per order for this item.                                                                           |
| `maxPerSupplyOrder` | No       | `cfg.supplyOrder.defaultMaxPerSupplyOrder` | Maximum units per order for this item.                                                                           |
| `propModel`         | No       | `cfg.sale.itemPreview.defaultProp`         | Prop shown in the van's 3D item-preview camera.                                                                  |

{% hint style="warning" %}
After editing `cfg.items`, **restart the resource**. New items do not appear in already-open laptops or sales until the next session.
{% endhint %}
{% endstep %}
{% endstepper %}

## Set its price

* **Supply price** (the buy cost) is fixed in `cfg.items`.
* **Sale price** (what customers pay) is set per warehouse from the laptop's **Pricing** tab, within the `cfg.warehouse.pricing.limit` range. New items start at `supplyPrice × pricing.default`.
