Overview

Sales Order document templates in Luminous use Mustache-style placeholders. Inside the {{#orderLines}} loop, the placeholder for a line item's unit (wholesale) price is unitPrice.


The unitPrice placeholder

What you typeWhat it outputs
{{unitPrice}}Formatted currency — e.g. $12.50
{{unitPrice.raw}}Unformatted number — e.g. 12.5 (useful for math or custom formatting)

Because unitPrice is a currency-type placeholder, it always outputs a dollar sign and two decimal places by default. Use the .raw variant only if you need the bare number.

All of the following live inside the {{#orderLines}}...{{/orderLines}} loop:

PlaceholderWhat it shows
{{unitPrice}}Unit price for that line item
{{lineSubtotal}}Quantity × unit price
{{lineDiscount}}Discount amount applied to the line
{{lineTotal}}Line subtotal minus line discount

Each of these also supports .raw for the unformatted number.


How to add a Price column to your Sales Order template

The default Sales Order template does not include a price column. Follow these steps to add one.

Step 1 — Open the template editor

  1. Go to Manage → Templates.
  2. Find your Sales Order template (or create a new one with type Sales Order).
  3. Make sure Configuration Mode is set to Use Custom HTML.

Step 2 — Add the column header

In the Items Header HTML section, add a <th> for Price. For example:

<th scope="col" style="text-align: right;">Unit Price</th>
<th scope="col" style="text-align: right;">Line Total</th>

Insert this alongside your existing header cells (Line, Part Number, Description, Qty, etc.).

Step 3 — Add the data cell in the item row

In the Item Row HTML section, inside the {{#orderLines}}...{{/orderLines}} block, add matching <td> cells:

<td valign="top" style="text-align: right;">{{unitPrice}}</td>
<td valign="top" style="text-align: right;">{{lineTotal}}</td>

Make sure the number of <td> cells matches the number of <th> cells in your header.

If your footer or lot/custom-field rows use a colspan attribute to span all columns, increment it to match your new column count.

Step 5 — Save and preview

Save the template and export a test Sales Order to confirm the price column appears correctly.


Order-level financial totals

For document-level totals (outside the {{#orderLines}} loop) use:

PlaceholderWhat it shows
{{orderSubtotal}}Sum of all line subtotals on this document
{{orderDiscount}}Total discount
{{orderTax}}Tax (Sales Orders only; 0 for Fulfillment Orders)
{{orderShipping}}Shipping (Sales Orders only; 0 for Fulfillment Orders)
{{orderGrandTotal}}Grand total (subtotal − discount + tax + shipping)

These also support .raw for unformatted values.


Finding the full placeholder list

In the template editor, use the Insert Placeholder button to browse the complete list of available placeholders grouped by category (Order Details, Order Lines Loop, Document Totals, etc.).