Transaction-level system fields
Reference for the system-provided fields at the transaction (header) level in Quote Experience, including variable names, descriptions, who can modify each field, and default values.
Field naming conventions
Quote Experience uses a consistent prefix convention for field variable names.
- System-generated header-level fields use the prefix
txn.followed by the field name — for example,txn.id. - Custom header-level fields created by administrators use the prefix
txn.custom.followed by the field name — for example,txn.custom.quoteName.
For line-level field naming conventions, see Transaction line-level system fields.
Modifiable by
The Modifiable by column in the field tables uses the following values.
- System
- The field value is set only by the application. Users cannot edit system-modifiable fields on the quote layout, and administrators cannot set field values using determination rules.
- User
- Any user with the appropriate permissions can update the field value. Determination rule actions can also modify user-modifiable fields.
System-provided header-level fields
The following fields are available in all Quote Experience implementations.
| Variable name | Description | Default value |
|---|---|---|
txn.id |
UUID of the transaction. Uniquely identifies the transaction record. | Auto-generated on creation. Modifiable by: System |
txn.account.id |
ID of the account used when the transaction was created. | Empty. Expected to be passed in on create. Modifiable by: User |
txn.opportunity.id |
ID of the opportunity through which the transaction was created. | Empty. Expected to be passed in on create. Modifiable by: User |
txn.pricebook.id |
Pricebook associated with the products on the transaction. | Empty. A blank value is interpreted as the default pricebook. Modifiable by: User |
txn.pricing.currencyCode |
Currency code associated with the products on the transaction. | Empty. A blank value uses the base currency for the tenant. Modifiable by: User |
txn.created |
Timestamp of when the transaction was created. | Auto-generated on creation. Modifiable by: System |
txn.createdBy |
Name of the user who created the transaction. | Auto-generated on creation. Modifiable by: System |
txn.modified |
Timestamp of the most recent modification to the transaction. | Auto-generated on each update. Modifiable by: System |
txn.modifiedBy |
Name of the user who made the most recent modification to the transaction. | Auto-generated on each update. Modifiable by: System |
txn.externalId |
Unique identifier used to reference the transaction in external connections and integrations. | Empty. Expected to be passed in on create. Modifiable by: User |
txn.stage |
Current stage of the transaction in the quote lifecycle. | Auto-generated. Value depends on the stage configuration. Modifiable by: System |
txn.persona |
Persona of the user who performed the most recent request on the transaction. | Auto-generated. Value depends on the persona configuration. Modifiable by: System |
ServiceNow SFA Fields
"The following fields are installed when ServiceNow SFA is enabled. Fields noted as "Set from opportunity" on create are populated automatically from the source opportunity when a quote is created.
| Variable name | Description | Default value |
|---|---|---|
txn.displayNumber |
Transaction display number. The user-facing quote number. | Empty. Set during create quote. Modifiable by: System |
txn.sysId |
ServiceNow system ID of the transaction. | Empty. Set during create quote. Modifiable by: System |
txn.shortDescription |
Short description of the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.contact |
Contact name associated with the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.assignedTo |
User assigned to the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.assignmentGroup |
Assignment group for the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.startDate |
Start date for the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.endDate |
End date for the transaction. | Empty. Set from opportunity on create. Modifiable by: System |
txn.term |
Contract term in months. | Empty. Set from opportunity on create. Modifiable by: System |
txn.channel |
Records the channel through which the transaction originated. | agent_assist Modifiable by: System |
txn.transactionType |
Type of transaction. Values: New, Amendment, Renewal. | Empty. Modifiable by: System |
txn.transactionAction |
Used to derive the transaction type. Values: Add, Change. | add Modifiable by: System |
txn.isAutoGeneratedForRenewal |
Indicates whether this transaction was automatically generated for a renewal based on the expiry of the original contract. | false Modifiable by: System |
txn.isAutoRenewContract |
Indicates whether the contract resulting from this transaction should trigger automatic renewal workflows. | false Modifiable by: System |
txn.source.quote |
Reference to the quote from which this transaction was consolidated, if applicable. | Empty. Modifiable by: System |
txn.source.contract |
Reference to the contract used in the amendment or renewal workflow that this transaction is part of. | Empty. Modifiable by: System |
ServiceNow Pricing fields
The following fields are installed when ServiceNow Pricing is enabled.
| Variable name | Description | Default value |
|---|---|---|
txn.pricing.extendedPrice |
Total One-Time price. An aggregate of the one-time price across all lines. | Empty. Modifiable by: System |
txn.pricing.cost |
Total One-Time Cost. An aggregate of the one-time cost across all lines. | Empty. Modifiable by: System |
txn.pricing.margin.amount |
Total One-Time Margin. Calculated as Total One-Time Price minus Total One-Time Cost. | Empty. Modifiable by: System |
txn.pricing.margin.percentage |
Total One-Time Margin %. Calculated as Total One-Time Margin divided by Total One-Time Price × 100. | Empty. Modifiable by: System |
txn.pricing.netCost |
Total Cost. An aggregate of the cumulative net cost across all lines. | Empty. Modifiable by: System |
txn.pricing.margin.total.amount |
Total Margin Amount. Calculated as Total Amount minus Total Cost. | Empty. Modifiable by: System |
txn.pricing.margin.total.percentage |
Total Margin %. Calculated as Total Margin Amount divided by Total Amount × 100. | Empty. Modifiable by: System |
txn.pricing.annualPriceRecurring |
Total Annual Price. An aggregate of the cumulative annual recurring price across all lines. | 0 Modifiable by: System |
txn.pricing.netPriceRecurring |
Total Monthly Price. An aggregate of the cumulative monthly recurring price across all lines. | 0 Modifiable by: System |
txn.pricing.costRecurring |
Total Monthly Cost. An aggregate of the cumulative monthly recurring cost across all lines. | 0 Modifiable by: System |
txn.pricing.marginRecurring.amount |
Total Monthly Margin. Calculated as Total Monthly Price minus Total Monthly Cost. | 0 Modifiable by: System |
txn.pricing.marginRecurring.percentage |
Total Monthly Margin %. Calculated as (Total Monthly Price minus Total Monthly Cost) divided by Total Monthly Price. | Empty. Modifiable by: System |
txn.pricing.netNew.amount |
Total Net New Amount. An aggregate of the cumulative net price from new root lines. | 0 Modifiable by: System |
txn.pricing.source.contract.amount |
Original Contract Amount. An aggregate of the renewal amount from lines. Represents the contract value from the original transaction being renewed. | 0 Modifiable by: System |
txn.pricing.delta.upsellDownsellAmount |
Total Upsell/Downsell Amount. An aggregate of the upsell or downsell amount from lines. | 0 Modifiable by: System |
txn.pricing.adjustment.renewalBasis |
Renewal Adjustment Basis. The starting renewal price from which to apply adjustments. | list_price Modifiable by: System |
txn.pricing.adjustment.renewalType |
Renewal Adjustment Type. The type of adjustment for renewal. Options: Markup %, Markdown %. Read-only when Renewal Adjustment Basis is List Price. | Empty. Set from opportunity on create. Modifiable by: System |
txn.pricing.adjustment.renewalValue |
Renewal Adjustment Value. The amount of adjustment to apply to the renewal price, interpreted according to the Renewal Adjustment Type. | Empty. Modifiable by: System |
txn.costbook |
Reference to the cost book associated with the transaction. Set in the Pricing Service response. | Empty. Modifiable by: System |
Approvals fields
The following field is installed when ServiceNow Approvals is enabled.
| Variable name | Description | Default value |
|---|---|---|
txn.approvalState |
Approval state of the transaction. | Empty. Modifiable by: System |
PDF Document Generation fields
The following fields are installed when ServiceNow PDF Document Generation is enabled.
| Variable name | Description | Default value |
|---|---|---|
txn.docGen.template |
Document template selection for document generation. | Empty. Modifiable by: User |
txn.docGen.internalSigner |
Internal signer selection for document generation. | Empty. Modifiable by: User |
txn.docGen.externalSigner |
External signer selection for document generation. | Empty. Modifiable by: User |
Partner Management fields
The following fields are installed when ServiceNow Partner Management is enabled.
| Variable name | Description | Default value |
|---|---|---|
txn.dealType |
Route to market / deal type of the transaction. | direct Modifiable by: User |
txn.routeToMarket |
Route to market of the transaction. | direct Modifiable by: User |
txn.channelPartner |
Channel partner associated with the transaction. | Empty. Modifiable by: User |
Sync Quote to Opportunity fields
The following field is installed when ServiceNow Sync Quote to Opportunity is enabled.
| Variable name | Description | Default value |
|---|---|---|
txn.opportunity.isSynced |
Indicates whether the quote is synced to the source opportunity. | Empty. Modifiable by: System |