> For the complete documentation index, see [llms.txt](https://kb.logicerp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kb.logicerp.com/logic-erp-learning-hub-tutorials-and-best-practices/billing/setup-appointments/packages/value-packages-and-discount-coupons.md).

# Value Packages and Discount Coupons

**Available on:** Desktop · Web · Phone

A **value based package** is an amount the client spends on any services — for example, pay ₹10,000 and get ₹1,000 free, so ₹11,000 to spend. Services are paid for from it by adding them to the package. Any amount the client will not use can be turned into a **discount coupon**.

Value based packages are set up in **Setup Package** and sold in **Customer Packages**.

## Using a value package when booking

When you add a service from the services list in **Create Appointment** for a client who has a value package with money left, you are asked *"Pending Value Based Packages exist.. Add Service to existing Package..."*. Choose **No** to book the service the normal way, without the package. Choose **Yes** to pay for it from the package:

1. Pick the stylist. The **Add Service to Value Package** window opens.
2. **Service to add** shows the service and its price. The list shows only the client's value packages that still have money pending (expired ones are hidden when **Hide Expired Packages** is on) — **Package ID**, **Package Name**, **Basic Value**, **Scheme Value**, **Total Value**, **In Use**, **Pending** and **Expiry**.
3. Pick the package and click **Add Service**. You are asked *"Add … ( … ) to Package ID: …"*, with the service, its price and the package filled in — choose **Yes**. The price is the chosen stylist's rate for the service, or the service's normal rate if the stylist has none. It is added to the package's **In Use** amount and taken off **Pending**.
4. Create Appointment switches to the client's **Packages** list, where the service now appears. Pick it, click **Add Service**, and choose the stylist and time to book it.

**If the service costs more than what is pending:** with **Do Not add service in Package if service amount > package pending amount** ticked in Configuration, it is refused (*"Cannot continue...Pending Package Amount is : … and Service Cost is …"*). Otherwise you are asked *"Pending Package Amount is : … and Service Cost is …. Add Service?"* (No is the default). If you choose **Yes**, the full price is added to **In Use** and the extra over the pending amount is left to be billed.

**Remove from Package** in Create Appointment takes a service that has not been booked yet back out of a value package, and its price goes back to **Pending**. You are asked *"Remove … from …"*, with the service and the package filled in. A service already booked cannot be removed (*"This service is in use... Cannot allow deletion."*), and only value packages allow this.

> **Example.** Meena paid ₹10,000 for a value package with ₹1,000 free — ₹11,000 in all. She wants a facial; Anita's rate for it is ₹2,500. Add the facial, answer **Yes**, pick Anita, pick Meena's package in **Add Service to Value Package**, click **Add Service** and answer **Yes**. Her package now shows ₹2,500 **In Use** and ₹8,500 **Pending**. In the **Packages** list, pick the facial and **Add Service** to book it.

## Discount coupons

A client who will not use what is left on a value package can have it turned into a **discount coupon** — a coupon for that amount, which can be used later.

In Configuration, tick **Allow Discount Coupon Creation for pending package amount** and set the **Coupon Prefix**, **Coupon Expire Days** and **Max Pending Amount**. **Max Pending Amount** is the largest coupon allowed — a larger amount is refused with *"Coupon Amount can not be greater than …"*. Left at 0, it refuses every coupon.

Select the package and click **Discount Coupon** (shown only when coupon creation is turned on), in **Customer Packages** or in **Add Service to Value Package**. From **Customer Packages**, the package must have been paid for (*"Direct Payment against Package not done... Cannot continue..."*), must have money pending (*"No Pending amount in this package... Cannot continue..."*) and must be value based (*"Package should be value based... Cannot continue..."*).

The **Create Discount Coupon** window shows the **Package**, the **Package Amount** (total value, including the free part), the **Amount Used**, the **Coupon Amount** (Package Amount minus Amount Used), the **Expire Date** (today plus Coupon Expire Days) and the **Customer Name**.

Click **Create Coupon** and answer **Yes** to *"Are you sure to create discount coupon"*. You see *"… Coupon Created Successfully"*, starting with the coupon's barcode, and the **Coupon Barcode** box shows the code. The package is marked fully used — **In Use** becomes its full value and **Pending** becomes 0.

With **Link With Customer** ticked, the client's membership series and number are recorded on the coupon.

> **Example.** Meena is moving abroad with ₹1,200 left on her value package. With **Coupon Prefix** *GV*, **Coupon Expire Days** *90* and **Max Pending Amount** *5000*, select her package, click **Discount Coupon** and **Create Coupon**, and answer **Yes**: she gets a ₹1,200 coupon numbered with the next *GV* number, with a barcode starting *GV*, valid for 90 days from today. Her package now shows nothing pending.

## On the web

Both windows are also available on the web.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://kb.logicerp.com/logic-erp-learning-hub-tutorials-and-best-practices/billing/setup-appointments/packages/value-packages-and-discount-coupons.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
