---
title: "POST contract-created"
method: POST
path: "contract-created"
tags: ["Webhooks"]
---

# POST contract-created

`POST contract-created` (webhook)

Webhook to notify when a contract is created.

## Headers

- `X-Rillet-Signature` string, required
- `X-Rillet-Timestamp` string, date-time, required
- `X-Rillet-Id` string, uuid, required
- `X-Rillet-Entity` string, required
- `X-Rillet-Event` string, required

## Payload

- WebhookContract
  - `id` string, uuid, required
  - `customer_id` string, uuid, required
  - `subsidiary_id` string, uuid, required
  - `name` string, required
  - `items` WebhookContractItem[], required
    - `id` string, uuid, required
    - `product_id` string, uuid, required
    - `price` union, required
      - FixedRecurringPrice
        - `amount` MonetaryAmount, required
          - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. (e.g. '1.01' in $ currency represents 1$ and 1 cent.)
          - `currency` string, required — Currency code following ISO-4217
        - `interval_months` integer, required
        - `type` string, required
      - OneTimePrice
        - `amount` MonetaryAmount, required
          - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. (e.g. '1.01' in $ currency represents 1$ and 1 cent.)
          - `currency` string, required — Currency code following ISO-4217
        - `type` string, required
      - UsagePrice
        - `interval_months` integer, required
        - `type` string, required
        - `billing_scheme` union, required
          - PerUnitBilling
            - `type` string, required
            - `amount` MonetaryAmount, required
              - …
            - `units` integer, required
          - TieredBilling — All tiers except for the highest have to define a value for upTo. There cannot be more than one tier with the same upTo value.
            - `type` string, required
            - `mode` 'GRADUATED' | 'METERED', required — In metered tiering, the maximum quantity within a period determines the price. In graduated tiering, pricing changes as the quantity grows – the price from each tier up to the reported quantity is accumulated.
            - `tiers` Tier[], required
              - …
    - `quantity` number, required
    - `total_value` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
      - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
      - `currency` string, required — Currency code following ISO-4217
    - `revenue_pattern` 'DAILY' | 'EVEN_PERIOD', required — DAILY means that the revenue is divided equally per day in the revenue period. EVEN_PERIOD means that the revenue is divided equally for each calendar month in the revenue period.
    - `discount` union
      - AmountDiscount
        - `amount_off` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
          - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
          - `currency` string, required — Currency code following ISO-4217
        - `type` string
      - PercentageDiscount
        - `percentage_off` number, double, required
        - `type` string
    - `tax_rate` TaxRate
      - `percentage` number, required
      - `tax_amount` RoundedMonetaryAmount — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
        - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
        - `currency` string, required — Currency code following ISO-4217
      - `country` string, required — Two-letter country code (ISO 3166-1 alpha-2).
      - `type` 'VAT' | 'SALES_TAX', required
      - `description` string, required
    - `start_date` string, date, required
    - `end_date` string, date
    - `status` 'AMENDED' | 'ACTIVE', required
    - `amending` string, uuid — When set, references the item this item is amending.
    - `fields` object[]
      - `field_id` string, uuid, required
      - `field_value_id` string, uuid, required
    - `external_references` ExternalReference[], required
      - `type` string, required
      - `id` string, required
      - `url` string, uri
  - `status` 'ACTIVE' | 'IN_EFFECT' | 'CANCELLED' | 'ENDED' | 'AMENDED', required
  - `start_date` string, date, required
  - `end_date` string, date
  - `close_date` string, date, required
  - `invoicing` union, required
    - MonthlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
      - `day` integer, required
    - MonthlyProratedInvoicing — Monthly prorated invoicing is only available for contracts with usage products and a minimum usage commitment.
      - `payment_terms` integer, required
      - `interval` string, required
      - `day` integer, required
    - QuarterlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
      - `month_day` string, required — A string in --MM-dd format. Invoices will be created starting on that date and every 3 months.
    - SemiAnnualInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
      - `month_day` string, required — A string in --MM-dd format. Invoices will be created starting on that date and every 6 months.
    - YearlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
      - `month_day` string, required — A string in --MM-dd format
  - `usage_overage_invoicing` union
    - OverageMonthlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
    - OverageMonthlyProratedInvoicing — Monthly prorated invoicing is only available for contracts with usage products and a minimum usage commitment.
      - `payment_terms` integer, required
      - `interval` string, required
    - OverageQuarterlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
    - OverageSemiAnnualInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
    - OverageYearlyInvoicing
      - `payment_terms` integer, required
      - `interval` string, required
  - `total_value` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
    - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
    - `currency` string, required — Currency code following ISO-4217
  - `external_references` ExternalReference[]
    - `type` string, required
    - `id` string, required
    - `url` string, uri
  - `exchange_rate` ExchangeRate
    - `base` string, required — Currency code following ISO-4217
    - `target` string, required — Currency code following ISO-4217
    - `rate` string, required
    - `date` string, date, required
  - `usage_commitment` UsageCommitment
    - `amount` RoundedMonetaryAmount, required — A monetary amount that must be rounded to the currency's default decimal places (e.g., 2 decimal places for USD).
      - `amount` string, required — Monetary amount in decimal format, using a period (.) as the decimal separator. Must be rounded to the currency's default decimal places (e.g. '1.01' in USD represents 1 dollar and 1 cent).
      - `currency` string, required — Currency code following ISO-4217
    - `revenue_account` string, required — The account code found in the Chart of Accounts

## Acknowledgement `200`

OK

- string — A placeholder indicating a response from a webhook. The contents of this response are ignored.

---

[API](https://skmtc.net/rillet/apis/rillet-accounting-api.md) · [All operations](https://skmtc.net/rillet/apis/rillet-accounting-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rillet/rillet-accounting-api/versions/a2ab794dd5f2/schema)
