Discounts and Promotions
Use the Discounts and Promotions screen to enter, validate, and apply promo codes during appointment booking.
This screen appears in the booking flow on the payment or summary step and controls discount visibility, fee calculation, and payment requirements.
Promo code availability
The promo code field appears only when the appointment configuration allows promo codes for the current user and payment type.
This screen includes
- A promo code field that appears only when configuration rules allow it.
- A continue control that activates after at least one character is entered.
- A charges section that displays the base fee, discount adjustments, total, and disclaimers.
- A remove action that deletes an applied code and restores the base fee.
- Error messaging that appears when validation fails.
- A currency conversion line that appears when the display currency differs from the appointment currency.
- Navigation logic that skips payment collection when the total equals zero.
Workflow
This sequence describes how a user applies a promo code during booking.
- Enter a promo code.
- The continue control activates after one character is entered.
- Submit the code for validation.
- When the code is invalid, the screen displays an error message.
- When the code is valid but not fully calculable, the screen displays a confirmation message that indicates final calculation occurs later.
- Review the updated fee, discount, and total when calculation succeeds.
- Remove the code when needed to restore the base fee.
- Continue the booking flow.
- When the total equals zero, the app does not request payment instruments and displays a disclaimer about potential additional charges.
Validations
These rules ensure accurate fee calculation and prevent invalid discounts.
| Scenario | App behavior |
|---|---|
| Promo code field is empty. | Keeps the continue control inactive. |
| Promo code is invalid. | Displays an inline error message. |
| Discount exceeds the base appointment fee. | Caps the discount at the base fee. |
| Calculated total becomes negative. | Sets the total to zero. |
| Discount equals 100 percent and is uncapped. | Skips payment instrument collection. |
| Display currency differs from appointment currency. | Displays a currency conversion line. |
Actions
Discount application follows appointment and promo configuration rules.
| Scenario | App behavior |
|---|---|
| Promo code submission succeeds. | Calculates the discount using active promo definitions. |
| Discount applies. | Applies the discount only to the base appointment fee. |
| Appointment details change. | Recalculates percentage-based discounts and preserves fixed discounts when removal occurs. |
| Promo code remains applied. | Displays the discount as an adjustment line in invoices. |
| Admin user reviews charges. | Allows access to the promo definition from the charges section. |
| Finance user reviews promo data. | Displays promo definitions in read-only mode. |
Endpoint Resources
🧰 Endpoint Resources under construction