# Coupons

Our integration with Stripe allows you to offer flexible coupon options. When the "Allow Coupons" setting is enabled, guests will be able to use promo codes to get discounts on paid events.

**Note**: Currently all coupons and promo codes are managed within Stripe. For more information about how coupons and promo codes work, see the [official Stripe documentation](https://docs.stripe.com/billing/subscriptions/coupons)

## Creating Coupons for Bookings

#### Prerequisites

* A connected Stripe account
* Access to the Stripe Dashboard

#### Steps to Create Coupons

1. **Create a Coupon in Stripe**
   * Log into your Stripe Dashboard and navigate to Coupons: <https://dashboard.stripe.com/coupons>
   * Click "Create Coupon"
   * Set your discount type (percentage or fixed amount)
   * Configure coupon duration (one-time, multiple months, forever)<br>

     <figure><img src="/files/FWimd85BvWHmRrlRXdqd" alt=""><figcaption></figcaption></figure>
2. **Allow coupons in zcal**\
   Create a new invite or edit an existing invite. Toggle both the "Accept Payments" and "Allow coupons" settings to enabled.
3. **Restrict coupon to a specific invite (Optional)**\
   You can restrict coupons to work only with specific invite links by linking them to Stripe products. This requires configuration in both Stripe and zcal.
   * In Stripe, create a product to represent the set of invite links you want the coupon to work with.
   * In the Stripe, edit your coupon and turn on the "Apply to specific products" option. This can be used to ensure your coupon is only used for a specific invite link. Select any relevant products from the dropdown.
   * In zcal, select the same product when configuring the payment settings for a particular booking link. This will ensure the coupon can only be used for this booking link.<br>

     <figure><img src="/files/2z4jEv1hn76v7khqsP9T" alt=""><figcaption></figcaption></figure>
4. **Generate Promotion Codes**\
   After the coupon is created, you can use it to generate "promotion codes" within Stripe. These promotion codes are the codes that should be shared with your clients - they are used to redeem the discount.

   * From the coupon details page, click "Add a promotion code"<br>

     <figure><img src="/files/tFAlEWiibe5dgX47Qgsx" alt=""><figcaption></figcaption></figure>
   * Create a user-friendly code and configure any settings you wish for the promo code

   <div align="center"><figure><img src="/files/fHa7Re04Eyh7Sbgpqer1" alt="" width="457"><figcaption></figcaption></figure></div>
5. **Testing the promo code**

   Once the invite link is set up in zcal with both the "Accept Payments" and "Allow coupons" settings enabled, you can open the invite link to test the promo code. When you get to the Stripe checkout page, you should be able to add the promo code and see it getting applied.<br>

   <figure><img src="/files/wGEqxTl4M7pEmfsAqwEh" alt=""><figcaption></figcaption></figure>

## <br>


---

# 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://help.zcal.co/integrations/stripe/coupons.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.
