> Documentation index: [Saleor](/llms.txt) · [This section](/recipes/llms.txt)
> Source: https://docs.saleor.io/recipes/digital-products

# Digital Products Recipe

Learn how to set up and manage digital products (like software, e-books, or services) in Saleor with this guide. Since these items don't require shipping, the focus is on configuring specific product types and setting up automated asset delivery after purchase.

<a id="create-product-type-for-digital-goods"></a>

## Create Product Type for Digital Goods

A Product Type acts as a template for creating products. It defines the structure, including whether items require shipping and what attributes they have.

Set up a new Product Type. Make sure to disable the "Requires Shipping" setting for this type, so the shipping step is skipped during checkout if the cart only contains these digital products.

[

### Product Types

Read more about structuring and organizing product data.



](/developer/products/overview.md)[

### Product Configuration

Learn how to configure products.



](/developer/products/configuration.md)

<a id="create-your-products"></a>

## Create Your Products

Create products using your new product type. Fill in the product details, such as name, description, category and add variants.

For each variant, you need to create stock entries. Products without stock won't be available for purchase. If your product has unlimited stock, disable the "track inventory" setting.

[

### Stock Tracking

Learn how to track inventory in Saleor.



](/developer/stock/stock-tracking.md)

<a id="make-changes-in-your-storefront"></a>

## Make Changes in Your Storefront

Your storefront needs to adapt its checkout flow based on whether shipping is required.

When a cart contains _only_ digital products (where `isShippingRequired` is false), the checkout process should skip shipping address collection and shipping method selection.

[

### Storefront Quickstart

Get started with the NextJS example storefront.



](/quickstart/storefront.md)[

### Checkout Shipping

Learn about shipping and checkout APIs.



](/developer/checkout/address.md)

<a id="asset-delivery"></a>

## Asset Delivery

When an order is paid, you need to make the digital content accessible to the customer. Use webhooks to integrate with your business backend.

Create a webhook in the dashboard. Choose `Order fully paid` event, define the subscription query, and target URL. When an order is paid, Saleor will send data defined by subscription query to the provided address. Now recipient application will be able to perform necessary operations like updating subscription details or sending an email with a download link.

```mermaid
flowchart LR
    n1(["Customer"]) -- Makes order --> A("Storefront")
    A -- Creates order using API --> B("Saleor API")
    B -- Sends order details via webhook --> D("Digital product delivery app")
    D -- Digital goods access --> n1
```

[

### Apps Overview

Learn how to build Saleor Apps.



](/developer/extending/apps/overview.md)[

### Webhook Payloads

Learn how to create custom event subscriptions.



](/developer/extending/webhooks/subscription-webhook-payloads.md)
