---
title: "Create or edit a product"
description: "Add a product to a store category, then manage its information, product controls, and advanced settings."
canonical: https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/
---

# Create or edit a product

Use the **Products & Categories** workspace to create a product in a selected category or update one product's information, product controls, and advanced settings. The screens below document Dashboard controls; they do not establish that a catalog write is accepted, published, or displayed in every channel.

> **Access and visible controls**
>
> The `/stores/products/:store?` workspace can be available to administrator and business-owner levels. The surrounding **Stores** navigation is hidden for read-only access modes. A selected category, API authorization, project configuration, appointments configuration, store vertical, product type, and product state can independently affect the controls that are visible.

## Before you start

- Select the correct store and category.
- Use non-production or redacted values when practicing this workflow.
- The create form accepts one PNG or JPEG/JPG image and performs a client-side 2 MB check before its crop/upload path.
- Treat every **Save**, upload, enable, or add action as a possible catalog-write boundary.

## Create a product

1. In the Dashboard sidebar, select **Stores**.
2. Open the store, then select the category where the product belongs.
3. Select **Add product**.
4. Optionally add an image.
5. Enter **Product name**, **Price**, and **Description** as needed.
6. Review the staged fields. Select **Save** only in an authorized catalog-change workflow.

![New product form with an image drop area, Type selector, Product name, Price, Description, and Save button](https://docs.ordering.co/img/docs/dashboard/stores/product-create.jpg)

The create form derives a slug from the name and sends product information for the selected business and category. Review the enabled state before saving. Selecting **Save** crosses a write boundary; it does not by itself confirm product creation, persistence, menu propagation, or validation.

> **Save crosses a write boundary**
>
> **Save** can affect the selected category and downstream catalog consumers. Make changes only through an authorized catalog-maintenance workflow, and confirm menu or storefront results after saving.

### Create-form conditions

- **Type** can appear when appointments are enabled. Select **Item** or **Service**; a service also requires a duration.
- School stores can show **Allergens** and **Dietary tags**.
- Review the enabled state before saving; the default and saved result can vary with the selected product and project configuration.

## Edit core product information

Select a product from its category list, then open **Product details** and keep the **Information** tab selected. Review the visible fields, and change or save them only through an approved product-maintenance workflow.

![Product details Information tab with image upload, Name, Price, Regular price, Description, Inventory, Ribbon, and Save controls](https://docs.ordering.co/img/docs/dashboard/stores/product-edit-information.jpg)

The **Information** tab includes the main image, **Name**, **Price**, **Regular price**, **Description**, **Inventory**, and **Ribbon**. Enabling inventory can reveal **Quantity**. The editor can validate a regular price against the selling price; confirm accepted values and customer-facing presentation after an approved change.

The product panel also provides **Ingredients / Properties**, **Product options**, **Product images**, and **Product video**. These are separate maintenance components with their own save or upload behavior. Follow the related procedure for each component and confirm its result after a change.

## Review advanced settings

Use the **Advanced** tab to review settings related to pricing, taxes, fees, ordering limits, and product behavior.

![Product details Advanced tab with Estimated person, Taxes, Fees, External id, product cost, order quantity limits, and Calories fields](https://docs.ordering.co/img/docs/dashboard/stores/product-edit-advanced.jpg)

Advanced settings can include **Estimated person**, **Taxes**, **Fees**, **External Id**, cost fields, minimum or maximum quantity, calories, and switches such as **Featured** and **Upselling**. **Advanced** and **Labels** appear only when the selected project configuration supports them. Tax and fee selectors can load supporting project data.

The editor compares maximum and minimum order limits. Confirm acceptable values through an approved product-maintenance workflow before relying on a limit.

## Product details reference

The following screenshots show the control path and individual fields that appear in the product workspace. They are examples of the editor state, not evidence that the same state is published in a storefront or app.

### Open the product workspace

1. In the store, open **Categories & products**.

[![Store detail screen with Categories \&amp; products selected](https://docs.ordering.co/assets/images/fe6f6b2b7d131379baf1ced1-584d4d2fadeef8b39e5a8fb2ea7a1457.png)](https://docs.ordering.co/assets/files/9e8929ae6ad0f9fef6df090f-5cf9b2e0b436ae6f2ae919dd4a5c61a2.png)

2. Select the category, then the product to review.

[![Category product list with Stack of Pancakes selected](https://docs.ordering.co/assets/images/5ae6f986cf12bac1758c8372-250b0d3442d92fae1d2d6a8ed9f81146.png)](https://docs.ordering.co/assets/files/8d93f16f99b87914d6ad7bd9-2aea53d7ba9e33f671371419b92f2981.png)

3. Open **Product details** from the product panel.

[![Product side panel with Product details selected](https://docs.ordering.co/assets/images/d34ca7c7ec6ac96121002cc8-2fbaa5df55e52209d5b8637c0d7a6650.png)](https://docs.ordering.co/assets/files/5b31476934e7c274b42a2ce2-0c10b2bce890a19a8c695b1f00cd9ea6.png)

### Information fields

- **Name** identifies the product in the editor.
- **Price** and **Regular price** are separate fields. The screen shows the regular-price switch and value; it does not establish discount eligibility or presentation.
- **Inventory** can expose a **Quantity** value. A quantity of zero in the editor does not establish a sold-out state in a customer-facing channel.
- **Ribbon** exposes a text value, color, and shape controls.

[![Product details Information tab with product image, Name, Price, Regular price, Description, Inventory, and Ribbon controls](https://docs.ordering.co/assets/images/63a290a2ee8d8351ac04b29c-9b16acc18167bb96b655099f32899aba.png)](https://docs.ordering.co/assets/files/c7d2791a55a2e60c25cf0e24-ba4c5f0dab2c3486cdc555922a861384.png)

[![Information tab with Inventory enabled, Quantity set to 0, Ribbon switch, and Save button](https://docs.ordering.co/assets/images/953ebfcd9dbe3eaee69e70a3-4955a6f1aebda2cc759b03febf26f010.png)](https://docs.ordering.co/assets/files/f42f1651e6b900cdb37dd0f6-d2ad533888c75be4a4083c4e9a8f6854.png)

[![Information tab with Ribbon enabled, Text field, Color selector, Shape choices, and Save button](https://docs.ordering.co/assets/images/6911ac46b6fbd41baacfac48-006d1faf51e16f51aafdfe9547d35b96.png)](https://docs.ordering.co/assets/files/d9c8502120b203489416463f-871ff5217800fd48b791b21714504aff.png)

### Advanced fields and labels

The advanced screen shows **Estimated person**, **Tax**, **Fees**, **External id**, **Product cost**, **Product cost – regular price**, **Minimum quantity to order**, **Maximum quantity to order**, and **Calories**. Use **Estimated person** to record the number of people an item serves, **External id** to record an external identifier, cost fields for internal cost data, and **Calories** for nutritional information when those fields are relevant to the selected product.

![Product details Advanced tab showing Estimated person, Tax, Fees, External id, product costs, quantity limits, and Calories](https://docs.ordering.co/assets/images/5f7ca6dc855270c533f1f389-eba81d4dcadf3d1acbd4d4dcf3beda9b.png)

It also shows switches for **Featured**, **Upselling**, **Stock Keeping Unit (SKU)**, **Hide special instructions**, **Show price by weight**, and **Is Alcohol**. **SKU** is the product's stock-keeping identifier. Confirm any customer-facing behavior after saving these editor controls.

![Advanced tab showing Featured, Upselling, SKU, Hide special instructions, Show price by weight, and Is Alcohol switches](https://docs.ordering.co/assets/images/04177345b521007b5b3f9189-e308c404f3bac865f679609ddebeaddf.png)

The **Labels** tab shows **Search**, **Select all**, **Select none**, and **Add new label**. Use it to organize labels in the editor, and confirm any filtering, promotion, icon, grouping, or automation result in the intended channel.

![Labels tab showing Search, Select all, Select none, and Add new label controls](https://docs.ordering.co/assets/images/d5faa95685f20a4943982de6-aa81702254c07beb33b53855f32a9eda.png)

### SEO Options fields

The **SEO Options** screen contains controls for an SEO image, title, description, keywords, and slug. Their presence in the editor does not establish metadata publication, indexing, ranking, traffic, or sales.

[![Product details SEO Options tab with an SEO image drop area and SEO Title field](https://docs.ordering.co/assets/images/affc0091b564550a07711636-212474aa164d997aaae0245a2318140c.png)](https://docs.ordering.co/assets/files/8e15891aaac02cfce0ed526c-f903d24b7d25b40401fe68981d3c9acc.png)

## Use the controls deliberately

You can use these fields to maintain a special-edition product, a seasonal price reference, inventory metadata, a ribbon, labels, or SEO-related text. These are editor intents. Verify any customer-facing result in the intended channel after an approved change rather than inferring it from the Dashboard.

## Read, write, and data boundaries

Opening a product by category and product ID can load product data with `version=v2`. Saving sends the current section's changes. Separate controls manage enabled state, duplicate, delete, categories, labels, ingredients or properties, options, gallery, video, professionals, tax, fee, image, and SEO data.

Product names, descriptions, prices, costs, inventory, images, categories, taxes, fees, and related business data can be sensitive. Create, update, enable, duplicate, delete, upload, and provider actions can change data or trigger external effects. Use non-production or redacted data when practicing this workflow, and never include tokens, secrets, customer data, or production values in screenshots or shared material.

## Quick checklist

- Confirm the selected store and category before creating or editing a product.
- Review the visible name and numeric-price inputs.
- Review the enabled state and any inventory fields.
- If using a regular price, review its relationship with the selling price.
- Review taxes, fees, and order limits before saving advanced changes.
- Verify any approved change in the intended channel; editor state alone is not publication evidence.

## Troubleshooting

### Why is Add product unavailable?

**Add product** can require a selected category and can be unavailable when the category list is empty.

### Why can't I save a new product?

The product form can require a name, numeric price, and, for services, a duration. Do not submit a live product to diagnose validation; use an approved non-production workflow.

### Why is the Advanced tab missing?

**Advanced** can appear only for qualifying project configuration. Other fields can also vary with appointments configuration, store vertical, and product type.

### Why can't I save an order limit?

The editor applies paired minimum and maximum rules. Confirm the accepted values in an approved product-maintenance workflow.

## Related procedures

- [Add a product video](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/product-video/)
- [Configure ingredients and properties](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/ingredients-properties/)
- [Configure product custom fields](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/custom-fields/)
- [Configure product options](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/product-options/)
- [Manage product images](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/product-images/)
- [Set a product sale price](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/set-sale-price/)
- [Translate a product](https://docs.ordering.co/docs/products/dashboard/stores/create-edit-product/product-translations/)

**Related guides:** [Products overview](https://docs.ordering.co/docs/products/dashboard/stores/products-overview/) · [Add a store](https://docs.ordering.co/docs/products/dashboard/stores/add-store/) · [Search and filter stores](https://docs.ordering.co/docs/products/dashboard/stores/search-filter-stores/)
