> For the complete documentation index, see [llms.txt](https://docs.toomuchmedia.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.toomuchmedia.com/content-management/sets/set-sales.md).

# Set Sales

*Article Topics:* [*Sets*](/getting-started/common-topics/sets.md)*,* [*Customers*](/getting-started/common-topics/customers.md)

**Set Sales** in NATS enables site admins to monetize individual content sets (such as video sets, photo sets, or both). Members can purchase access to individual sets either as standalone VOD customers (through a [no-cost registration join option](/nats-admin/sites/further-reading/no-cost-registration.md)) or as add-ons alongside a standard recurring membership.

This article goes over prerequisites, a step-by-step **Basic Setup** (standalone VOD), an **Advanced Setup** (involving a membership site where recurring members can view content but no-cost registrations must make a purchase to view content), domain cutover steps, developer code references, and troubleshooting.

## How Set Sales Work

When a user attempts to access or purchase a content set marked for individual sale:

1. **Tour**: Price tags and purchase buttons are displayed on Set List blocks. Clicking a set sends visitors to a page with a Set View block displaying a purchase button that sends users to the join form.
2. **Member Area**:
   * NATS checks the [**Content Area Rules**](/content-management/member-areas-and-tours/member-area-and-tour-details.md#content-rules) to determine whether the member's Join Option, Site, and Tour match the set that requires purchase.
   * If purchase is required and the member has not yet bought the set, a **Purchase Button** is displayed on the set's card in the Set List or above the content in a Set View.
   * When clicked, NATS uses the custom **Set Sale Cascade** configured for that Member Area.
   * The member is redirected to the biller to complete the transaction.
   * Upon successful payment, NATS grants the member permanent (or time-limited) access to that specific content set.

## Prerequisites & Biller Setup

{% hint style="warning" %}
**Supported Billers**: Set Sales requires biller integrations that support single-charge or tokenized transactions. [**Vendo Services**](/getting-started/integrations/supported-billers/vendo-services.md) is the only biller that supports NATS Set Sales. Ensure your merchant account is configured for single purchases before proceeding.
{% endhint %}

#### Setting Up a Custom Set Sale Cascade

To set up individual set purchases through a dedicated biller:

1. Navigate to the **Billers** **Admin,** and select **Cascades** from the left-hand navigation in the NATS Admin.
2. Create a new Cascade (Example: `Set Sale Vendo Cascade`).
3. Add your supported single-purchase biller (Example: Vendo Services) to this cascade.
4. Go to the **Rules** and set the **Rules** based on your needs.

## Basic Setup: Standalone VOD Site

Use this setup when building a dedicated VOD site where visitors sign up for a free account (No-Cost Registration) and purchase individual sets.

```mermaid
flowchart LR
    A["Visitor"] --> B["No-Cost Registration (NCR)"]
    B --> C["Logs into VOD Member Area"]
    C --> D["Browse Sets & Click Purchase"]
    D --> E["Biller Checkout"]
    E --> F["Access Granted to Purchased Set"]
```

### Step 1: Create a No-Cost Registration (NCR) Join Option

1. Go to **Sites Admin,** select **Site Management,** then select the site that is configured as your CMS Tour's [Default Signup Details](/content-management/member-areas-and-tours/member-area-and-tour-details.md#default-signup-details).
   1\.

   ```
   <figure><img src="/files/e7gs3KCyjFg1taWr8RHV" alt=""><figcaption></figcaption></figure>
   ```
2. Select your site and click the **Join Options** tab.
3. Click **Add No Cost Option** and configure the Join Form Text and Initial Days.
   1. This allows users to create a member record without charging a subscription fee.
4. Navigate to the Rules tab of the newly created join option and set the targets.

### Step 2: Publish Content Sets with Purchase Requirements

1. Navigate to **Content Management i**n the left-hand navigation and select **Channels**.
2. Create or select a Channel dedicated to VOD content (Example: `VOD Channel`).
3. Navigate to **Content Management** in the left-hand navigation and select **Sets**.
4. Click the Set(s) you wish to put up for sale and open the **Publish** tab.
5. Publish the set to your VOD Channel:
   * Click the **Channels** field and select the VOD Channel.
   * Click the checkbox for **Require Set Purchase**.
   * Select **Custom Price** and enter the desired price point (e.g., `$9.99`).
6. Publish the set.

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FGedrvvtc9NOPfRR9f1jh%2Fimage.png?alt=media&amp;token=8fa88624-1eee-40c6-8d25-d868d44a5b37" alt=""><figcaption></figcaption></figure>

### Step 3: Configure Tour Settings (Display Prices on Preview)

1. Navigate to **Content Management** in the left-hand navigation and select **Tours**.
2. Select your Tour and open the **Theme** tab.
3. Click the **Block Defaults** section and add the VOD Channel to the Channel List

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FyJiwFK4tsglSumi2Bysa%2Fimage.png?alt=media&amp;token=8affd0ae-6226-4913-9112-fc04dbccaea2" alt=""><figcaption></figcaption></figure>

4. Click the **Pages** subtab and select the **Home** page (or relevant tour page).
5. Select and edit the **Set List** block (Example: `Latest Video Sets`).
6. Open the **Design** tab and scroll to **Purchase Details**.
7. Change **Show Purchase Button** from `No` to `Yes`.

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FBnPEG9RN1MlfNmUiogu9%2Fimage.png?alt=media&amp;token=29ec44ea-5dd5-4b29-beed-b34781adde5e" alt=""><figcaption></figcaption></figure>

8. Ensure the block's default channel is set to your VOD Channel.
9. Save block settings.

### Tour Results

At this point, the purchase button will be displayed on the Set List block present on the home page for any content you publish to the VOD Channel. &#x20;

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FDDfhR3CtWyPd7nsrHSFq%2Fimage.png?alt=media&amp;token=02ff3fc9-ba76-4040-ba50-26180dc5911b" alt=""><figcaption></figcaption></figure>

Clicking the set will take visitors to the page with a Set View block, and a purchase button that points to the join form will be displayed above the content. The style of the button can be customized using [Custom CSS](/content-management/member-areas-and-tours/themes.md#custom-css).&#x20;

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FyCcFDyFldR8GJcoaJqaB%2Fimage.png?alt=media&amp;token=76841a43-3f84-4f61-9c1d-bf39e03bb969" alt=""><figcaption></figcaption></figure>

### Step 4: Configure Member Area & Block Defaults

1. Navigate to **Content Management** in the left-hand navigation and select **Member Area.**
2. Select your **Member Area,** locate the **Set Sale** section, and set **Set Sale Cascade** to your custom cascade created in Prerequisites.

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2F817n4H6x0btv8hJEfIn4%2Fimage.png?alt=media&amp;token=a8107e15-3ed0-4a90-8756-4756bb909d56" alt=""><figcaption></figcaption></figure>

3. Select the **Theme** tab.
4. In **Block Defaults**, add the **VOD Channel** to the Channel List.
5. Select the **Login Rules** tab and add a new login rule that allows members who have signed up with the no-cost registration VOD Membership join option access to the member area.

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FImr596HWsQntVxoq9Vdn%2Fimage.png?alt=media&amp;token=9cbbfa7f-d96a-4e75-9a3d-add942935760" alt=""><figcaption></figcaption></figure>

6. Navigate to the **Content Rules** tab and create a new content rule setting the Content Channel to the VOD Channel and checking the Require Purchase button.

### Step 5: Critical Block Authorization Setting

**Must Set Authorization Level to ALL**: If the `Set List`, or `Model List`, blocks in your Member Area have their **Authorization Level** set to *Active Only*, members who haven't bought the set will **NOT** see it at all!

To fix this:

1. Edit the **Set List** / **Set View** block in your Member Area layout.
2. Open **Block Settings** -> **Authorization**.
3. Change **Authorization Level** to **ALL**.

This ensures unpurchased sets remain visible to logged-in members with a "Purchase" button so they can buy access.

### Member Area Results

At this point, Members who have signed up for an NCR membership and log into the Member Area will be presented with Sets that have been published to the VOD Channel.&#x20;

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FdWu53eAsz8aZT9iXzVl0%2Fimage.png?alt=media&amp;token=efd5b4c1-fc03-45ce-ac26-5c8d046c7b8a" alt=""><figcaption></figcaption></figure>

Selecting a set will take the member to the page with a Set View showing a Purchase Now button. Clicking that button will prompt the member to confirm and take them to the biller to complete their purchase.

<figure><img src="https://2232071635-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWJVne6meHqGT8rzsBdod%2Fuploads%2FvrvdM9oMvhlCwGFF3knZ%2Fimage.png?alt=media&amp;token=a27bcd71-ff55-4cfb-b022-df727d0757ac" alt=""><figcaption></figcaption></figure>

***

## Advanced Setup: Hybrid Membership + VOD&#x20;

Use this setup when you have both **Recurring Subscribers** (who get full site access) and **NCR Members** (who must purchase sets individually), sharing the **same** Member Area.

```mermaid
flowchart TD
    Sub["Recurring Membership"] --> MA["Shared Member Area"]
    NCR["NCR Free Member"] --> MA
    MA --> CR{"Content Rule"}
    CR -- " No Purchase Required" --> Free["View Set Freely"]
    CR -- " Purchase Required " --> Buy["Prompt Set Purchase"]
```

### Step 1: Configure Multiple Join Options

Ensure your site has at least two Join Options under **Sites Admin** -> **Sites** -> **Join Options**:

1. **Recurring Subscription** (e.g., $29.99/mo full access).
2. **No-Cost Registration (NCR)** (free account).

### Step 2: Configure Content Area Rules

Content Area Rules dictate whether a member must pay for sets in a specific area/channel.

1. Navigate to **Content Management** -> **Member Areas**.
2. Select your Member Area and click the **Content Rules** tab.
3. Add **Rule 1 (Recurring Subscribers)**:
   * **Site**: Select your site.
   * **Tour**: Select your tour.
   * **Join Option**: Select your **Recurring Subscription** option.
   * **Require Purchase**: Set to `No` (or `Yes` if subscribers pay for premium VOD channels).
4. Add **Rule 2 (NCR / Free Members)**:
   * **Site**: Select your site.
   * **Tour**: Select your tour.
   * **Join Option**: Select your **NCR** option.
   * **Require Purchase**: Set to `Yes`.
5. Save the rules.

### Step 3: Assign Set Sale Cascade Override

1. In the same Member Area details, click the **General** tab.
2. Under the **Set Sale** section, select your custom **Set Sale Cascade** from the dropdown.
3. Save settings.

### Step 4: Verify Multi-Channel & Block Authorization

* Set block **Authorization Level** to **ALL** on all Set List, Model List, and Set View blocks.
* Verify that Published Sets have individual custom prices configured under **Content Management** -> **Sets** -> **Publish**.

## Troubleshooting & Common Pitfalls

| Symptom                                                     | Cause                                                | Solution                                                                                                        |
| ----------------------------------------------------------- | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| **Sets not showing up in Member Area for free/NCR members** | Block Authorization Level is set to *Active Only*.   | Edit the Set List / Set View block -> **Authorization** tab -> set **Authorization Level** to `ALL`.            |
| **Purchase button missing on Tour/Preview**                 | Block "Show Purchase Button" setting is set to `No`. | Go to Tour -> **Theme** tab -> Edit Set List block -> **Design** tab -> set **Show Purchase Button** to `Yes`.  |
| **NCR users see sets for free without purchase prompt**     | Content Rules are missing or incorrect.              | Go to Content Area -> **Content Rules** tab -> ensure NCR Join Option has `Require Purchase = Yes`.             |
| **Biller error during purchase redirect**                   | Biller in cascade does not support single purchases. | Ensure cascade uses a biller supporting Set Sales (e.g., Vendo Services) and check **Billers** -> **Cascades**. |
