> Markdown version of https://docs.paynow.gg/guides/products/creating-a-product/. The index of all pages is at https://docs.paynow.gg/llms.txt, and any page can be read as Markdown by appending `.md` to its URL.

# Creating a Product

The complete field reference for building a product, covering details, delivery, lifetime, stock, upsells and metadata.

This is the full reference. For one working product quickly, start with [Your First Product](https://docs.paynow.gg/guides/getting-started/your-first-product/) and come back here for the detail.

*Dashboard → Content → Products → **Create Product**. Needs `product_create`.*

![The Create a Product page showing the Details section with name, slug, description and price.](https://docs.paynow.gg/guides/products/creating-a-product/product-create-01.png)

## Details

| Field           | What it does                                                                        |
| --------------- | ----------------------------------------------------------------------------------- |
| **Name**        | Customer-facing product name.                                                       |
| **URL slug**    | Appears in the product's storefront address. Changing it later breaks shared links. |
| **Description** | What the customer receives.                                                         |
| **Price**       | The amount charged, in your store currency.                                         |

List every feature the buyer receives, concretely. "VIP rank" tells them nothing; "VIP rank: `/fly` in spawn, 3 home points, coloured chat name, priority queue" tells them what they're paying for, and gives you something to point at if they later claim they were misled.

## Regional Pricing

Charge different amounts in different regions rather than converting one price everywhere. A **Business** plan feature, and it appears only when you **edit** a saved product: a globe button beside the **Price** field.

Per region you set **Price**, **Currency**, whether the price is **Tax Inclusive**, and an **Enabled** toggle. **Base Price Percentage** covers every region you haven't given an explicit override, as a percentage of your base price.

PayNow's own note in that dialog: regional pricing is for advanced users, and there is **no proxy or VPN prevention** behind it. Anyone can present themselves as being in your cheapest region. Price the gap accordingly.

This is separate from [Adaptive Currency](https://docs.paynow.gg/guides/store-settings/adaptive-currency/), which converts one price into local currency at PayNow's expense. Regional pricing sets genuinely different prices.

## Tags

Tags organise and categorise products on your storefront. See [Tags](https://docs.paynow.gg/guides/your-webstore/tags/).

## Game Servers

**Select the server(s) this product applies to.** This is how PayNow knows where to deliver the purchase.

> Miss this and the product sells but delivers nowhere. If you run several servers from one store, selecting the wrong one is just as bad: the customer pays and the perk lands somewhere they aren't playing. See [Game Servers](https://docs.paynow.gg/guides/integrations-and-commands/game-servers/).

## Custom Variables

Select [custom variables](https://docs.paynow.gg/guides/integrations-and-commands/custom-variables/) from the dropdown to collect input from the customer at checkout, such as a colour, a name tag or a quantity. The values feed into command execution, so delivery can be personalised rather than fixed.

## Required Products

Gate this product behind other purchases: the customer must already own the listed products before buying this one. Useful for add-ons, expansions, and anything that only makes sense on top of a base package.

| **Require all products** | Behaviour                                                |
| ------------------------ | -------------------------------------------------------- |
| **Off** (default)        | The customer needs **any one** of the selected products. |
| **On**                   | The customer needs **all** of them.                      |

## Tier Group

Assign the product to a [tier group](https://docs.paynow.gg/guides/products/tier-groups/) for cumulative pricing and automatic subscription upgrades and downgrades. Customers who own a lower tier pay only the difference.

## Lifetime

Two cards that are easy to confuse. **Lifetime cycle** is how long access lasts *after* a purchase. **Availability period** is when the product can be *bought at all*.

### Product lifetime cycle

| Field                        | What it does                                                                      |
| ---------------------------- | --------------------------------------------------------------------------------- |
| **Allow One Time Purchases** | Customers can buy it outright.                                                    |
| **Allow Subscriptions**      | Customers can subscribe to it.                                                    |
| **Should Expire**            | Access ends after a set duration. Most servers use one month.                     |
| **Expires / Renews in**      | The length of that duration. For subscriptions this is also the renewal interval. |

You can enable both purchase types on one product.

### Product availability period

| Field               | What it does                                                |
| ------------------- | ----------------------------------------------------------- |
| **Disable product** | Turns it off immediately by setting *Enabled until* to now. |
| **Enabled from**    | When it becomes purchasable. Empty = available now.         |
| **Enabled until**   | When it stops being purchasable. Empty = no end date.       |

Use this for scheduled launches, limited drops, and retiring a product without losing its order history.

### Trial configuration

Trials work on **subscription products only**. **Allow Subscriptions** must be enabled for any trial setting to take effect. In PayNow's production testing, trials converted roughly **1 in 4** users into paying subscribers.

| Field                                                      | What it does                                                                                      |
| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| **Allow Trials**                                           | Enables trials for this product.                                                                  |
| **Revoke immediately when canceled**                       | Removes access on cancellation instead of at the trial's scheduled end.                           |
| **Trial Period**                                           | How long the trial lasts. At the end the customer is charged automatically unless they cancelled. |
| **New Customers Only**                                     | Only customers with no prior orders in a configurable window can start a trial.                   |
| **Customer must have no orders in the last**               | That window.                                                                                      |
| **Allow Repeat Trials**                                    | Lets previous trialists or owners trial again after a cooldown.                                   |
| **Customer must not have ordered the product in the last** | That cooldown.                                                                                    |

Trials have their own command triggers: **On Trial Started** and **On Trial Expired** in the Commands section. The old docs call the second one "On Trial Ended"; the dashboard says **On Trial Expired**. **On Purchase fires only when a trial converts to paid**, so a product relying solely on On Purchase delivers nothing during the trial itself. Dedicated webhooks exist for trial started and trial ended events. A custom storefront needs its template updated to support the trial flow. Full detail: [Trials](https://docs.paynow.gg/guides/orders-and-subscriptions/trials/).

## Stock

Limit how many can be sold, for balance (too many of one package can distort a server) or for scarcity (limited availability drives urgency, and restocks are an event worth announcing).

## Upselling

Configure upsells specific to this product. When it's added to the cart, your recommendations are offered at checkout.

Tick **Enable Upselling**, then **Add Recommendation**. The fields match store-wide upsells plus one that only exists here: **Min. Product Qty**, the minimum quantity of *this* product required in the cart before the upsell shows. **Per-product upsells take priority over store-wide upsells** where both apply. See [Upselling](https://docs.paynow.gg/guides/marketing/upselling/).

## Deliverable Actions

### Commands

How the purchase reaches the player. Commands run on the game server(s) you selected, using placeholders that PayNow swaps for the buyer's real details.

```
lp user {customer.minecraft.uuid} parent add vip
```

Each command has a **stage** deciding when it fires, an **Execute when online** option, and an optional server override. There are 33 placeholders, and the two customer sets are not interchangeable: `{customer.*}` is who the product is *for*, `{order.customer.*}` is who *paid*. On a gift those differ.

[Commands & Placeholders](https://docs.paynow.gg/guides/integrations-and-commands/commands/) covers all of it, with the full placeholder reference and worked examples per game.

### Gift card

Issue a [gift card](https://docs.paynow.gg/guides/marketing/gift-cards/) equal to the product's price on purchase.

### Discord

Trigger [Discord](https://docs.paynow.gg/guides/integrations-and-commands/discord-servers/) actions on purchase: assign roles, kick or ban a user, or generate an invite link. Requires a Game Server entry configured for the Discord bot, set up much like a normal game server.

### Downloadable files

Attach a file the customer receives immediately. The download link appears on the checkout screen and is emailed to them for later access.

> **Updating the file gives every previous buyer the new version automatically.** To sell an expansion rather than give it away to everyone who bought the original, **create a new product**. Only update the file in place when you're fixing or improving the thing they already bought.

## Metadata

Click **Add field** and enter a key and value. Customers never see metadata; it appears in **webhook payloads** and the **Product API** response. Use it to send structured data to external systems, tag products for backend automation, or store configuration read by delivery scripts.

## Product image

Add the image after creating the product: open it again and use the control in the top right of the edit page. Recommended size is at least **256×256px**. Customers process the image before they read your description.
