Skip to main content
A Veles Order Line is one product charge committed for one phase window — the order-side reporting workhorse. See Order Lines for how lines behave in Veles. Lines are master-detail children of the Order, giving one flat, reportable list per order, with a lookup to their Order Phase. Phase sequence and billing attributes are denormalized onto the line so rollup and report filters work without joins. Dynamic user-defined values carried into a line are exposed as child Order Line Attribute Values, listed under Attribute Values on the line’s Related tab. Application-owned values remain first-class Order Line fields.

The money on an order line

An order line has one price lens, not the quote line’s waterfall: the agreed price, carried through from the quote line unchanged. List and system prices, and the discount between them, stay on the Quote Line the order was converted from: The names match deliberately: quote to order to contract is the join a revenue team makes, and one number should have one name the whole way through. Bundle money keeps the quote’s complementary grain: each line’s engine price lands in exactly one of Net Amount (the row’s own, transacted price) or Allocated Amount (what the bundle’s pricing mode allocated onto the row), so Net + Allocated is the row’s whole-order value — and an unfiltered SUM(Net Amount) totals the order correctly with no bundle filter. A component of a bundle sold more than once shows in Veles at one bundle’s worth, the whole-order value divided by the bundles sold. Product-grain reports use the row formula Net Amount + Allocated Amount filtered Bundle = false; never sum Allocated Amount by itself. The full explanation and a worked example live on Quote Line.

Fields at a glance

Field details

Text (standard name field)
Line Name — The line’s name as it read on the quote the order was converted from, or the product’s name for an order built without a quote. The same text as Product Name, cut at 80 characters.
Text(255), unique, external ID
Veles External ID — The Veles order line ID. All sync writes upsert on this field; never edit.
Master-Detail(Veles Order)
Order — The Veles order this line belongs to. Master-detail: all of an order’s lines across every phase, as one flat list. Filter by Phase Sequence or Billing Type to slice it.
Lookup(Veles Order Phase)
Phase — The order phase (time window) this line is committed in. Lookup rather than master-detail, since the line’s owning parent is the order; use the denormalized Phase Sequence field for rollup filters.
Number(3, 0)
Phase Sequence — The 1-based sequence of the phase this line sits in, denormalized so rollup and report filters work without joins — e.g. SUM(Net Amount) WHERE Phase Sequence = 1 AND Billing Type = Recurring.
Lookup(Product2)
Product — The Salesforce Product2 record matching this line’s Veles product, when the mapping is known. Enables native “revenue 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 line’s name as it read on the quote the order was converted from (the rep’s rename, else the product name recorded on the quote line), or the product’s name for an order built without a quote. Stored as text so it survives catalog changes and reports never depend on the Product lookup resolving.
Text(255)
Product SKU — The product SKU recorded on the quote line the order was converted from, or the product’s SKU for an order built without a quote. Stored as text for the same reason as Product Name.
Number(16, 2)
Quantity — The units this line’s rate is priced over across the whole order: the line’s own quantity times the bundles it rides in, so Net Unit Price x Quantity is the row’s Net Amount. On a row whose money is Allocated the Net Unit Price is zero and its value is in Allocated Amount instead. A usage line’s is its own quantity. Fractional quantities are possible.
Currency(16, 2)
Net Unit Price — The per-unit price for this line after all discounts, carried through unchanged from the quote line. Zero on a row whose money is Allocated. The order mirror carries no list or system price and no discount: those stay on the quote the order was converted from, so this is the only unit price on the record.
Currency(16, 2)
Net Amount — The line’s extended net amount, annualized/full-term (the run-rate lens, before proration). Recurring lines’ Net Amounts sum to the phase’s ARR. See Net Amount Prorated for the window actual; their ratio is the Proration Factor.
Currency(16, 2)
Net Amount Prorated — The line’s net amount prorated to its actual window: what the customer really pays for this line in this phase. Recurring lines’ values sum to the phase’s Recurring Revenue Prorated. One-time lines are never prorated, so their Net Amount and Net Amount Prorated match. This is the field to sum for revenue reporting — no bundle filter needed: like Net Amount, it carries transacted money only, 0 on bundle rows whose price is derived from other rows (Allocated Amount Prorated holds those).
Currency(16, 2)
Allocated Amount — The value the bundle’s pricing mode allocated onto this row, annualized/full-term: a component’s spread share of a parent-priced bundle’s whole line (every bundle sold), or the components’ total rolled up onto a sum-of-parts bundle line. Carried through unchanged from the quote line. At most one of Net Amount and Allocated Amount is non-zero on any row — add them for the row’s whole-order value. Never sum this column: a bundle’s Allocated restates the value of its contents; to total an order, sum Net Amount.
Currency(16, 2)
Allocated Amount Prorated — The window-actual companion to Allocated Amount, on the same prorated lens as Net Amount Prorated. At most one of Net Amount Prorated and Allocated Amount Prorated is non-zero on any row — add them for the row’s whole-order prorated value. Never sum this column; to total an order, sum Net Amount Prorated.
Percent(7, 4)
Proration Factor — How much of the line’s annualized amount applies to its actual window (day-based). 100% means no proration. Net Amount x Proration Factor = Net Amount Prorated.
Picklist
Billing Type — How this 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 lines contribute nothing to phase totals, since there are no actuals yet at order time — their amounts sync as blank, not 0.
Picklist
Billing Frequency — How often this line is invoiced: Monthly, Quarterly, Semi-Annual, or Annual. Independent of Billing Type — a recurring line can be billed at any of these cadences.
Checkbox
Bundle — Whether this line is a bundle: a product whose component lines carry its detail. True when other lines name it as their Parent Line, whatever the bundle’s pricing mode. Product-grain reports filter Bundle = false and total Net Amount + Allocated Amount — see the money on an order line.
Lookup(Veles Order Line)
Parent Line — The line this line sits under: for a bundle component, the bundle’s own line in the same phase. Empty for standalone lines and for the top line of a bundle. Structure only; every row carries its own Net or Allocated money regardless of this pointer.
Date
Start Date — The first day of the line’s own effective window. Lines can cover a sub-window of their phase (e.g. a mid-phase add).
Date
End Date — The last day of the line’s own effective window.
Number(4, 0)
Months — How many months the line’s effective window spans, derived from its start and end dates.
Number(8, 2)
Position — The line’s sort order within its phase, so a report can present lines in the order the customer saw on the order document.
DateTime
Synced At — When the Veles sync last wrote this record. The order mirror updates at each step of the order’s lifecycle: created, edited in draft, finalized, sent for signature, signed, executed and cancelled.