> For the complete documentation index, see [llms.txt](https://docs.xorosoft.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xorosoft.com/xoroerp-1/admin/item/rebates-and-promotions/creating-a-rebate.md).

# Creating a Rebate

### Working with Rebates and Promotions

Once you understand the purpose of rebates and promotions, the next step is configuring them to match your business agreements. Whether you are offering promotional discounts to customers, tracking manufacturer-funded incentives, or managing vendor rebate programs, every rebate follows the same fundamental process:

1. Create the rebate.
2. Define how the rebate should be calculated.
3. Specify who or what qualifies for the rebate.
4. Activate the rebate.
5. Allow XoroERP to automatically evaluate and apply the rebate whenever qualifying transactions are created.

This article explains each step in detail and highlights the important concepts to understand before creating your first rebate.

***

**Before You Begin**

Before creating a rebate, it is important to identify the business objective you are trying to achieve.

Ask yourself the following questions:

* Should the customer receive the benefit immediately, or should it accumulate for settlement later?
* Is the rebate applicable to every customer or only specific customers?
* Should the rebate apply only to selected products?
* Is the rebate valid only during a promotional period?
* Can multiple rebates apply simultaneously, or should only one be selected?

Answering these questions beforehand makes configuring rebates much simpler and helps avoid conflicting rebate rules.

***

### Creating a Rebate

To create a rebate:

1. Navigate to **Menu → Admin → Rebates and Promotions**.
2. Click **New**.
3. Complete the **Rebate Details** section.
4. Configure one or more **Rule Groups**.
5. Save the rebate.

Although creating a rebate only takes a few minutes, understanding each section ensures the rebate behaves exactly as intended.

***

### Step 1 – Configure the Rebate Details

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2F0BnbvbaSv88yz6pqZxI2%2Fimage.png?alt=media&amp;token=2443bea5-c9d1-4d0d-a0d1-5895cd28ed46" alt=""><figcaption></figcaption></figure>

The **Rebate Details** section defines the overall behavior of the rebate. Think of it as answering the question:

> **"What kind of rebate is this?"**

***

#### Rebate or Promotion Name

Provide a meaningful name that clearly identifies the purpose of the rebate.

Good examples include:

* Summer Promotion 2026
* Vendor Volume Incentive
* Customer Loyalty Rebate
* Back-to-School Promotion

Using descriptive names makes future maintenance much easier, especially when multiple rebates are active simultaneously.

***

#### Choosing the Rebate Type

One of the most important decisions when configuring a rebate is selecting the **Rebate Type**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2F6S9QnyWGxfWiF6r6PX2g%2Fimage.png?alt=media&amp;token=b40e903c-a494-4f63-a0e9-31c2f0151f2d" alt=""><figcaption></figcaption></figure>

**Accrual**

Choose **Accrual** when the customer earns rebate value that will be settled later.

Instead of reducing today's invoice, XoroERP records the earned rebate so it can later be redeemed as a Customer Credit or settled according to your organization's rebate agreement.

Typical examples include:

* Annual customer incentive programs
* Manufacturer rebate programs
* Volume-based rebate agreements
* Quarterly rebate settlements

***

**Off Invoice**

Choose **Off Invoice** when the rebate should immediately reduce the transaction amount.

The customer sees the reduced price directly on the Sales Order, Invoice, or Sales Receipt.

Typical examples include:

* Promotional discounts
* Seasonal offers
* Flash sales
* Marketing campaigns

**Tip**

If the customer should pay less today, choose **Off Invoice**.

If the customer earns value to redeem later, choose **Accrual**.

***

#### Selecting the Rebate Value Type

The **Rebate Value Type** determines how the rebate amount is calculated.

**Fixed Amount ($)**

Select **Fixed Amount ($)** when the rebate should apply as a **fixed monetary value per eligible unit** rather than as a percentage.

Unlike a one-time rebate applied to the entire transaction, a Fixed Amount rebate is calculated **for each qualifying unit** on the transaction line. The total rebate is determined by multiplying the configured fixed amount by the **eligible quantity**.

**Example**

* Fixed Amount Rebate: **$5 per unit**
* Eligible Quantity: **10 units**

**Total Rebate = $5 × 10 = $50**

This calculation is automatically performed by XoroERP based on the quantity that qualifies for the rebate. If only a portion of the quantity is invoiced, the rebate is recalculated using the **actual invoiced quantity** to ensure the rebate amount accurately reflects the transaction.

***

**Percentage (%)**

Calculates the rebate as a percentage of the Item Unit Cost.

Example:

Item Cost = $500

Rebate = 10%

Calculated Rebate = $50

Percentage rebates are ideal when rebate values should increase or decrease proportionally with product prices.

***

**Custom**

Choose **Custom** when the rebate depends on multiple business conditions.

This enables **Rule Groups**, allowing you to define complex rebate logic based on customers, products, vendors, quantities, locations, dates, and other qualifying criteria.

Most enterprise rebate programs use Custom rules because they provide the greatest flexibility.

***

#### Priority

It is common for more than one rebate to qualify for the same transaction.

Priority determines which rebate should be evaluated first whenever overlapping rebates exist.

For example:

A customer qualifies for:

* Summer Promotion
* VIP Customer Rebate
* Manufacturer Incentive

Rather than leaving the decision to chance, Priority allows your organization to control which rebate takes precedence.

If your organization does not expect overlapping rebates, this field can safely be left blank.

#### App Configuration for Priority: Item Rebate Multiple Match Selection

When multiple rebates qualify for the same sales transaction, the **Item Rebate Multiple Match Selection** App Configuration determines how XoroERP selects and applies the rebate(s).

**Navigation**

**Menu → Configuration → App Config → Sales → Item Rebate Multiple Match Selection**

This setting works together with the **Priority** field configured on each rebate:

* **Priority** determines the order in which qualifying rebates are evaluated.
* **Item Rebate Multiple Match Selection** determines which rebate(s) are ultimately applied once all qualifying rebates have been identified.

***

**Available Options**

| **Option**                    | **Description**                                                                                                                                                                                                                         |
| ----------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **First Matching Rebate**     | Applies the first qualifying rebate based on its configured **Priority**. Once a qualifying rebate is found, the remaining rebates are ignored. Best suited for mutually exclusive rebate programs.                                     |
| **Lowest Calculated Rebate**  | Calculates all qualifying rebates and applies the one with the **lowest rebate value**, regardless of evaluation order. Useful when business rules require the minimum eligible rebate to be applied.                                   |
| **Highest Calculated Rebate** | Calculates all qualifying rebates and applies the one with the **highest rebate value**, ensuring the customer receives the greatest eligible benefit.                                                                                  |
| **All Qualifying Rebates**    | Applies every qualifying rebate independently. Each rebate is calculated using the original transaction amount, so rebate values do **not** compound. This option is ideal when multiple rebate programs are intended to work together. |

***

**How Priority Works with This Setting**

Consider the following qualifying rebates for a Sales Order line:

| **Rebate**       | **Priority** | **Calculated Rebate** |
| ---------------- | :----------: | --------------------: |
| Summer Promotion |       1      |                   $20 |
| Customer Loyalty |       2      |                   $15 |
| Vendor Incentive |       3      |                   $10 |

Depending on the selected App Configuration:

* **First Matching Rebate** → **Summer Promotion ($20)** is applied because it is the qualifying priority.
* **Lowest Calculated Rebate** → **Vendor Incentive ($10)** is applied because it has the lowest calculated value.
* **Highest Calculated Rebate** → **Summer Promotion ($20)** is applied because it has the highest calculated value.
* **All Qualifying Rebates** → All three rebates are applied independently, resulting in a total rebate of **$45**.

{% hint style="info" %}
The **Priority** field only affects the evaluation order of qualifying rebates. The final rebate selection depends on the option chosen in the **Item Rebate Multiple Match Selection** App Configuration.
{% endhint %}

***

#### Revenue / Income Account

This General Ledger account records rebate-related revenue or income whenever the rebate treatment requires financial postings.

Selecting the appropriate account ensures rebate transactions are reflected correctly in financial reports.

Organizations should work with their accounting team to determine the appropriate account structure.

***

#### Post to General Ledger

For **Accrual** rebates, enabling this option instructs XoroERP to automatically create the required accounting entries whenever rebate value is earned.

This removes the need for manual journal entries and ensures rebate liabilities remain synchronized with operational transactions.

For **Off Invoice** rebates, General Ledger posting is always handled through the originating sales document.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FOevj3l4A5itkMj6RRwn4%2Fimage.png?alt=media&amp;token=9df8e5c4-c873-4e47-8412-61eb5e09577d" alt=""><figcaption></figcaption></figure>

***

#### Vendor Billback

Vendor Billback allows organizations to recover rebate costs from suppliers or manufacturers that sponsor promotional programs.

In many businesses, the rebate offered to a customer is not funded by the business itself. Instead, the supplier agrees to reimburse the rebate amount after qualifying sales have been completed. Rather than manually tracking these reimbursements, XoroERP records eligible rebate transactions and allows them to be converted into Vendor Credits.

It is important to understand that **Vendor Billback and Customer Rebates are two separate processes**.

* **Customer Rebates** determine how and when the customer receives the rebate benefit.
* **Vendor Billback** determines how your organization recovers that rebate cost from the supplier.

Enabling Vendor Billback does **not** affect how the rebate is applied to the customer. Instead, it creates a financial trail that allows the rebate amount to be claimed from the vendor at a later stage.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FLHzgervDwBdpfWXqMtvK%2Fimage.png?alt=media&amp;token=ae524bb6-5cc6-41c3-afee-6a6fdbeebe32" alt=""><figcaption></figcaption></figure>

A single rebate can be claimed as multiple partial Vendor Credits, up to the remaining billback balance, allowing reimbursements to be received over time. **XoroERP automatically tracks the remaining billback balance and prevents the total claimed amount from exceeding the eligible rebate value, ensuring the same rebate cannot be over-claimed or reimbursed more than once.**

***

#### Include in Discount Calculation

Some organizations calculate additional discounts after rebates have been applied.

**Enabling this option allows the rebate value to participate in those calculations.**

Leave the option disabled if rebates should not affect discount calculations.

***

#### Include in Tax Calculation

Different tax jurisdictions treat rebates differently.

**When enabled, the rebate amount is considered during tax calculations, allowing tax to be calculated using the rebate-adjusted transaction value.**

Organizations should configure this option according to their accounting and tax policies.

***

### Step 2 – Build Rule Groups

Once the rebate behavior has been defined, the next step is determining **who qualifies**.

This is accomplished using **Rule Groups**.

A Rule Group represents one complete business rule.

For example:

> Customers in Canada purchasing Product A during July receive a 10% rebate.

Everything required to describe that rule belongs inside one Rule Group.

***

#### Understanding Rule Groups

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FiE6j9rM46ijj0WbRFuTz%2Fimage.png?alt=media&amp;token=51bf9eae-5717-4b65-9fe7-fb8622cdf24f" alt=""><figcaption></figcaption></figure>

Each Rule Group contains one or more conditions.

Every condition consists of:

* **Field**
* **Operator**
* **Value**

For example:

| Field            | Operator | Value           |
| ---------------- | -------- | --------------- |
| Customer         | In       | ABC Corporation |
| Country          | In       | Canada          |
| Item Category    | In       | Electronics     |
| Minimum Quantity | ≥        | 10              |

Only when **every condition** is satisfied does the rebate qualify.

Think of a Rule Group as a checklist.

If even one requirement fails, the rebate is not applied.

***

#### Choosing the Right Criteria

Rather than creating separate rebates for every situation, XoroERP allows multiple criteria to be combined within the same Rule Group.

Some of the most commonly used criteria include:

**Customer-Based Criteria**

Use these when rebates should apply only to specific customers or customer segments.

Examples:

* Customer
* Customer Tag

***

**Product-Based Criteria**

Limit rebates to selected inventory items or product classifications.

Examples:

* Item
* Item Group
* Product Category
* Brand
* Season

***

**Vendor-Based Criteria**

Useful for supplier-funded promotions.

Examples:

* Vendor
* Vendor Group
* Vendor Tags
* Item Default Vendor

***

**Geographic Criteria**

Restrict promotions to specific locations.

Examples:

* Country
* State / Province
* Ship-To Name

***

**Quantity Criteria**

Reward customers based on purchase volume.

Examples:

* Minimum Quantity
* Maximum Quantity

***

**Date Criteria**

Control promotional periods. The rebate only qualifies within the configured date range

Specify:

* Start Date
* End Date

The rebate automatically becomes active and inactive according to the configured dates.

***

#### Understanding Operators, IN and NOT IN

Every criterion supports **IN** and **NOT IN** operators.

#### IN

Includes the selected values.

Example:

Customer IN

ABC

XYZ

PQR

Any of these customers qualifies.

***

#### NOT IN

Excludes selected values.

Example:

Customer NOT IN

ABC

XYZ

Every customer except ABC and XYZ qualifies.

These operators allow powerful business rules to be built without creating numerous individual rebates.

***

### Important Things to Remember

Before activating a rebate, keep the following in mind:

* Choose **Accrual** when rebates will be redeemed later.
* Choose **Off Invoice** when customers should receive the benefit immediately.
* Use descriptive rebate names so administrators can easily identify promotions.
* Keep Rule Groups focused on one business objective.
* Use Customer Tags, Item Groups, and Vendor Groups whenever possible instead of creating individual rules for every record.
* Define Start and End Dates for temporary promotions to prevent manual activation and deactivation.
* Configure Priority only when multiple rebates may qualify simultaneously.
* Verify the Revenue / Income Account before enabling General Ledger postings.
* Test new rebates using sample transactions before releasing them to production.

***

### Best Practices

To keep rebate management simple and maintainable:

* Create one rebate for one business purpose.
* Use multiple Rule Groups instead of creating duplicate rebates whenever different customer groups qualify for the same promotion.
* Review active rebates periodically and deactivate promotions that have expired.
* Avoid unnecessary overlapping rebate programs unless your business intentionally supports multiple qualifying rebates.
* Clearly document the business purpose of every rebate so future administrators can understand why it was created.

Following these practices will help ensure your rebate programs remain accurate, scalable, and easy to manage as your organization grows.

### Frequently Asked Questions

\
**What is the difference between Accrual and Off-Invoice?**\
Accrual creates a rebate that can be used later. Off-Invoice reduces the customer's transaction amount immediately.

\
**Why can't I turn off Post to General Ledger for an Off-Invoice rebate?**\
Because Off-Invoice directly changes the Invoice/Sales Receipt amount and participates in source-document accounting.

\
**Can multiple rebates apply to one item?**\
Yes. Multiple rebates can apply to the same transaction line.

\
**Do multiple rebates compound?**\
No. Each qualifying rebate is calculated independently from the same pre-rebate base.

\
**Can an Off-Invoice rebate be applied again through Apply Customer Rebates?**\
No. Off-Invoice is already applied through the source document and does not enter the customer rebate balance.

\
**Can an Accrual rebate be converted into a Customer Credit?**\
Yes, when it is an eligible GL-enabled Accrual.

\
**Can a rebate be claimed from the vendor?**\
Yes, when Vendor Billback is enabled and the required Expense Account is configured.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.xorosoft.com/xoroerp-1/admin/item/rebates-and-promotions/creating-a-rebate.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
