# Creating A Product

## Create The Product&#x20;

Click on the Create Product located at the [Products Page](https://dashboard.paynow.gg/products)

<figure><img src="/files/1ALAmdZXyxT5PEFgLt9x" alt="Located in the top left of the products list page you&#x27;ll see a Create a product button to begin making a new product."><figcaption></figcaption></figure>

Fill out the fields in the Create a Product page. The more optimized and informative your descriptions are the better your store will have a chance at performing well. Include all of the features that someone will receive within your product.

### Details

Details of your product contain the essentials, such as name, url slug, description, and price.&#x20;

<figure><img src="/files/q8EGhiyA2EQVZkAaEiTQ" alt="Broad overview visual of the create a product page that include fields such as descriptions, price, name, tags, and more."><figcaption></figcaption></figure>

### Tags

Adding tags for your store can greatly help organize and categorize your products when you begin creating numerous products. You can create tags and find out more information about them in our Tags page!

<figure><img src="/files/3Ei8GIQ0zMIIXr3lIFep" alt="Creating a tag can help organize your store&#x27;s kits to better categorize them for your viewers. "><figcaption></figcaption></figure>

### Game Servers

You must select your server(s) you wish your product to be applied to in the game servers field. This tells PayNow where to apply your kit too.&#x20;

<figure><img src="/files/ODTeBAoZZcS1PMJLJtll" alt="Select a game server from this field located on the right of the page for PayNow to connect with it and associate the following package to it."><figcaption></figcaption></figure>

### Custom Variables

If you've created custom variables, you can associate them with a product here.\
Simply select one or more from the dropdown — these will be shown to customers during checkout to gather additional input like color, name tags, or quantity.

This allows for greater product personalization and dynamic command execution.

<figure><img src="https://effedion.nl/img/tagURGRqyixPnxRmJKZJ9Ql3tUIh2r.png" alt=""><figcaption></figcaption></figure>

#### Required Products

Required Products let you gate a product behind other purchases — the customer must already own the products listed here before they can buy this one. Useful for add-ons, bundles, or products that only make sense once a baseline package has been purchased.

Select one or more products from the dropdown. If you select more than one, the **Require all products** checkbox decides how the rule is applied:

* **Off (default)** – The customer only needs to own **one** of the selected products.
* **On** – The customer must own **all** of the selected products.

<figure><img src="/files/xyLGDqsmyIAhv2xr4Ubq" alt=""><figcaption></figcaption></figure>

#### Tier Group

Assigning a product to a **Tier Group** enables cumulative pricing and automatic subscription upgrades/downgrades. Customers who already own a lower tier in the same group only pay the difference when moving up.

Pick a tier group from the dropdown to add this product to it. You can create and manage tier groups on the Tier Groups page.

<figure><img src="/files/JbBtptIwMKXHvfinGv04" alt=""><figcaption></figcaption></figure>

#### Lifetime

The Lifetime section contains two cards: **Product lifetime cycle** and **Product availability period**.

**Product lifetime cycle**

Defines whether the product is available as a one-time purchase, a subscription, or both — and how long the customer keeps access after they buy it.

* **Allow One Time Purchases** – Customers can buy this product as a one-time purchase.
* **Allow Subscriptions** – Customers can subscribe to this product.
* **Should Expire** – When enabled, access to the product ends after a set duration. Most servers use 1-month packages, but any duration works.
* **Expires / Renews in** – The length of the product's lifetime. For subscriptions, this is also the renewal interval.

**Product availability period**

Controls **when** the product can be purchased on your store, separate from how long access lasts after a sale.

* **Disable product** – Turns the product off immediately. Sets *Enabled until* to now.
* **Enabled from** – The date the product becomes purchasable. Leave empty to make it available right away.
* **Enabled until** – The date the product stops being purchasable. Leave empty for no end date.

Use this for scheduled launches, limited-time drops, or hiding a product without deleting it.

**Trial configuration**

Trials let customers try a subscription product for a limited time before being charged. In PayNow's production testing, trials converted roughly 1 in 4 users into paying subscribers.

{% hint style="warning" %}
Trials are a **Pro plan (Tier 2)** feature and only work on subscription products. **Allow Subscriptions** must be enabled on this product for trial settings to take effect.
{% endhint %}

**Allow Trials** – Enables trials for this product.

* **Revoke immediately when canceled** – When a customer cancels during the trial, access is removed right away instead of at the end of the trial period.
* **Trial Period** – How long the trial lasts (e.g. 30 days). When it ends, the customer is automatically charged for the subscription unless they've canceled.
* **New Customers Only** – When enabled, only customers with no prior orders in a configurable window can start the trial. Use the **Customer must have no orders in the last** field to set that window.
* **Allow Repeat Trials** – When enabled, customers who have previously trialed or owned this product can trial it again after a cooldown. Use the **Customer must not have ordered the product in the last** field to set the cooldown.

On the delivery side, trials use their own command triggers — **On Trial Started** and **On Trial Ended** — available in the Commands section. The **On Purchase** trigger only fires once a trial converts into a paid subscription. New webhooks for trial started and trial ended events are available as well.

{% hint style="info" %}
If you're running a custom storefront, you'll need to update your template to support the trial flow on the frontend.
{% endhint %}

<figure><img src="/files/CRPTyHLgUE4hdEstpIJ0" alt="Easily set the duration of a product in the lifetime section of the create a product process."><figcaption></figcaption></figure>

### Stock

Maintaining stock levels can assist with balancing out your server as well it can add a level of desire for your packages that much more when stock is available again. This can help if your server is experiencing too many purchases for a specific server for instance. *A good problem to have.*

<figure><img src="/files/vKGKU01dGQ8R3MGgvwZd" alt="You can easily manage your stock levels of your products to avoid selling too many of a specific package and various options!"><figcaption></figcaption></figure>

#### Upselling

Configure upsells specific to this product. When a customer adds this product to their cart, the recommendations you set here are offered during checkout.

Tick **Enable Upselling** to turn upsells on for this product, then click **Add Recommendation** to add one. The fields are the same as store-wide upsells, plus a **Min. Product Qty** field that only appears here — the minimum quantity of **this** product required in the cart before the upsell is shown.

Per-product upsells take priority over store-wide upsells when both apply. See the Upselling page for a full breakdown of each field.

<figure><img src="/files/iX6JykdPyAfFapskV6v6" alt=""><figcaption></figcaption></figure>

## Deliverable Actions

### Commands

Commands are essential for your product as this is precisely how you will have your packages assigned to your customers. Below are all the currently available variables we allow in the command creation fields.&#x20;

<details>

<summary><strong>Available command variables</strong></summary>

* `{order.id}` ID of the order
* `{order.line_id}` ID of the order line
* `{checkout.id}` ID of the checkout session
* `{store.id}` ID of your store
* `{product.id}` ID of this product
* `{product.version_id}` ID of the product version id
* `{product.price}` base price of the product
* `{customer.id}` customer's ID
* `{customer.name}` customer's name
* `{customer.steam.id}` customer's Steam ID
* `{customer.steam.name}` customer's Steam name
* `{customer.steam.avatar}` customer's Steam Avatar
* `{customer.minecraft.uuid}` customer's Minecraft UUID
* `{customer.minecraft.name}` customer's Minecraft name
* `{customer.minecraft.avatar}` customer's Minecraft skin
* `{product.name}` name of this product
* `{product.slug}` slug of this product
* `{order.customer.id}` ID of the customer who bought the item
* `{order.customer.name}` name of the customer who bought the item
* `{order.customer.steam.id}` Steam ID of the customer who bought the item
* `{order.customer.steam.name}` Steam name of the customer who bought the item
* `{order.customer.steam.avatar}` Steam Avatar of the customer who bought the item
* `{order.customer.minecraft.uuid}` Minecraft UUID of the customer who bought the item
* `{order.customer.minecraft.name}` Minecraft name of the customer who bought the item
* `{order.customer.minecraft.avatar}` Minecraft Avatar of the customer who bought the item
* `{order.gifted_by_customer_id}` ID of the customer who gifted the item
* `{order.subtotal_amount}` subtotal amount of the order
* `{order.discount_amount}` discount amount applied
* `{order.giftcard_usage_amount}` amount of gift card used
* `{order.tax_amount}` tax amount of the order
* `{order.total_amount}` total amount of the order
* `{order.currency}` currency of the order

</details>

<figure><img src="/files/PkvqoLl8qCr1jSLWtCnS" alt="Commands are an essential part of a product. Located at the bottom of the page you can paste your commands that will execute on the game server selected. This is essential for assigning kits to players in-game."><figcaption></figcaption></figure>

### **Gift card**

In the '**Deliverable Actions**' tab, you can choose to create a gift card by selecting the '**Gift Card**' option. This allows you to provide customers with a gift card equivalent to the product's price upon purchase.

<figure><img src="/files/R1eS94oG2zSfZRx5B3K9" alt=""><figcaption></figcaption></figure>

### **Discord**

It is also possible to execute various actions on **Discord.** To do this, you first need to set up a Game Server, which will be used to configure the **Discord bot** in a similar way to your regular game servers.

<figure><img src="/files/YCfwTYFCp0KkJY9lv8GE" alt=""><figcaption></figcaption></figure>

There is also an option to **kick** or **ban** users from the **Discord**, as well as generate an invite link.

<figure><img src="/files/VcCpZDUB2FxNaQ2iFo9W" alt=""><figcaption></figcaption></figure>

### **Downloadable Files**

Downloadable products can be added to any package, giving users immediate access to their download upon purchase. Once the transaction is complete, the user will see the download link directly on the checkout screen. Additionally, they will receive an email with the download link, allowing them to access the product at any time.

If a downloadable product is updated, users who previously purchased the package will automatically gain access to the updated version.

To prevent users from receiving new content added to an existing product they’ve already purchased, it’s recommended to create a **new product** rather than updating the existing one — **unless** the update is to the file they originally purchased.

#### Metadata

The **Metadata** tab allows you to attach custom key-value fields to a product. These values are not shown to customers, but are included in **webhook payloads** and the **Product API** response.

This feature is useful for:

* Sending structured data to external systems.
* Tagging or categorizing products for backend automation.
* Storing configuration values used by delivery scripts or external platforms.

To use it, click **Add field** and enter your desired key and value. The data will be available whenever this product is retrieved through the API or included in a purchase event.

***

After completing the necessary steps, click '**Create**' to finalize the package. If you'd prefer to set up the package with only the essentials for now, you can skip some steps and edit the package later to add more details.

## Uploading A Product Image

After creating the product you'll then be available open it back up to add your custom image in the top right of the product edit page.&#x20;

{% hint style="info" %}
Recommended size of at least 256x256px.
{% endhint %}

<figure><img src="/files/whZBVJDi3S0RK96mbtDq" alt="Uploading an image is crucial for the first step in selling your product. Create a visually appealing image that also helps represent the package you&#x27;re selling."><figcaption></figcaption></figure>


---

# 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://guides.paynow.gg/content/products/creating-a-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.
