Order Cancellation
The order cancellation flow sends a WhatsApp notification when an order is cancelled, so the customer is informed promptly and given the reason.
Trigger
Section titled “Trigger”When an order is cancelled in Shopify — from the admin, the API, or a customer
action — Shopify fires the orders/cancelled webhook. WhatPro then:
- Cleans up any pending confirmation message for the order. If a delayed payment-confirmation or review-request message was still queued, it is cancelled so the customer is not asked to confirm or review an order they no longer have.
- Sends the order cancellation notification, provided an enabled cancellation flow exists and the order has a usable phone number.
Customer-initiated cancellations
Section titled “Customer-initiated cancellations”If the customer cancels through a WhatsApp button on a confirmation message, they already receive that button’s own follow-up reply. To avoid a duplicate message, WhatPro detects this case and does not also send the cancellation template. Merchant-initiated cancellations from the Shopify admin always send the template normally.
Plan availability
Section titled “Plan availability”The order cancellation flow is available on Growth and Plus. Starter and Basic do not include it. See Plans.
Variables
Section titled “Variables”| Variable | Description |
|---|---|
customer_first_name | Customer’s first name; falls back to a generic greeting when unknown. |
order_number | The order name (for example #1001). |
cancel_reason | A human-readable cancellation reason, localized to the flow’s language. |
total_price | The order total with currency. |
order_total | Legacy alias for total_price. |
order_items | A formatted list of the order’s line items. |
shipping_address | The order’s formatted shipping address. |
Cancellation reasons
Section titled “Cancellation reasons”The cancel_reason value is derived from Shopify’s cancellation reason and
rendered in the flow’s language. WhatPro provides default labels for Shopify’s
standard reasons:
| Shopify reason | Default label |
|---|---|
| Customer | Customer changed or canceled order |
| Declined | Payment declined |
| Fraud | Fraudulent order |
| Inventory | Items unavailable |
| Staff | Staff error |
| Other | Other |
You can override the label for each reason in the cancellation flow’s editor. Arabic-language flows render the Arabic equivalents.
The order cancellation flow uses the flow’s own order-tag templates rather than the lifecycle order-tagging system used by the payment confirmation flows. When a cancellation is processed, WhatPro also strips the “awaiting send” lifecycle tag from the order, since any pending confirmation send for it has been cancelled. See Order tags.
- Confirm your plan is Growth or Plus. See Plans.
- In Flows, create or enable the Order cancellation flow.
- Optionally edit the cancellation reason labels and the message body.
- Wait for the template to be Approved by Meta before it can send. See Flows overview.