> ## Documentation Index
> Fetch the complete documentation index at: https://nayax-44d6e37b-docs-marshall-faq-redistribution.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Product Groups

export const EndpointCard = ({method = "API", title, children, href, arrow = true}) => {
  const METHOD_STYLES = {
    GET: {
      bg: "mint-bg-green-400/20 dark:mint-bg-green-400/20",
      text: "mint-text-green-700 dark:mint-text-green-400",
      border: "mint-border-green-300 dark:mint-border-green-700"
    },
    POST: {
      bg: "mint-bg-blue-400/20 dark:mint-bg-blue-400/20",
      text: "mint-text-blue-700 dark:mint-text-blue-400"
    },
    PUT: {
      bg: "mint-bg-yellow-400/20 dark:mint-bg-yellow-400/20",
      text: "mint-text-yellow-700 dark:mint-text-yellow-400"
    },
    PATCH: {
      bg: "mint-bg-orange-400/20 dark:mint-bg-orange-400/20",
      text: "mint-text-orange-700 dark:mint-text-orange-400"
    },
    DELETE: {
      bg: "mint-bg-red-400/20 dark:mint-bg-red-400/20",
      text: "mint-text-red-700 dark:mint-text-red-400"
    },
    API: {
      bg: "mint-bg-black",
      text: "mint-text-white"
    }
  };
  const MethodBadge = ({method}) => {
    const style = METHOD_STYLES[method?.toUpperCase()] ?? METHOD_STYLES.GET;
    return <span className={`
          method-pill rounded-lg font-bold px-1.5 py-0.5 text-xs leading-5 ${style.bg} ${style.text}`}>
        {method?.toUpperCase()}
      </span>;
  };
  const content = <div className="group flex items-center gap-4 border border-gray-200 dark:border-gray-700 rounded-xl p-5 bg-white dark:bg-[#1e1e1e] hover:border-gray-400 dark:hover:border-gray-500 hover:shadow-md transition-all cursor-pointer">
      {}
      <div className="flex-1 min-w-0">
        <p className="font-semibold text-gray-900 dark:text-white text-sm leading-snug">{title}</p>
        {children && <p className="mt-1 text-sm text-gray-500 dark:text-gray-400 line-clamp-2">{children}</p>}
      </div>

      {}
      <div className="shrink-0">
        <MethodBadge method={method} />
      </div>
    </div>;
  if (!href) return content;
  return <a href={href} className="block no-underline border-b-0 mb-2">
      {content}
    </a>;
};

Product groups categorize your operator's products into logical clusters such as "Beverages" or "Snacks," making inventory tracking and restocking easier to manage.

In Nayax Core, you can create a product group in the following way:

1. Go to **Administration > Products**.
2. Click **Create > Add Product Group**.
3. Fill in the required product group details in the form:
   * **Operator**: Select which operator is associated with the group.
   * **Description**: The name of the product group.
4. Click **Save** to finish.

<Frame>
  <img src="https://mintcdn.com/nayax-44d6e37b-docs-marshall-faq-redistribution/97AxTUwdTqLzbB-t/images/docs/create-product-group/image1.png?fit=max&auto=format&n=97AxTUwdTqLzbB-t&q=85&s=803227a12623f4162c1d6c8dfe10f31a" width="1600" height="824" data-path="images/docs/create-product-group/image1.png" />
</Frame>

## Create a product group via API

Use the [Create New Product Groups](/reference/lynx/product-groups/create-new-product-groups) endpoint to create a product group programmatically.

<EndpointCard title="Create New Product Groups" href="/reference/lynx/product-groups/create-new-product-groups" method="post" />

<Warning>
  **Authentication**

  Refer to the [Security & Token](/docs/manage-data-operations/lynx-api/security) page of this documentation to learn how to access your tokens and how to properly use them to authenticate your API requests.
</Warning>

<br />

Send a POST request with the following body parameters:

```sh theme={null}
curl --request POST \
     --url https://qa-lynx.nayax.com/operational/v1/productGroups \
     --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
     --header 'accept: application/json' \
     --header 'Content-Type: application/json' \
     --data '{
       "ActorID": 12345,
       "ProductGroupName": "Beverages",
       "ProductGroupCode": 1001,
       "ProductGroupSubCode": 10,
       "ProductGroupCategoryCode": "DRINKS"
     }'
```

| **Parameter**                | `Type`        | Description                                                                  |
| ---------------------------- | ------------- | ---------------------------------------------------------------------------- |
| **ActorID**                  | `int64`       | The unique identifier of the actor associated with the product group.        |
| **ProductGroupName**         | `string/null` | The name of the product group to be created (for example, "Beverages").      |
| **ProductGroupCode**         | `int64/null`  | The code associated with the product group.                                  |
| **ProductGroupSubCode**      | `int64/null`  | A sub-code for further categorizing the product group.                       |
| **ProductGroupCategoryCode** | `string/null` | The category code associated with the product group (for example, "DRINKS"). |

After creating your product groups, you're ready to [create products](/docs/manage-data-operations/lynx-api/inventory-management/create-products).
