# Cancellations & Rescheduling

Allow customers to cancel or reschedule their appointments, and manage bookings from your admin.

## Customer Self-Service

Customers can manage their own bookings through links in the confirmation email:

* **Reschedule** — change appointment time (subject to availability and your policies)
* **Cancel** — cancel the appointment and receive a refund (subject to your policies)

### Enabling Self-Service

Customer cancellation and rescheduling is configured **per service**.

{% hint style="info" %}
Customer self-service cancellation and rescheduling is available on the **Pro** and **Premium** plans. See [Pricing](/get-started/about-sesami/pricing.md).
{% endhint %}

1. Go to **Sesami > Services** and open a service
2. Scroll to **Cancellation and Rescheduling**
3. Turn on the options you want:
   * **Allow customers to cancel their appointments**
   * **Allow customers to reschedule their appointments**
   * **Number of hours customers can manage their appointment before the start time** — the notice window (e.g., 24 hours)
   * **Automatically refund money on cancellation**
4. **Save**

Repeat for each service where you want to allow self-service.

{% hint style="info" %}
**Reschedule limit**: a customer can reschedule the same booking up to **6 times**. After that, only the cancel option is shown. If they need to reschedule again, an admin can reschedule on their behalf from the Sesami Calendar.
{% endhint %}

### How It Works for Customers

1. Customer receives booking confirmation email
2. Clicks **Reschedule** or **Cancel** link
3. For reschedule: selects a new available time
4. For cancel: confirms cancellation and sees refund eligibility
5. Receives confirmation email of the change

{% hint style="info" %}
You can enable rescheduling without enabling cancellation — customers can change their time but must contact you to cancel.
{% endhint %}

## Admin Management

Admins can manage any booking from the **Sesami Calendar** or **Upcoming Appointments**:

### Reschedule

1. Open the booking details
2. Click **Reschedule**
3. Select new date and time
4. Customer receives an updated confirmation email

### Reassign Resource

Change which resource is assigned to a booking (e.g., team member is sick):

1. Open the booking details
2. Click **Reassign** or **Change Resource**
3. Select a different available resource

{% hint style="info" %}
Customers are not automatically notified when a resource is reassigned. Contact them if the change is significant.
{% endhint %}

### Cancel

1. Open the booking details
2. Click **Cancel**
3. Choose **Full refund** or **No refund**
4. Confirm — refund is processed automatically (if enabled) or manually in Shopify

## Refund Handling

| Method        | How it works                                                                                                     |
| ------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Automatic** | Sesami creates the refund in Shopify when a booking is canceled. Shopify refunds to the original payment method. |
| **Manual**    | You go to **Shopify > Orders**, find the order, and process the refund yourself.                                 |

Choose automatic for efficiency or manual for more control. You can switch between them at any time.

## Group Appointment Cancellations

For [group bookings](/booking/booking-features/group-appointments.md), each participant is managed individually:

* Cancel or reschedule one participant without affecting others
* Canceled spots become available for new bookings
* To cancel an entire session, cancel each participant's booking

## Defining Your Policies

Set clear policies and communicate them on product pages, confirmation emails, and your terms of service:

* **Cancellation deadline** — how much notice is required (24h, 48h, etc.)
* **Refund rules** — full refund before deadline, no refund after
* **Rescheduling limits** — free rescheduling, or only within a deadline

{% hint style="success" %}
Offering rescheduling as an alternative to cancellation reduces lost bookings and keeps customers happy.
{% endhint %}

## Reducing No-Shows

* Require a [deposit](/payments/deposits.md) at booking
* Set a strict cancellation deadline
* Send reminders via [Sesami Flows](/automations/sesami-flows.md)
* Use a no-refund policy after the deadline

## Troubleshooting

<details>

<summary>Customer can't find reschedule/cancel links</summary>

* Verify self-service is enabled in Sesami Settings
* Check the confirmation email was delivered (check spam)
* Admin can reschedule/cancel on behalf of the customer

</details>

<details>

<summary>Refund not processing automatically</summary>

Check that the Shopify order exists and is paid. If automatic refund fails, process manually in **Shopify > Orders > \[order] > Refund**.

</details>

## Related

* [Group Appointments](/booking/booking-features/group-appointments.md) — managing group cancellations
* [Notification Emails](/notifications/notification-emails.md) — cancellation email templates
* [Deposits](/payments/deposits.md) — reduce no-shows with upfront payment


---

# 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.sesami.co/booking/booking-features/cancellations-rescheduling.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.
