# Create a Publisher Portal product draft

> Set up a new product draft in the Publisher Portal to begin the publishing process.

Before you can validate and publish your Editor, create a product draft in the Publisher Portal.

To access the Publisher Portal for UPM publishing:

1. [Enroll as a UPM publisher](https://docs.unity3d.com/6000.6/Documentation/Manual/asset-store-upm-apply.html).
2. Open the Asset Store, and select your user icon.
3. Under **Switch Organization**, select your publisher organization.

Go to the UPM publishing Publisher Portal through the Cloud Dashboard:

1. Go to the [Cloud Dashboard](https://cloud.unity.com/home/).
2. Select the **Products** tab. 1. In the search bar, enter Publisher Portal.
3. Select **Launch**.

You can configure a product to handle single or multiple packages, as follows:

* **Single package**: Only one package uploaded and linked to this product draft. New versions of the package continuously share the same package technical names. Ideal for a unified tool that supports a wide array of project settings.
* **Multiple packages:** Various packages uploaded and linked to this product draft. The packages can be dependencies, dependents, or packages intended for different Editor settings or use cases. Ideal for support for multiple use cases, or different project compatibility settings, such as different Unity Editor versions.

You can start with a single package and add more later.

When planning dependencies, use multiple packages if dependencies are only needed within one product. Dependent packages automatically install their dependencies. However, if a dependency is shared across multiple products, list it as its own separate product to avoid conflicts and project breaks. For more information about package dependencies, refer to [Package dependency and resolution](https://docs.unity3d.com/6000.6/Documentation/Manual/upm-dependencies.html).

The following table compares the properties of each product structure:

| **Property**           | **Single package product**                                                                                    | **Multiple package product**                                                                                 |
| ---------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| **Number of packages** | One                                                                                                           | Two or more                                                                                                  |
| **Compatibility**      | Compatible with multiple Unity versions, render pipelines, or build targets.                                  | Optionally, each package can be compatible with a different Unity version, render pipeline, or build target. |
| **Version history**    | Single version history.                                                                                       | Separate version history for each package.                                                                   |
| **Support dependency** | No                                                                                                            | Yes                                                                                                          |
| **Architecture**       | Monolithic. All features bundled together.                                                                    | Can include core and optional packages, and package dependencies.                                            |
| **Dependencies**       | Publish a dependency as a single-package product when two or more different products require this dependency. | Publish a dependency as a multi-package product when any package in one product requires this dependency.    |

By default the uploaded Unity Editor version is checked for every package uploaded. Additionally, you can list all supported Unity versions that it's compatible with (major.minor). For Editor target and Editor, setting a specific compatibility is optional.

## Create a product draft

To create a product draft:

1. Open the Publisher Portal.
2. Go to the **Products** tab.
3. Select **Create product**.
4. Enter a product name.

### Product and package naming

When a product has only one package, the product namespace and package namespace are the same, which follows the naming convention of `com.publisher.product`. When a product has multiple packages, the product namespace follows the naming convention of `com.publisher.product` (for example `com.unity.assetstore`), and the package namespaces follow the naming convention of `com.publisher.product.package1` (for example `com.unity.assetstore.tools`).

The following table describes the information each namespace identifies and its format in a complete UPM namespace:

| **Namespace type**                                                                                                                                                                                                          | **Description**                                                                                                                                                                                                                                                                                                                            | **Example**                                                                                                                      |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------- |
| **Publisher namespace**                                                                                                                                                                                                     | The publisher organization. This namespace uses the reverse domain name notation (reverse-DNS) naming convention. For example, the domain `example.com` has the publisher namespace `com.example`.                                                                                                                                         | `com.publisher`                                                                                                                  |
| **Product namespace**                                                                                                                                                                                                       | The product. This namespace isn’t visible in the product's Asset Store listing.                                                                                                                                                                                                                                                            | `.product`                                                                                                                       |
| **Package namespace**                                                                                                                                                                                                       | The packages that the product contains. Set a package's namespace only for multi-package products.                                                                                                                                                                                                                                         | `product.package1``product.package2`                                                                                             |
| **\[Package technical name]\(([https://docs.unity3d.com/6000.6/Documentation/Manual/upm-manifestPkg.html#required#required](https://docs.unity3d.com/6000.6/Documentation/Manual/upm-manifestPkg.html#required#required))** | The package technical name combines the publisher namespace, the product namespace, and for multi-package products, the package namespace. The Package's technical name must match the following:The package folder name.The `name` field [in the Editor file](https://docs.unity3d.com/6000.6/Documentation/Manual/upm-manifestPkg.html). | **Single package**:`com.publisher.product`**Multiple packages**:`com.publisher.product.package1``com.publisher.product.package2` |

> **Note:**
>
> The publisher namespace (`com.publisher`) is set during enrollment to the development membership program. If you want to know more about changing the namespace, [contact Unity support](https://support.unity.com/hc/en-us/requests/new?ticket_form_id=65905).

## Additional resources

* [Validate and upload a Editor for the Asset Store](/asset-store/publishing/upm-packages/validate.md)
* [Submit an UPM package for approval to the Asset Store](/asset-store/publishing/upm-packages/submit.md)
