Skip to main content
A Veles Contract Amendment Line is what one amendment did to one contract line: the line’s terms before and after, and what the change is worth. It is the contract’s revenue-movement record: expansion, contraction and churn, reported line by line. Amendment lines are master-detail children of the Contract Amendment, with a lookup to the Contract Line they changed. That lookup gives every contract line an Amendment Lines related list: its change history.

Which lines an amendment has

An amendment an order made has one line for every contract line the order added, changed, removed or kept, so an amendment that changes one line of ten has ten rows. Imports, activations and cancellations have none, and an import’s amendment stays in Veles (see Contract Amendment). A removed line keeps its contract line record, flagged Removed, so every row’s Contract Line lookup resolves and a contract line’s related list is its whole history.

Before, after, and what the change is worth

Each row carries the line’s terms twice: the Prior fields as they stood before the amendment, the New fields after. Prior fields are zero (dates empty) on an Original or Added line. New fields are zero on a line removed before it started; a line removed under way keeps its terms in the New fields, with New End Date the day before the amendment. Quantity, Net Unit Price and Net Amount read like the Contract Line’s: Net Unit Price x Quantity = Net Amount, annualized.
  • Remaining Value is what each side’s terms are worth from the amendment’s Effective On date to the end of the line’s window: Net Amount x Proration Factor, where the factor counts only the days left. On an Original line it covers the whole window.
  • Payable Impact = New Remaining Value - Prior Remaining Value: how much the amendment changes what the customer pays for this line. Sum it across an amendment’s lines for the amendment’s own Payable Impact, or across lines by Impact Type, product or the amendment’s Effective On for expansion and contraction reports.
  • Contribution = Prior Contribution + Payable Impact: what the line is worth over its whole window, at its old terms up to each amendment and its new terms after. A contract line’s Net Amount Prorated is its latest amendment line’s Contribution. On a contract that came in by import or was entered by hand, the first order amendment starts each line’s Contribution at what its terms were worth over its whole window, so the contract’s TCV carries straight across.
Everything payable is computed on net money, the way Veles computes what is payable. A bundle row whose money is Allocated (see Contract Line) reads zero net on both sides, so SUM(Payable Impact) needs no bundle filter. Its share before and after is in the Allocated fields, so a shadow row that is Modified because its share moved still shows what moved. Never sum the Allocated fields: like the contract line’s Allocated Amount, they restate value the net rows carry. Usage lines are billed on actuals, which the contract does not hold, so nothing about one is payable: its Remaining Values, Payable Impact and Contribution are zero, and its Net Amount and Allocated Amount fields are empty, as the contract line’s are. Its rates and quantities still record the change, so a rate change reads Modified with a Payable Impact of zero.

Fields at a glance

Field details

Text (standard name field)
Line Name — The same text as Product Name, cut at 80 characters.
Text(255), unique, external ID
Veles External ID — The Veles contract amendment line ID. All sync writes upsert on this field; never edit.
Master-Detail(Veles Contract Amendment)
Amendment — The Veles contract amendment this line belongs to. Master-detail: an amendment’s lines are everything it did, one row per contract line.
Lookup(Veles Contract Line)
Contract Line — The contract line the amendment changed; its Amendment Lines related list is that line’s change history. A removed line keeps its record, flagged Removed, so the lookup always resolves.
Number(3, 0)
Phase Sequence — The 1-based sequence of the phase the contract line sits in, denormalized from the line so amendment reports filter and group by phase without joins.
Lookup(Product2)
Product — The Salesforce Product2 record matching the contract line’s Veles product, when the mapping is known. Enables native “change by product family” joins. May be empty — Product Name and Product SKU are always populated as text so reports never break on a missing lookup.
Text(255)
Product Name — The contract line’s name, the same text as its Product Name. Stored as text so reports never depend on the Product lookup resolving.
Text(255)
Product SKU — The contract line’s product SKU. Stored as text for the same reason as Product Name.
Picklist
Impact Type — What the amendment did to the line. Unrestricted so new Veles impact types never break the sync.Values: Original (the line came with the order that created the contract), Added (a later order added it), Modified (its price, quantity, dates or product changed), Removed (the order dropped it: one under way ends the day before the amendment and keeps its terms in the New fields, one that had not started reads zero there, and a later amendment that still leaves it out reads Removed again), Unchanged (an order amended the contract and left the line as it was).
Picklist
Billing Type — How the line’s charge behaves. Unrestricted so new Veles billing types never break the sync.Values: Recurring (repeats every billing period), One-Time (billed once), Usage (transactional/consumption-based, billed on actuals). Usage is billed on actuals, which the contract does not hold, so a usage line’s Remaining Values, Payable Impact and Contribution are zero; its rates and quantities still record the change.
Number(16, 2)
Prior Quantity — The units the line’s rate was priced over before the amendment: its own quantity times the bundles it rode in, so Prior Net Unit Price x Prior Quantity is Prior Net Amount. Zero on an Original or Added line.
Currency(16, 2)
Prior Net Unit Price — The line’s per-unit price before the amendment, after all discounts. Zero on an Original or Added line, and on a row whose money is Allocated.
Currency(16, 2)
Prior Net Amount — The line’s extended net amount before the amendment, annualized/full-term: Prior Net Unit Price x Prior Quantity. Zero on an Original or Added line. Empty on a usage line.
Currency(16, 2)
Prior Allocated Unit Price — The amount the bundle’s pricing mode allocated to one unit of this line before the amendment: a bundle shadow row’s share, zero on every other row. Prior Net Unit Price + Prior Allocated Unit Price is the line’s display unit price before the amendment. Zero on an Original or Added line.
Currency(16, 2)
Prior Allocated Amount — The value allocated onto this row before the amendment, annualized/full-term: Prior Allocated Unit Price x Prior Quantity. At most one of Prior Net Amount and Prior Allocated Amount is non-zero on any row. Zero on an Original or Added line. Empty on a usage line. A derived value, like the contract line’s Allocated Amount: never sum it. Payable Impact carries the row’s payable change on net.
Date
Prior Start Date — The first day of the line’s effective window before the amendment. Empty on an Original or Added line.
Date
Prior End Date — The last day of the line’s effective window before the amendment. Empty on an Original or Added line.
Percent(7, 4)
Prior Proration Factor — How much of Prior Net Amount falls between the amendment’s Effective On date and the end of the line’s window before the amendment (day-based), computed by Veles and synced. A one-time line’s is 100% until its window has passed.
Currency(16, 2)
Prior Remaining Value — What the line’s old terms were worth from the amendment’s Effective On date to the end of their window: Prior Net Amount x Prior Proration Factor. Zero on a usage line.
Number(16, 2)
New Quantity — The units the line’s rate is priced over after the amendment: its own quantity times the bundles it rides in, so New Net Unit Price x New Quantity is New Net Amount. Zero on a Removed line that had not started; one removed under way keeps its terms here until its New End Date.
Currency(16, 2)
New Net Unit Price — The line’s per-unit price after the amendment, after all discounts. Zero on a Removed line that had not started, and on a row whose money is Allocated.
Currency(16, 2)
New Net Amount — The line’s extended net amount after the amendment, annualized/full-term: New Net Unit Price x New Quantity. Zero on a Removed line that had not started. Empty on a usage line.
Currency(16, 2)
New Allocated Unit Price — The amount the bundle’s pricing mode allocates to one unit of this line after the amendment: a bundle shadow row’s share, zero on every other row. New Net Unit Price + New Allocated Unit Price is the line’s display unit price after the amendment. Zero on a Removed line that had not started.
Currency(16, 2)
New Allocated Amount — The value allocated onto this row after the amendment, annualized/full-term: New Allocated Unit Price x New Quantity. At most one of New Net Amount and New Allocated Amount is non-zero on any row. Zero on a Removed line that had not started. Empty on a usage line. A derived value, like the contract line’s Allocated Amount: never sum it. Payable Impact carries the row’s payable change on net.
Date
New Start Date — The first day of the line’s effective window after the amendment. Empty on a Removed line that had not started.
Date
New End Date — The last day of the line’s effective window after the amendment. Empty on a Removed line that had not started; the day before the amendment on one removed under way.
Percent(7, 4)
New Proration Factor — How much of New Net Amount falls between the amendment’s Effective On date and the end of the line’s window (day-based), computed by Veles and synced. On an Original line, its whole window. A one-time line’s is 100% until its window has passed.
Currency(16, 2)
New Remaining Value — What the line’s new terms are worth from the amendment’s Effective On date to the end of their window: New Net Amount x New Proration Factor. On an Original line, its whole window. Zero on a usage line.
Currency(16, 2)
Payable Impact — New Remaining Value - Prior Remaining Value: how much the amendment changes what the customer pays for this line from the amendment’s Effective On date on. Positive when the customer pays more; zero on an Unchanged line and on a usage line. Sums to the amendment’s Payable Impact.
Currency(16, 2)
Prior Contribution — The line’s Contribution as of the contract’s previous amendment. Zero on an Original or Added line. A line an import or a hand-entered contract brought in has no amendment line before its first order amendment, which starts it at what its terms were worth over its whole window.
Currency(16, 2)
Contribution — Prior Contribution + Payable Impact: what the line is worth over its whole window, at its old terms up to each amendment and its new terms after. The contract line’s Net Amount Prorated is its latest amendment line’s Contribution.
DateTime
Synced At — When the Veles sync last wrote this record. The contract mirror updates whenever the contract changes in Veles: created by an executed order, activated, amended or cancelled.