Manage Discounts
Use the Manage Discounts screen to apply, update, or remove a discount for an appointment before you submit the Visit Took Place report.
The Doctor App opens this screen as a full-screen popup from the visit summary workflow.
The screen enforces discount rules, recalculates totals, and returns control to the visit summary after you confirm changes.
This page includes:
- A discount type selector with predefined values.
- An amount field that accepts numeric values in the appointment currency.
- Totals:
- Total: Net fee plus charges.
- Include discount: Total minus discount.
- Controls to Add discount, Update, and Remove.
- Validation that blocks confirmation when required values contain errors.
- Integration with the charges area in the visit summary.
Workflows
Add a Discount
- On the Appointment list screen, open an appointment.
- In the visit summary charges area, select Add Discount.
- In Type, select a discount type.
- In Amount, enter a numeric value in the appointment currency.
- Review totals:
- Total shows net fee plus charges.
- Include discount shows total minus discount.
- Select Add discount.
Edit or Remove a Discount
- In the charges area, select the discount entry.
- Update Type or Amount.
- Select Update to apply changes.
- Select Remove to clear the discount.
Validations
These scenarios describe validation on the Manage Discounts screen and the expected SDK result.
| Scenario | App Behavior | SDK Output | Example |
|---|---|---|---|
| The doctor selects Add discount with Type empty. | The app blocks submission and highlights the type selector. | Validation error in the update set; no change to discount fields. | — |
| The doctor enters a non-numeric value in Amount. | The app blocks submission and shows inline feedback for Amount. | Validation error that targets the amount field. | — |
| The doctor enters a value outside the allowed numeric range for Amount. | The app blocks submission and keeps the popup open. | Validation error in the update set; totals remain unchanged. | — |
| Authorization denies the discount operation. | The app blocks the action and shows an error message. | Error in the update set or server response; no change to discount fields. | — |
Actions
These scenarios describe app behavior for key actions and the expected SDK result.
Endpoint Resources
Present Discount
PUT
/profile/appointments/{appointment-id}/summary/discount
Produces the Manage Discounts popup for the specified appointment.
The response body includes:
- Discount type selector.
- Amount input.
- Total and final fee values.
- Action buttons for add, update, and remove.
UI Element Types
| Level | Reference | Type | Value | Placement |
|---|---|---|---|---|
| 1 | — | Edit | The header text and close button is the parts of Cover | 1 |
| 1 | discount-type | Combo | Type | 1 |
| 1 | discount-amount | Double | Amount | 1 |
| 1 | discount-total-title | Regular | Total | |
| 1 | discount-total-spacer | Spacer | ~ | |
| 1 | discount-total-amount | Regular | appointment net fee + extra charges in appointment's currency | ~ |
| 1 | include-discount-title | Regular | Include discount | |
| 1 | include-discount-spacer | Spacer | ~ | |
| 1 | include-discount-amount | Regular | appointment net fee + extra charges - discount in appointment's currency | ~ |
| 1 | create | Button | Add discount | 1 |
| 1 | update | Button | Update | 1 |
| 1 | rem |
Add Discount
PATCH
/profile/appointments/{appointment-id}/summary/discount
Returns an update set that adds a discount to the appointment summary.
Update Discount
PATCH
/profile/appointments/{appointment-id}/summary/discount/update
Returns an update set that updates discount values for the appointment.
Patch Discount
PATCH
/profile/appointments/{appointment-id}/summary/discount/patch
Returns an update set that patches discount fields for the appointment.
Delete Discount
PATCH
/profile/appointments/{appointment-id}/summary/discount/delete
Returns an update set that removes the discount from the appointment summary.


