# Product

## Syntax

```yaml
products:
  vip:
    cost: #
    name: TEXT
    settings:
      ...
    item:
      ...
    gui:
      ...
```

## Cost

Cost of the item. Cost can be live update with the live economy feature.

```yaml
    cost: #
```

## GUI priority

Use the number to determine the priority of an item in the shopping menu. The way the priority works is that the lower the number you enter, the higher the item will be.

```yaml
    settings:
      gui-priority: #
```

## Purchase conditions

Set conditions that will allow/disallow users to purchase items.\
Check [Conditions](/shopsystem/setup/conditions.md) page for specific informations about that.

```yaml
    settings:
      purchase_conditions: 'EXPRESSION'
```

## View conditions

Set conditions that will allow/disallow users to view items in the gui.\
Check [Conditions](/shopsystem/setup/conditions.md) page for specific informations about that.

```yaml
    settings:
      view_conditions: 'EXPRESSION'
```

## Actions

Actions to be performed after the purchase of the item. The placeholder of the purchaser is **%player%**\
Check [Actions](#undefined) page for specific informations about that.

```yaml
    settings:
      actions: 'EXPRESSION'
```

## Live economy

Link your product price with website stores like Tebex or CraftingStore

**Syntax**

```yaml
    settings:
    live-economy:
        type: TEXT
        api-key: TEXT
        product-id: #
        exchange-rate:
          divider: #.#
          amount: #
```

**Type**\
Type can be CRAFTINGSTORE (<https://craftingstore.net>) or TEBEX (<https://tebex.io>)

**API key**\
Your applicaiton API key

**Product id**\
Package id of your product on the webstore

**Exchange rate:**\
This means that for example 1$ is 10 when you set divider to 0.1 and amount to 1

## Amount selection menu

If you want to provide your players to select an amount of purchased item, you can! Just put to the product settings sections this boolean

```yaml
amount-select: true
```

Now everything works! But if you want to give the player selected amount of items, you can use placeholder %amount% in console and player command actions.\
\
menu:

![](/files/kfYUbabAaNXv37FBjgZ8)


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://gennarioplugins.gitbook.io/shopsystem/setup/product.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
