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

# Per-unit pricing

## Concepts

**Per-unit pricing** is the most straightforward way to bill for usage. You set a fixed price for a single unit, and the bill grows at a steady, predictable rate as the customer consumes more.

### The logic of dimensions

Per-unit pricing is a **1-dimensional** model. It relies on a single factor: **Quantity** (dimension 1).

Think of this as **"the ramp."** Unlike tiered or volume models, there are no steps, thresholds, or *cliffs*. Every unit costs exactly the same as the one before it, creating a smooth, linear increase in cost.

### SaaS example: Cloud log storage

A monitoring platform charges a flat rate for every gigabyte (GB) of logs ingested. Whether the customer is a small startup or a large enterprise, the price per unit remains constant.

* **Unit Rate:** \$2.00 / GB

**The linear calculation:**
Because the rate is fixed, the calculation is a simple multiplication of total usage by the unit price.

| Total usage  | Unit price  | Total bill   |
| ------------ | ----------- | ------------ |
| **500 GB**   | \$2.00 / GB | **\$1,000**  |
| **1,500 GB** | \$2.00 / GB | **\$3,000**  |
| **5,000 GB** | \$2.00 / GB | **\$10,000** |

***

## Get started

### Create a per-unit product

*This tutorial walks you through building a global per-unit template in your Product Library.*

1. **Navigate to the Library:** Go to **Contracts** > **Products**.
2. **Create a Standalone Product:** Click **+ CREATE NEW** and choose Standalone Product from the dropdown. The Create Standalone Product page will appear. Fill in the required details and click **Save & Proceed** at the bottom right.
3. **Open Price Details:** You will be redirected to the Price Details page. Click **+ Add Price** to configure pricing for the product.
4. **Select Per-unit Pricing Model:** In the Pricing Model dropdown, select **Per-unit**.
5. **Add Price Details and Save:** Fill in the required details and click **Confirm**. Once complete, click **Done** on the Price Details page to finalize the setup.

## How-to: Add a per-unit product to a contract

*Terse steps for sales and operations teams applying a model to a customer.*

### 1. Via Contracts

1. Open the target contract in **Contracts** > **Contracts**.
2. In the Summary tab, click **+ ADD PRODUCT V3**.
3. Search for and select your configured per-unit product.
4. Click **ADD PRODUCT**. You will be redirected to the Summary page. Click **Publish**.

### 2. Via Customer

1. Open the target customer in **Customers**.
2. Go to Contracts and click **+ CREATE CONTRACT**.
3. In the Summary tab, click **+ ADD PRODUCT V3**.
4. Search for and select your configured per-unit product.
5. Click **ADD PRODUCT**. You will be redirected to the Summary page. Click **Publish**.

***

## Reference

### Technical specifications

| Attribute              | Specification                                                                                                         |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Dimensionality**     | **1-dimensional (univariate)**                                                                                        |
| **Math formula**       | ***P = r × q***                                                                                                       |
| **Logic type**         | **Linear function**: The total price increases at a constant rate for every additional unit consumed.                 |
| **Boundary behavior**  | **N/A**: No thresholds or ranges exist; the rate applies uniformly to all units.                                      |
| **Calculation engine** | **Unit-based scaling**: The engine multiplies the reported quantity by the fixed rate defined in the product library. |
| **Data object**        | `pricing_model_type: per_unit_pricing`                                                                                |

### System architecture

In Zenskar, all pricing models are governed by a hierarchical relationship between entities:

* **Contract:** The legal agreement between you and your customer.
* **Phase:** A specific time-bound period (e.g., Q1, implementation phase) within that contract.
* **Product:** The actual service or software module being sold.
* **Pricing model:** The specific logic (per-unit pricing) that defines how that product is billed.

**Entity hierarchy:**

```mermaid theme={null}
flowchart LR
    CONTRACT[Contract] ---|"has one or more"| PHASE[Phase]
    PHASE ---|"has one or more"| PRODUCT[Product]
    PRODUCT ---|"has exactly one active"| PRICINGMODEL[Pricing model]

style PRICINGMODEL fill:#90ee90

```

### Price resolution flow

The following flow describes how per-unit pricing calculates the final price:

1. **Product library:** Defines the global rate (***r***) per individual unit.
2. **Contract:** Links the product to a customer and defines the quantity source (***q***).
3. **Data source:** Provides the value of ***q*** (either from a dynamic meter or static product field).
4. **Billing engine:** Executes a direct multiplication of the rate by the quantity to resolve the total price ***P***.

***

<br />
