# Discount Header

Applies an order-level discount (as opposed to per-line discounts in Order Lines). Supports both percentage and dollar amount with bidirectional toggle, validation against the subtotal, and an optional PIN-override flow for read-only contexts where only managers can apply discounts.

## Available in

* Order Form modules **only**

## When to use

* Order Form pages where the cashier or sales rep applies an order-wide promotional, employee, or loyalty discount.
* POS workflows that need PIN-gated discount authorisation.
* Anywhere you want a single visible discount control on the order header.

For per-line discounts, use the per-line Discounts setting on **Order Lines** instead.

## Settings

| Setting       | Description                                                                                                             |
| ------------- | ----------------------------------------------------------------------------------------------------------------------- |
| **Configure** | Opens the configuration modal — title, percentage/dollar toggles, default amount, override behaviour, authorised users. |

The configuration modal supports:

* **Title** — heading text. Default: *Discount*.
* **Enable Percentage** — allow percentage-based discounts. Default: Yes.
* **Enable Dollar** — allow flat-dollar discounts. Default: Yes.
* **Discount Item ID** — the NetSuite discount item used to apply the discount.
* **Read Only** — render as read-only, with override button to unlock. Default: No.
* **Default Amount** — pre-fill value. Auto-detects format: `10%` (percentage) or `10` (dollar).
* **Enable Override** — when read-only mode is on, show an override button.
* **Override Button Text** — custom text. Default: *Request Manager Override*.
* **Authorized Users** — list of users authorised to enter the override PIN.

## PIN override — two parts to configure

PIN-gated discounts require setup in two places. The Client Admin sets up the component; a NetSuite Admin sets up the actual PIN values on user records.

| Part                                                        | Where                                                                         | Who                |
| ----------------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------ |
| Turn on *Read Only* and *Enable Override* on this component | Page Builder → Discount Header → Configure                                    | **Client Admin**   |
| Add users to *Authorized Users* list on this component      | Same — Configure modal                                                        | **Client Admin**   |
| Set each manager's PIN value on their NetSuite record       | NetSuite user record → *PIN Code* field (`custentity_brm_pincode` by default) | **NetSuite Admin** |

If the override button appears but PIN entry always fails, the most likely cause is that the manager's PIN hasn't been set on their NetSuite record. See [PIN Override](/client-admin-guide/workflow-builder-overview/pin-override.md).

## How it works

1. Renders the discount input(s) for percentage and/or dollar — the user picks one.
2. Bidirectional toggle: switching from % to $ recalculates the equivalent and vice versa.
3. Validation prevents discounts that exceed the subtotal.
4. In **read-only mode**, the input is locked. A click on the override button opens a PIN pad.
5. PIN is validated against the configured Authorized Users list — each authorized user's PIN is stored on their NetSuite employee record.
6. Successful PIN entry unlocks the discount input for that session.
7. Input is debounced (300ms) to avoid excessive recalcs as the user types.
8. Discount flows into **Summary's** discount line — the order total updates in real time.

{% hint style="info" %}
Use **Default Amount** to pre-fill a common discount (e.g. `5%` for an employee rate). The user can change it inline if allowed, or override via PIN if locked.
{% endhint %}

## Examples

**Cashier with employee discount.** Discount Header with Default Amount = `10%`, Read Only = No. Cashier applies the standard employee rate.

**Promotional dollar-off.** Discount Header with Enable Percentage = No, Enable Dollar = Yes, Default Amount = `25`. Limits the input to dollar values only.

**PIN-gated manager discount.** Discount Header with Read Only = Yes, Enable Override = Yes, Authorized Users = \[list of managers]. Cashier sees the field but needs a manager PIN to enter a value.

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Summary</strong></td><td>Where the applied discount appears in the totals.</td><td><a href="/pages/kclyuiviMjm8L7MhEpoq">/pages/kclyuiviMjm8L7MhEpoq</a></td></tr><tr><td><strong>PIN Pad</strong></td><td>The PIN entry block used in override flows.</td><td><a href="/pages/gDdGC4CKyI44d6fINGo5">/pages/gDdGC4CKyI44d6fINGo5</a></td></tr><tr><td><strong>PIN Override</strong></td><td>The full PIN-protection model.</td><td><a href="/pages/ZB1p1C3xoZi8Tr9w4b1S">/pages/ZB1p1C3xoZi8Tr9w4b1S</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.in8sync.com/client-admin-guide/active-workflows/getting-started/transaction-components/discount-header.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
