> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getveles.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Contract Phase

> Field reference for the Veles Contract Phase object in the Salesforce managed package.

A Veles Contract Phase is one **time-segmented window** within a
[Contract](https://docs.getveles.com/sfdc-managed-package/objects/contract.md) — a ramp year, a pilot
period, any stretch of months with its own pricing. Phases are ordered by
sequence and each carries its own precomputed totals. See
[Contract Phases](https://docs.getveles.com/get-started/contract-management/contract-phase.md) for how
phases behave in Veles.

Phases are master-detail children of their contract. Their totals are synced
rather than rolled up in Salesforce, because
[Contract Lines](https://docs.getveles.com/sfdc-managed-package/objects/contract-line.md) relate to phases
via lookup and native rollup summaries require master-detail — so the phase
totals arrive precomputed by Veles instead.

An amendment keeps a phase's record and moves its values to the amended terms.
A phase the amendment removes before it starts stays, flagged **Removed**, with
its lines flagged the same and zero totals; one removed while under way is not
flagged: it ends the day before the amendment, and the lines it still held read
Removed. Like order phases, contract phases carry no discount pair and no
uplift.

Unit of Measure values are exposed as child
[Contract Phase Attribute Values](https://docs.getveles.com/sfdc-managed-package/objects/contract-phase-attribute-value.md)
in the `uom` namespace, listed under **Attribute Values** on the phase's
Related tab. An amendment replaces a phase's values with the
amending order's; a removed phase keeps the values it had.

## Fields at a glance

| Field | API Name | Type |
| - | - | - |
| Phase Name | `Name` | Text (standard name field, e.g. "Phase 1") |
| Veles External ID | `Veles__External_Id__c` | Text(255), unique, external ID |
| Contract | `Veles__Contract__c` | Master-Detail(Veles Contract) |
| Sequence | `Veles__Sequence__c` | Number(3, 0) |
| Removed | `Veles__Removed__c` | Checkbox |
| Months | `Veles__Months__c` | Number(4, 0) |
| Start Date | `Veles__Start_Date__c` | Date |
| End Date | `Veles__End_Date__c` | Date |
| Phase Contract Value | `Veles__Phase_Contract_Value__c` | Currency(16, 2) |
| ARR | `Veles__ARR__c` | Currency(16, 2) |
| Recurring Revenue Prorated | `Veles__Recurring_Revenue_Prorated__c` | Currency(16, 2) |
| One-Time Revenue | `Veles__One_Time_Revenue__c` | Currency(16, 2) |
| Synced At | `Veles__Synced_At__c` | DateTime |

## Field details

**Name** `Text (standard name field)`

**Phase Name** — "Phase" and the phase's sequence, e.g. Phase 1.

**Veles\_\_External\_Id\_\_c** `Text(255), unique, external ID`

**Veles External ID** — The Veles contract phase ID. All sync writes upsert
on this field; never edit.

**Veles\_\_Contract\_\_c** `Master-Detail(Veles Contract)`

**Contract** — The Veles contract this phase belongs to. Master-detail:
phases are owned by their contract and are deleted with it.

**Veles\_\_Sequence\_\_c** `Number(3, 0)`

**Sequence** — The phase's 1-based order within the contract. Phase 1 is the
first time window. Also denormalized onto each contract line (Phase Sequence)
so line-level rollup filters work without joins.

**Veles\_\_Removed\_\_c** `Checkbox`

**Removed** — Whether an amendment dropped the phase before it started, or a
re-import did. The phase keeps its record so its lines keep their Phase
lookup; its lines read Removed and its totals are zero. A phase dropped while
under way is not flagged: it ends the day before the amendment, and the lines
it still held read Removed. Maintained by the Veles sync.

**Veles\_\_Months\_\_c** `Number(4, 0)`

**Months** — How many months this phase spans, derived from its effective
window. Phases can be any length, not just whole years.

**Veles\_\_Start\_Date\_\_c** `Date`

**Start Date** — The first day of the phase's effective period.

**Veles\_\_End\_Date\_\_c** `Date`

**End Date** — The last day of the phase's effective period. A phase an
amendment removes while it is under way ends the day before the amendment.

**Veles\_\_Phase\_Contract\_Value\_\_c** `Currency(16, 2)`

**Phase Contract Value** — Recurring Revenue Prorated + One-Time Revenue:
everything the customer pays for this phase's actual window. Phase Contract
Values sum to the contract's TCV. Precomputed by Veles, since line-to-phase is
a lookup and Salesforce cannot roll this up natively.

**Veles\_\_ARR\_\_c** `Currency(16, 2)`

**ARR** — Annual Recurring Revenue for this phase: the sum of its recurring
lines at their current terms, annualized (run-rate lens,
proration-independent). Compare with Recurring Revenue Prorated to see the
proration effect; on a ramp, per-phase ARR is the "Year N run-rate" story.

**Veles\_\_Recurring\_Revenue\_Prorated\_\_c** `Currency(16, 2)`

**Recurring Revenue Prorated** — The sum of this phase's recurring lines,
prorated to the phase's actual window. An amended line counts at its old terms
up to the amendment and at its new terms after, so after an amendment this can
differ from ARR even on a full-length phase. Phase values sum to the
contract's Recurring TCV.

**Veles\_\_One\_Time\_Revenue\_\_c** `Currency(16, 2)`

**One-Time Revenue** — The sum of this phase's one-time fees. Phase values sum
to the contract's One-Time TCV. Recurring Revenue Prorated + One-Time Revenue
\= the Phase Contract Value.

**Veles\_\_Synced\_At\_\_c** `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.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.