Overview

Luminous cost rules for production runs support Custom Field conditions. A rule with a custom-field condition fires only when the production run carries a matching value for that field — for example, "two-sided = true" or "color count between 3 and 5". This lets you model co-manufacturer pricing grids that vary by job attribute without manual fee entry.

Both rule output types are supported:

  • Manufacturing Service Fee (Unit Cost) rules — set the per-unit service fee on each work order.
  • Extra Cost rules — add a separate cost line to the production run (e.g., a setup surcharge).

Before you begin

  • The Cost Rules feature must be enabled for your tenant.
  • The custom fields you want to condition on must already exist under Settings → Custom Fields with the object type set to Production Run.
  • The field labels you use in the rule must match the labels defined in Settings exactly (case-sensitive). The rule editor validates this at save time and will show an error if the label is not found.

Steps

1. Open the cost rule form

Navigate to Inventory → Inventory Admin → Cost Rules and click Create Cost Rule (or open an existing rule to edit it).

2. Set the document type to Production Run

In the Document Type field, select Production Run.

  • For a manufacturing service fee rule, keep the toggle at the top of the form set to Adjust unit cost.
  • For a surcharge line on the run, select Add extra cost line at the top of the form and configure the cost basis and allocation method.

3. Add a Custom Field condition

In the Conditions — when this rule fires section (shown when Document Type is Production Run), click Add condition, choose Custom field, and set:

FieldWhat to enter
Condition typeCustom Field
FieldPick the production run custom field from the dropdown (e.g., Two Sided, Front Color Bucket)
OperatorChoose how the value is matched (see table below)
ValuesThe value(s) to match against

Available operators

OperatorUse when…
Is any ofThe field value equals any one of the listed values (exact match)
Is not any ofThe field value does not equal any of the listed values
Is betweenThe field value (numeric) falls within a min–max range (inclusive)
Is at least (≥)The field value (numeric) is greater than or equal to the threshold
Is at most (≤)The field value (numeric) is less than or equal to the threshold

You can add multiple Custom Field conditions to the same rule (one per field label). All conditions are ANDed together — the rule fires only when every condition is satisfied.

4. (Optional) Set the tier quantity basis

For Unit Cost rules with tiers, you can choose how the tier quantity is determined:

  • Line quantity (default) — each work order's own planned quantity determines its tier.
  • Production run total — the tier is looked up using the sum of planned quantities across all work orders in the run. Use this when your co-manufacturer quotes a single tiered price for the whole batch rather than per SKU.

Set this in the Tier quantity based on dropdown.

5. Configure tiers and effects as usual

Add price tiers (min/max quantity, unit price effect) the same way you would for any cost rule.

6. Save and verify

Save the rule. Luminous validates that each custom field label exists on production runs and will show an error if any label is not found.

To verify: create or update a production run that carries the matching custom field values. The manufacturing service fee or extra-cost line should appear automatically. If no fee appears and the rule looks correct, check:

  • The production run is not in a Completed or Cancelled state (rules skip terminal runs).
  • The production run has a vendor set (required for MSF rules).
  • The custom field values on the run match the condition exactly.

Troubleshooting

The rule never fires even though the custom field is set.

  • Confirm the field label in the rule matches the label under Settings → Custom Fields exactly.
  • Confirm the field is attached to the Production Run object type.
  • Check that the production run's vendor matches any Supplier condition on the rule.
  • Boolean fields: use true/false as values. Numeric fields: use numbers (no quotes).

A numeric BETWEEN condition doesn't match.

  • Both values[0] (min) and values[1] (max) must be provided; the range is inclusive.
  • Confirm the custom field on the run is stored as a number, not a text string like "5 colors".

Related articles