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

# Line item: minimum commitments

## Line item: minimum commitments

This page explains how a customer commits to pay at least a set amount or quantity, on one line item or across several products of a contract.

### Map of concepts

| Concept | Details |
| - | - |
| [Minimum commitment](#minimum-commitments-the-least-that-a-customer-pays) | A minimum commitment applies over a commitment period. If the actual usage or spend falls short, Zenskar bills the shortfall. |
| [Line-item minimum commitments](#line-item-minimum-commitments-a-floor-on-one-line-item) | A line-item minimum commitment applies to one line item. It is a minimum-spend commitment or a minimum-quantity commitment. The evaluation mode decides when Zenskar checks the minimum. |
| [Contract-level minimum commitments](#contract-level-minimum-commitments) | A contract-level minimum commitment covers several products together. Its shortfall appears under the covered products, or on a carrier product. |

### Related modules

Minimum commitments uses the following modules:

| Module | Details |
| - | - |
| [Contracts](/docs/20260301/product-modules/contracts/concepts/contracts) | Minimum commitments belong to the line items of a contract, or to the contract. |
| [Products](/docs/20260301/product-modules/products/concepts/products) | A contract-level minimum commitment counts the charges of products, and can show its shortfall on a product of the contract. |

## Minimum commitments: the least that a customer pays

A **minimum commitment** is the least amount or quantity that a customer pays for in a commitment period, whatever the actual usage.

A **commitment period** is the period over which Zenskar compares the actual usage or spend with the minimum.

A **shortfall** is the difference between the minimum and the actual usage or spend in a commitment period. Zenskar bills the shortfall.

For example, a customer commits to a spend of \$1,200 a year. The actual charges for the year are \$1,000. The shortfall is \$200, and Zenskar bills it. If the actual charges are \$1,500, there is no shortfall.

A shortfall is a charge, not a balance. Nothing carries forward to the next commitment period.

A minimum commitment applies either to one line item or to several products of a contract together. See [Line-item minimum commitments](#line-item-minimum-commitments-a-floor-on-one-line-item) and [Contract-level minimum commitments](#contract-level-minimum-commitments).

## Line-item minimum commitments: a floor on one line item

A **line-item minimum commitment** is a minimum commitment on one [line item](/docs/20260301/product-modules/contracts/glossary#line-item).

A line-item minimum commitment measures either spend or quantity.

A **minimum-spend commitment** is a line-item minimum commitment on the amount that the line item charges.

A **minimum-quantity commitment** is a line-item minimum commitment on the number of units of the line item.

A line item can carry several line-item minimum commitments, each with its own dates within the [line-item duration](/docs/20260301/product-modules/contracts/glossary#line-item-duration). Each one has a minimum value, a commitment period, and an optional label. A line-item minimum commitment applies before the discounts of the line item.

### Partial periods

When a line-item minimum commitment starts or ends partway through a commitment period, it handles the partial period in one of two ways:

| Option | Result |
| - | - |
| Prorate | The minimum is proportional to the part of the commitment period that the commitment covers. |
| Full | The full minimum applies, regardless of the partial period. |

### Evaluation modes

An **evaluation mode** is the rule that decides when Zenskar checks the minimum and bills the shortfall within a commitment period.

A commitment period can span several [billing periods](/docs/20260301/product-modules/contracts/glossary#billing-period), such as an annual commitment with monthly billing. Each billing period then has an equal share of the minimum. A line-item minimum commitment uses one of two evaluation modes:

| Evaluation mode | Description in the UI |
| - | - |
| Cumulative | A running total is tracked across the commitment. Surplus from a strong period offsets a later weak one. This is the default. |
| Greedy | Each billing period must hit its share of the floor on its own. A strong period does not offset a weak one. |

For example, a customer commits to \$300 a quarter, billed monthly. The share of each month is \$100. The charges are \$150 in January, \$50 in February, and \$100 in March.

* With the cumulative evaluation mode, the quarter totals \$300, so there is no shortfall.
* With the greedy evaluation mode, February falls \$50 short of its share, and Zenskar bills a shortfall of \$50 for February.

```mermaid theme={null}
gantt
  title A quarterly commitment with monthly billing
  dateFormat YYYY-MM-DD
  axisFormat %b
  section Cumulative
  Quarter checked as a whole :2027-01-01, 2027-03-31
  section Greedy
  January share met          :2027-01-01, 2027-01-31
  February share missed      :crit, 2027-02-01, 2027-02-28
  March share met            :2027-03-01, 2027-03-31
```

### Rules for line-item minimum commitments

* A minimum-spend commitment cannot apply to prepaid billing.
* The commitment period must be a whole multiple of the [billing cadence](/docs/20260301/product-modules/contracts/glossary#billing-cadence).
* For a [period-of-time product](/docs/20260301/product-modules/products/glossary#period-of-time-product-type) with the [recurring quantity strategy](/docs/20260301/product-modules/products/glossary#recurring-quantity-strategy), the commitment period of a minimum-quantity commitment must equal the [quantity cadence](/docs/20260301/product-modules/contracts/glossary#quantity-cadence).
* A line item whose [pricing preset](/docs/20260301/product-modules/products/glossary#pricing-preset) uses the [dimensional pricing model](/docs/20260301/product-modules/products/glossary#dimensional-pricing-model) cannot carry minimum commitments.

## Contract-level minimum commitments

A **contract-level minimum commitment** is a minimum commitment on the total spend of several [products](/docs/20260301/product-modules/products/glossary#product) of a [contract](/docs/20260301/product-modules/contracts/glossary#contract).

For example, a customer commits to \$100,000 a year across API calls, a platform fee, and support. With line-item minimum commitments, each product would need its own minimum, and a strong product could not make up for a weak one.

A **covered product** is a product whose charges count toward a contract-level minimum commitment. The coverage of a contract-level minimum commitment is one of two options:

| Coverage | Covered products |
| - | - |
| Everything on this contract | Every product on the contract. Products added later join automatically. |
| Selected products | Only the products that you select. |

A contract-level minimum commitment has a minimum amount in the currency of the contract, a commitment period, and a start date. The end date is optional. The minimum applies to the charges of the covered products after the discounts of their line items, and before tax.

### Evaluation modes for contract-level minimum commitments

A contract-level minimum commitment uses one of two evaluation modes:

| Evaluation mode | Description in the UI |
| - | - |
| True-up | Any shortfall is billed once, at the end of each period. |
| Greedy | Each invoice is topped up to its share as you go. |

With the greedy evaluation mode, a later invoice can exceed its share. Zenskar then credits back, on that invoice, the top-ups already billed in the same commitment period. The greedy evaluation mode is available only when all covered products have the same billing cadence.

```mermaid theme={null}
gantt
  title An annual commitment with quarterly billing
  dateFormat YYYY-MM-DD
  axisFormat %b
  section True-up
  Year checked as a whole :2027-01-01, 2027-12-31
  section Greedy
  Q1 invoice topped up    :2027-01-01, 2027-03-31
  Q2 invoice topped up    :2027-04-01, 2027-06-30
  Q3 invoice topped up    :2027-07-01, 2027-09-30
  Q4 invoice topped up    :2027-10-01, 2027-12-31
```

### Partial periods for contract-level minimum commitments

When a contract-level minimum commitment starts or ends partway through a commitment period, it handles the partial period in one of two ways:

| Option | Result |
| - | - |
| Prorate | The minimum is proportional to the part of the commitment period that the commitment covers. |
| Charge full | The full minimum applies, regardless of the partial period. |

### Shortfall on the invoice

The shortfall of a contract-level minimum commitment appears on the invoice in one of two ways:

| Option | Result |
| - | - |
| Under each covered product | The shortfall is split among the covered products. Each share appears under its product. |
| As a line, billed on a product it does not cover | The whole shortfall appears as one line, on a carrier product. |

The greedy evaluation mode can only show the shortfall as one line, because it sets the minimum per invoice, not per product.

Under each covered product, the shortfall splits in one of two ways:

| Split | Result |
| - | - |
| In proportion to what each billed | A product that billed more carries more of the shortfall. |
| Equally across them | Every covered product carries the same share. |

For example, a customer commits to \$120,000 a year. The covered charges for the year are API calls \$50,000, platform fee \$30,000, and support \$20,000. The shortfall is \$20,000. With the proportional split, API calls carry \$10,000, platform fee \$6,000, and support \$4,000.

With selected products, the shortfall lines under each covered product require a label. The label appears on the shortfall lines.

A **carrier product** is a product on the contract that shows the shortfall of a contract-level minimum commitment as its own invoice line. The shortfall replaces the charges of the carrier product. The carrier product is never a covered product. The UI suggests a product with a price of \$0 and a quantity of 1. A carrier product must meet these conditions:

* It is a [point-in-time product](/docs/20260301/product-modules/products/glossary#point-in-time-product-type), billed postpaid with the [per-unit pricing model](/docs/20260301/product-modules/products/glossary#per-unit-pricing-model).
* It is on the contract only once, and has no minimum commitments of its own.
* Its line-item dates cover the dates of the contract-level minimum commitment.
* With the true-up evaluation mode, its billing cadence divides the commitment period evenly. With the greedy evaluation mode, its billing cadence equals the billing cadence of the covered products.

### Rules for contract-level minimum commitments

* Every covered product must be billed postpaid, because a shortfall is measured on charges already billed.
* Every covered product must be on the contract only once.
* The commitment period must be a whole multiple of the interval at which all covered products end a billing period together.
* The start date and the end date must fall on billing-period boundaries of every covered product.
* A contract can have only one contract-level minimum commitment that covers everything on the contract.
* A product can be selected for only one contract-level minimum commitment.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.