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

# Price

Represents a price configuration for a plan or addon. Prices define how much customers pay based on billing model, period, and optional tiers.

## Type Definition

```graphql theme={null}
type Price {
  id: UUID!

  # Billing configuration
  billingModel: BillingModel!
  billingPeriod: BillingPeriod!
  billingCadence: BillingCadence!
  billingCountryCode: String
  billingId: String

  # Price amount
  price: Money
  blockSize: Float
  minUnitQuantity: Float
  maxUnitQuantity: Float

  # Tiered pricing
  tiers: [PriceTier!]
  tiersMode: TiersMode

  # Feature association
  feature: Feature
  featureId: String

  # Reset period
  resetPeriod: EntitlementResetPeriod
  resetPeriodConfiguration: ResetPeriodConfiguration

  # Credit rate
  creditRate: CreditRate
  creditGrantCadence: CreditGrantCadence

  # Custom currency
  customCurrency: CustomCurrency
  topUpCustomCurrencyId: UUID

  # Package association
  package: PackageDTO!
  packageId: String

  # Metadata
  isOverridePrice: Boolean!
  usedInSubscriptions: Boolean
  crmId: String
  crmLinkUrl: String

  # Timestamps
  createdAt: DateTime
  environmentId: String
}
```

## Fields

### Billing Configuration

| Field                | Type                                                                        | Description                                                        |
| -------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| `billingModel`       | [`BillingModel!`](/api-and-sdks/api-reference/types/enums#billingmodel)     | How usage is calculated (FLAT\_FEE, PER\_UNIT, USAGE\_BASED, etc.) |
| `billingPeriod`      | [`BillingPeriod!`](/api-and-sdks/api-reference/types/enums#billingperiod)   | Billing frequency (MONTHLY, ANNUALLY)                              |
| `billingCadence`     | [`BillingCadence!`](/api-and-sdks/api-reference/types/enums#billingcadence) | When to bill (IN\_ADVANCE, IN\_ARREARS)                            |
| `billingCountryCode` | `String`                                                                    | Country code for regional pricing                                  |
| `billingId`          | `String`                                                                    | ID in the billing provider                                         |

### Price Amount

| Field             | Type    | Description                                   |
| ----------------- | ------- | --------------------------------------------- |
| `price`           | `Money` | The price amount with currency                |
| `blockSize`       | `Float` | Number of units per block (for block pricing) |
| `minUnitQuantity` | `Float` | Minimum billable units                        |
| `maxUnitQuantity` | `Float` | Maximum billable units                        |

### Tiered Pricing

| Field       | Type                                                             | Description                               |
| ----------- | ---------------------------------------------------------------- | ----------------------------------------- |
| `tiers`     | `[PriceTier!]`                                                   | Pricing tiers for tiered billing          |
| `tiersMode` | [`TiersMode`](/api-and-sdks/api-reference/types/enums#tiersmode) | How tiers are applied (VOLUME, GRADUATED) |

### Feature Association

| Field       | Type                                                   | Description                                         |
| ----------- | ------------------------------------------------------ | --------------------------------------------------- |
| `feature`   | [`Feature`](/api-and-sdks/api-reference/types/feature) | The feature this price applies to (for usage-based) |
| `featureId` | `String`                                               | Feature identifier                                  |

### Reset Period

| Field                      | Type                                                                                       | Description             |
| -------------------------- | ------------------------------------------------------------------------------------------ | ----------------------- |
| `resetPeriod`              | [`EntitlementResetPeriod`](/api-and-sdks/api-reference/types/enums#entitlementresetperiod) | When usage resets       |
| `resetPeriodConfiguration` | `ResetPeriodConfiguration`                                                                 | Detailed reset settings |

### Credit Rate

| Field                | Type                 | Description                          |
| -------------------- | -------------------- | ------------------------------------ |
| `creditRate`         | `CreditRate`         | Credit rate for credit-based pricing |
| `creditGrantCadence` | `CreditGrantCadence` | When credits are granted             |

## BillingModel Enum

| Value           | Description                       |
| --------------- | --------------------------------- |
| `FLAT_FEE`      | Fixed price regardless of usage   |
| `PER_UNIT`      | Price per unit (e.g., per seat)   |
| `USAGE_BASED`   | Price based on metered usage      |
| `CREDIT_BASED`  | Price based on credit consumption |
| `MINIMUM_SPEND` | Minimum spend commitment          |

## BillingPeriod Enum

| Value      | Description     |
| ---------- | --------------- |
| `MONTHLY`  | Billed monthly  |
| `ANNUALLY` | Billed annually |

## BillingCadence Enum

| Value        | Description                       |
| ------------ | --------------------------------- |
| `IN_ADVANCE` | Billed at the start of the period |
| `IN_ARREARS` | Billed at the end of the period   |

## TiersMode Enum

| Value       | Description                            |
| ----------- | -------------------------------------- |
| `VOLUME`    | All units are charged at the tier rate |
| `GRADUATED` | Each tier has its own rate             |

## PriceTier Type

```graphql theme={null}
type PriceTier {
  upTo: Float
  unitPrice: Money
  flatPrice: Money
}
```

| Field       | Type    | Description                                 |
| ----------- | ------- | ------------------------------------------- |
| `upTo`      | `Float` | Upper limit of this tier (null = unlimited) |
| `unitPrice` | `Money` | Price per unit in this tier                 |
| `flatPrice` | `Money` | Flat price for this tier                    |

## Money Type

```graphql theme={null}
type Money {
  amount: Float!
  currency: Currency!
}
```

## Example Response

### Flat Fee Price

```json theme={null}
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "billingModel": "FLAT_FEE",
  "billingPeriod": "MONTHLY",
  "billingCadence": "IN_ADVANCE",
  "price": {
    "amount": 99.00,
    "currency": "USD"
  },
  "isOverridePrice": false,
  "createdAt": "2024-01-10T10:00:00Z"
}
```

### Per Unit Price

```json theme={null}
{
  "id": "550e8400-e29b-41d4-a716-446655440001",
  "billingModel": "PER_UNIT",
  "billingPeriod": "MONTHLY",
  "billingCadence": "IN_ADVANCE",
  "price": {
    "amount": 10.00,
    "currency": "USD"
  },
  "minUnitQuantity": 1,
  "maxUnitQuantity": 100,
  "feature": {
    "refId": "feature-seats",
    "displayName": "Team Seats"
  },
  "isOverridePrice": false
}
```

### Usage-Based Price (Tiered)

```json theme={null}
{
  "id": "550e8400-e29b-41d4-a716-446655440002",
  "billingModel": "USAGE_BASED",
  "billingPeriod": "MONTHLY",
  "billingCadence": "IN_ARREARS",
  "tiersMode": "GRADUATED",
  "tiers": [
    {
      "upTo": 1000,
      "unitPrice": {
        "amount": 0.01,
        "currency": "USD"
      }
    },
    {
      "upTo": 10000,
      "unitPrice": {
        "amount": 0.008,
        "currency": "USD"
      }
    },
    {
      "upTo": null,
      "unitPrice": {
        "amount": 0.005,
        "currency": "USD"
      }
    }
  ],
  "feature": {
    "refId": "feature-api-calls",
    "displayName": "API Calls"
  },
  "resetPeriod": "MONTH",
  "isOverridePrice": false
}
```

### Credit-Based Price

```json theme={null}
{
  "id": "550e8400-e29b-41d4-a716-446655440003",
  "billingModel": "CREDIT_BASED",
  "billingPeriod": "MONTHLY",
  "billingCadence": "IN_ADVANCE",
  "creditRate": {
    "amount": 100,
    "customCurrency": {
      "name": "API Credits",
      "symbol": "credits"
    }
  },
  "creditGrantCadence": "BEGINNING_OF_BILLING_PERIOD",
  "feature": {
    "refId": "feature-api-credits",
    "displayName": "API Credits"
  },
  "isOverridePrice": false
}
```

## Related Types

* [Plan](/api-and-sdks/api-reference/types/plan) - Plan type
* [Addon](/api-and-sdks/api-reference/types/addon) - Addon type
* [Feature](/api-and-sdks/api-reference/types/feature) - Feature type

## Related Operations

* [Set Package Pricing](/api-and-sdks/api-reference/mutations/set-package-pricing) - Configure pricing
* [Preview Subscription](/api-and-sdks/api-reference/mutations/preview-subscription) - Preview pricing
