> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cnap.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Products Infrastructure

> Understand how products enable you to sell and deploy software to customers

<Frame>
  <img src="https://mintcdn.com/cnap/R79_hF5wT-6CQpcs/images/heros/products-infra.png?fit=max&auto=format&n=R79_hF5wT-6CQpcs&q=85&s=27d30eef2b69f0b1ed5d0dc73d1c1165" alt="Products overview" width="1536" height="1024" data-path="images/heros/products-infra.png" />
</Frame>

Products are sellable software packages you create in CNAP. They combine your application's deployment configuration with pricing to enable customers to purchase and deploy your software through the <Tooltip headline="Marketplace" tip="The marketplace is CNAP's public catalog where customers can discover and deploy products. Products with Stripe pricing automatically appear in the marketplace.">marketplace</Tooltip> or direct links.

When you create a product, CNAP automatically creates a <Tooltip headline="Template" tip="A template is a reusable configuration that defines how your software is deployed. Templates power both products (with pricing) and direct installs (standalone deployments).">template</Tooltip> from your <Tooltip headline="Helm" tip="Helm is a package manager for Kubernetes that simplifies deploying and managing applications. Helm charts package Kubernetes resources into reusable, versioned units.">Helm</Tooltip> sources, generates a <Tooltip headline="Versioned Package" tip="A versioned package is a self-contained Helm chart that combines all your sources into a single deployable unit. Packages use semantic versioning (e.g., 0.1.0) and include all dependencies bundled together.">versioned package</Tooltip>, and makes it available for deployment. Products with <Tooltip headline="Stripe" tip="Stripe is a payment processing platform that CNAP integrates with to handle customer payments. You connect your Stripe account to enable payments for your products.">Stripe</Tooltip> pricing automatically appear in the marketplace.

## How Products Work

Products package your software for sale. Each product includes:

* **Deployment configuration** — Helm charts and sources that define how your software runs
* **Pricing** — optional Stripe integration for customer billing
* **Cluster targeting** — which <Tooltip headline="Clusters" tip="A cluster is a group of one or more machines that are managed by Kubernetes to deploy your applications. Clusters are where you run applications for your team and deploy products to customers.">clusters</Tooltip> the product can be deployed to
* **Display settings** — custom images, descriptions, and visibility options

When customers purchase your product, CNAP automatically deploys it to the selected cluster after payment. Each customer gets their own isolated <Tooltip headline="Installation" tip="An installation (also called an install) is a running instance of your software on a cluster. Each installation represents a complete application stack running in a specific cluster.">installation</Tooltip> with dedicated resources.

## Products and Templates

Products are powered by templates, which store your Helm source configurations. When you create a product:

1. A template is automatically created from your Helm sources
2. The template generates a versioned package (e.g., `0.1.0`)
3. The product references the template and adds pricing configuration
4. Updates to the product's sources update the underlying template

<Tip>
  One template can power multiple products, or be deployed directly without pricing as a standalone install. Learn more about [templates →](/products/templates)
</Tip>

## When to Use Products

Use products when you want to sell software to customers:

* **Open source monetization** — offer managed, dedicated deployments of your OSS project (databases, dev tools, analytics, CMS, etc.) as a cloud service without building multi-tenant infrastructure
* **SaaS with dedicated instances** — enterprise customers who need isolation get their own deployment (healthcare, finance, collaboration tools)
* **Managed database services** — offer dedicated database clusters (PostgreSQL, Redis, ClickHouse, etc.) per customer
* **Custom applications** — B2B SaaS, industry-specific software, white-label solutions, or internal tools turned into products

Products with Stripe pricing automatically appear in the marketplace, making them discoverable to all CNAP users. You can also sell products directly by linking to the product's deployment page from your own website.

## Products vs. Direct Installs

|                 | Products                          | Direct Installs                              |
| --------------- | --------------------------------- | -------------------------------------------- |
| **Purpose**     | Sell software to customers        | Internal tools, shared databases, monitoring |
| **Pricing**     | Optional Stripe integration       | No pricing                                   |
| **Marketplace** | Listed when pricing is configured | Not listed                                   |
| **Template**    | Auto-created from Helm sources    | Auto-created from Helm sources               |

Both use templates automatically created from your Helm sources. Learn more about [application deployments →](/deployments)

## Related

<CardGroup cols={2}>
  <Card title="Templates" icon="file-code" href="/products/templates">
    Understand how templates power products
  </Card>

  <Card title="Marketplace" icon="store" href="/marketplace">
    Learn how products appear in the marketplace
  </Card>

  <Card title="Deployments" icon="rocket" href="/deployments">
    See how products create customer installations
  </Card>

  <Card title="Payments" icon="money-bill" href="/payments">
    Understand how Stripe integration works
  </Card>
</CardGroup>

### Creating a Product

Onboard your product through the [Products Dashboard](https://cnap.tech/products?create=product).

<Frame>
  <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/create-sheet.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=8077e9f06e36dfdc13c4a43f3055c07a" alt="adding a product" width="2876" height="1506" data-path="images/product/create-sheet.png" />
</Frame>

You can select the Helm package from Artifact Hub.

<Note>
  Our roadmap includes support for Helm charts hosted on private Git/OCI
  repositories in the near future.
</Note>

Select to which <Tooltip tip="A cluster is a group of one or more machines that are managed by Kubernetes to deploy your product, any dependencies, and keep it healthy.">clusters</Tooltip> the product can be deployed. Users
will only see the regions of the clusters when they are deploying the product.
Checkout [Clusters](/clusters) for more information.

### Pricing products

If you require users to pay for deployments of a product, you can link a CNAP product with one or more <Tooltip tip="Prices define the unit cost, currency, and (optional) billing cycle for both recurring and one-time purchases of Stripe products.">Stripe prices</Tooltip> from one or more <Tooltip tip="Stripe products help you track inventory or provisioning, and prices help you track payment terms.">Stripe products</Tooltip>.

<Accordion title="Setting Product Pricing">
  <Steps>
    <Step title="Connect with Stripe">
      Make sure to connect with Stripe in the [Settings](https://cnap.tech/payments) of your workspace to onboard with a <Tooltip tip="A connected Stripe account can be managed and automated through CNAP.">Stripe account connected</Tooltip> to CNAP.

      <Frame>
        <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/connect-stripe.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=bbb8498b2ed933ef2562a89f4ec663d7" alt="connect stripe" width="918" height="192" data-path="images/product/connect-stripe.png" />
      </Frame>
    </Step>

    <Step title="Create Stripe prices">
      Once Stripe is connected, you can associate Stripe prices with the CNAP product.

      <Frame>
        <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/empty-prices.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=6fbf7d34aa3b0b54bad7649ea1beb0a4" alt="empty prices" width="918" height="446" data-path="images/product/empty-prices.png" />
      </Frame>

      Create a **Stripe product with prices** in the Stripe dashboard.

      <Frame>
        <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/stripe-add-product.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=3871583d1d4ca0bf4b2bf634c5f922a3" alt="stripe add product" width="958" height="1024" data-path="images/product/stripe-add-product.png" />
      </Frame>

      You can edit the Stripe product to add even more prices, e.g.:

      * €10/month subscription
      * €50 one-time setup fee

      <Frame>
        <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/stripe-edit-product.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=7ab78c8ce7281fc632fb92780f2214f0" alt="stripe edit product" width="1730" height="624" data-path="images/product/stripe-edit-product.png" />
      </Frame>
    </Step>

    <Step title="Select Stripe prices">
      As soon as the Stripe products and prices are created, they will be immediately loaded and available for selection in CNAP.

      <Frame>
        <img src="https://mintcdn.com/cnap/gJ-ST_bGe6W7g4m1/images/product/price-selection.png?fit=max&auto=format&n=gJ-ST_bGe6W7g4m1&q=85&s=87ded0b70c7019f887956d39f6e48627" alt="price selection" width="1280" height="858" data-path="images/product/price-selection.png" />
      </Frame>

      All prices you select for the CNAP product will apply when users checkout the product in the marketplace.
      You can also create more Stripe products and select their prices for the same CNAP product if you need to
      (e.g. a deployment consists of multiple services).
    </Step>
  </Steps>
</Accordion>

Click "Add Product" to create the product.

***

Congrats! You're set up to start your hosting, and it's batteries included!
Need support or want to give some feedback? You can join our
[Discord-Community](https://discord.gg/gNh9bUWVp7) or drop us an email at
[support@cnap.tech](mailto:support@cnap.tech).
