xMatix
Sign in Request demo
xMatix
PRODUCTS
SalesField Sales & SFACRMRewardsClaimsInventoryProcurementWarehouse ManagementField ServiceServiceSupportTelephony & MessagingFinance & AccountingPayrollExpense ManagementCommercePortalsAnalytics & ReportingData StudioMobile AppSee all products →
PLATFORM
Platform overviewApp BuilderAutomationIntegrationsSecurity & GovernanceChange ManagementDevelopers
SENSE AI
Sense AI overviewSense AssistSense ControlSense VisionAI StudioTrust & governanceIn Claude & ChatGPTUse cases
SOLUTIONS
Auto DMSConsumer Goods DMSSales Force Automation (SFA) FMCG & DistributionManufacturing & Dealer NetworksAutomotive & DealershipsPharma & HealthcareConsumer DurablesAgri-InputsBuilding MaterialsService NetworksWarehousing & 3PLFinancial AccountingERP SoftwareIndia GST ComplianceUAE VAT & e-InvoicingSaudi ZATCA & VATAll solutions →
RESOURCES
Knowledge CenterDeveloper & CLIBlogGuidesWhat is xMatix?Company facts
COMPANY
AboutCareersPartnersEventsContactAuthorsLegal
Sign in Request demo
Home/Docs/Entity Reference/Contract Line — entity reference
REFERENCE · Last reviewed

Contract Line — entity reference

One commercial position in the Contracts app register: the item sold under a service or maintenance agreement, its quantity, unit price and discount, the contract years and hours, the number of customer assets covered and the customer account. A contract line has no Contract field, so it is not tied to a contract header: the contract's Scope tab lists every contract line, and the Account is the only field a line shares with its contract. It is a record only. Nothing calculates from it, and no quote, order, service order, invoice or entitlement check reads it. Enforced service cover comes from asset service contracts instead. PM tasks can point to a line through their Contract Line field. New lines are numbered from the SCL series on first save. The shipped New/Edit form shows Name, Item, Description, Quantity, Contract Years, Discount, Contract Hours, Account, Asset count and Unit Price; every other business field is on no shipped form.

Fields

FieldLabelTypeRequiredWhat it does
AccountIdAccountLookup → AccountThe customer this line serves. Optional. On the New/Edit form but not on the shipped record page. It is the only field a line shares with its contract header, and the shipped dashboards group lines by it.
AssetcountAsset countNumberHow many customer assets the line covers, typed as a whole number. Saved as 0 when left empty and never counted from asset records.
BilledAmountBilled AmountDecimalHow much has been billed against the line. On no shipped form, saved as 0 when left empty and never updated from invoices. The Renewal Exposure and Contracts & SLA dashboards sum it, so their value tiles stay at zero unless it is filled by import or an extended form.
BillingTreatmentBillingTreatmentPickListHow the line is billed. On no shipped form and ships with no picklist values; informational only.
BillToAccountIdBill To AccountLookup → AccountThe account to invoice when it differs from the line's account. On no shipped form and informational, because nothing invoices from a contract line.
ContractHoursContract HoursNumberHours of work or running time the line covers, as a whole number. Saved as 0 when left empty. Not reduced by service work; the Contracts & SLA dashboard sums it.
ContractYearsContract YearsNumberThe length of the agreement in years, as a whole number. Saved as 0 when left empty. Informational; the Renewal Exposure dashboard averages it.
CostPriceCost PriceDecimalYour cost per unit, for margin reporting. On no shipped form; saved as 0 when left empty.
CreatedByIdCreated ByLookup → UserAccountYes
CreatedDateTimeCreated DateDateAndTimeYes
DiscountDiscountPercentThe agreed discount for the line, entered as a percentage. Informational only: it is not applied to the unit price or to any document.
IdIdGuidYes
IspartssupplyIs parts supplyBooleanMarks a parts-supply line rather than a service line. On no shipped form, off by default and informational.
IsunderwarrantyIs under warrantyBooleanMarks equipment that is still under warranty. On no shipped form, off by default and informational.
ItemIdItemLookup → ItemThe item sold on this line. Optional and informational: any item can be chosen and nothing is copied from it.
LineitemdescriptionLine item descriptionTextFree-text description of the line, shown as Line item description in the list. Because a line has no Contract field, putting the contract number here is the practical way to find an agreement's lines.
ModifiedByIdModified ByLookup → UserAccountYes
NameNameTextYesThe line's number. The form requires a value, but on first save it is replaced by an automatic number from the SCL series (series, day-month-year date and a six-digit counter, no separator, restarting daily as shipped).
OwnerIdOwnerLookup → UserAccountYes
QuantityQuantityNumberHow many units the line covers, as a whole number. Saved as 0 when left empty. Not consumed by any service or billing process.
RecordTypeIdRecord TypeGuid, hidden
RemarksRemarksTextFree-text notes. On no shipped form.
SeriesSeriesTextFree text. On no shipped form. It does not change the series the line is numbered from.
ShipToAccountIdShip To AccountLookup → AccountThe account receiving the goods or service when it differs from the line's account. On no shipped form and informational.
SubscriptionKeySubscription KeyGuid, hiddenYes
UnitPriceUnit PriceDecimalThe agreed price per unit. Saved as 0 when left empty. No line total is calculated from it.
UpdatedDateTimeModified DateDateAndTimeYes
VendornameVendor nameTextThe supplier behind the line, as free text rather than a link to an account. On no shipped form.
VisitFrequencyVisit FrequencyPickListHow often preventive-maintenance visits are due. On no shipped form and ships with no picklist values. It does not create PM tasks.
YearNumberYear NumberNumberWhich contract year this line covers when an agreement is recorded as one line per year. On no shipped form; saved as 0 when left empty.

Actions

ActionLabelTypeWhat it does
CloneCloneServerAction (Clone)Create a copy of this record
deletedeleteDeleteDelete
NewNewNewInlineNew
  • Item — looks up via ItemId
  • Account — looks up via ShipToAccountId
  • Account — looks up via AccountId
  • Account — looks up via BillToAccountId
  • PMTask — referenced by via ContractLineId