Contracts in Light represent multi-period agreements with customers. They group line items and drive invoicing over the contract period.

Navigate via Revenue & Invoicing → Contracts.

Contracts List

The Contracts table shows: Customer, Entity, Status, Description, Start date, End date, Renewal date, ARR, Activated at, Terminated at.

By default, the page shows only Active and Draft contracts. To see Terminated contracts or other states, adjust or clear the status filter above the table.

Contract Lifecycle States

State UI Label
DRAFT Draft
CREATED Draft
ACTIVE Active
PENDING_TERMINATION Active (with pending-termination indicator)
TERMINATED Terminated

Creating a Contract

The create-contract dialog collects only a few fields up front; line items, payment terms, and other configuration are added in the contract details view after creation.

  1. Click + Create contract
  2. Fill in:
    • Contract period — start date and end date
    • Description
    • Entity — the company entity this contract belongs to
    • Currency — defaults from the entity's functional currency
  3. Click Create

Contracts can also be created from a customer's detail page, which pre-fills the customer.

Contract Detail Tabs

Open a contract to see these tabs:

  • Lines — the contract line items (products, quantities, prices, taxes, discounts, amortization)
  • Invoices — invoices issued against this contract

Line items are added and edited in the Lines tab — not in the create dialog.

Editing Custom Properties After Publishing

Once a contract is published, its line items are locked — except for custom properties. You can add, change, or remove a line item's custom properties (department, cost center, project code, etc.) without voiding and recreating the contract.

  1. Open the published contract and go to the Lines tab
  2. Enter edit mode on the line item you want to update
  3. Add, change, or remove its custom properties
  4. Confirm the changes when prompted, then save

Amounts, tax codes, descriptions, and other revenue- or ledger-impacting fields remain locked. Every change is recorded in the contract's modification history, and the line item re-locks after saving. See Custom Properties for more.

Terminating a Contract

Open a contract and use the terminate action to end it early. What happens depends on the termination date:

  • Termination date today or in the past — the contract moves directly to TERMINATED, with the terminated date recorded.
  • Termination date in the future — the contract enters PENDING_TERMINATION until that date, then completes to TERMINATED. While pending, the scheduled termination can be cancelled to return the contract to Active.

Was this article helpful?

Book a demo