Features
Review requests
Asking for a review a set number of days after delivery.
A few days after an order is delivered, the customer gets one message asking what they thought, with a link to the review form. Use it when you have delivered orders and no reviews. The gap is almost always that nobody asked at the moment the customer had an opinion.
What has to be true first
- A registered number
- As with every event.
- The review_request template approved
- Meta template name
review_request, category MARKETING. - The review_request event switched on
- Off by default in the event catalog.
- The feature switched on
- WooCommerce:
review_enabled, default off, labelled Review requests with the checkbox text "Ask for a review after delivery". Shopify: Review requests on the Features tab, default off. - Delivery actually being recorded
- The request is scheduled off the delivery event. A store that never marks orders delivered will never send one.
How it works
When an order moves to a status in the order_delivered event's trigger list, completed and delivered by default, a single cron event is scheduled carrying that order's id.
Note that it keys off the delivery event's triggers, not a hard-coded status. If you retrain order_delivered onto a custom status such as delivered-confirmed, the review request follows it automatically.
The delay is Days after delivery (review_delay_days), default 5, range 1 to 90. The help text explains the choice: "Long enough that the customer has used the product."
Scheduling only happens if both review_enabled and the review_request event are on at the moment of delivery. Turning the feature on later does not retrospectively schedule anything for orders already delivered.
How to set it up
Approve the template
E-commerce Notifications → find Review Request under the Marketing group → Get verified. Marketing templates are reviewed more carefully than utility ones, so allow more time.Switch the event on
WooCommerce: WhatsApp → Events, find Review request, toggle it on. Shopify: the Notifications tab.Switch the feature on and set the delay
WooCommerce: WhatsApp → Settings → Review requests. Shopify: the Features tab, plus the event delay.Check where the review link points
WooCommerce fills
reviewLinkfrom{review_url}, which resolves to the review section of the first product on the order. If you use a third-party review platform, replace that with its URL. The variables are free text, so a merge tag or a fixed link both work.Confirm delivery is actually recorded
Place a test order, move it to your delivery status, and check the delivery log shows the request queued.

The variables
review_request
| Field | Required | Type | Description |
|---|---|---|---|
| customerName | Yes | string | Customer name. Example: Alex |
| productName | Yes | string | Product name. Example: Arnica Montana 30CH |
| reviewLink | Yes | string | Link to leave a review. Example: https://example.com/review/123 |
WooCommerce maps these by default to {customer_first_name}, {product_name} and {review_url}.
What the customer receives
⭐ Hi {{1}}, how are you finding your *{{2}}*?
Share a quick review here: {{3}}
It takes a minute and helps other shoppers a lot.⭐ Hi Alex, how are you finding your Arnica Montana 30CH?
Share a quick review here: https://example.com/review/123
It takes a minute and helps other shoppers a lot.
Reply STOP to unsubscribe
12:04review_request message, shown with its approved example values.Being a marketing template, the approved version carries the footer Reply STOP to unsubscribe.
One request, not a sequence
Neither integration sends a follow-up. There is one request per order and the deduplication key, review_request:<orderId> in both integrations, makes a second one impossible for that order without a deliberate resend. Chasing reviews repeatedly is the fastest way to collect STOP replies, and every STOP costs you every future message to that customer, not just the review ones.
When it does not fire
- The feature or the event is off at the moment of delivery. Both default to off, and both are checked when the request is scheduled, not when it is sent.
- The order never reached a delivery status. An order left in
processingforever schedules nothing. - The
review_requesttemplate is not approved. - Marketing opt-in is required and the customer has not given one. On by default in WooCommerce. The send is skipped with
Marketing messages need an explicit opt-in and this customer has not given one.Unlike abandoned cart, a review request does have an order behind it, so a customer who ticked the box at checkout is found and allowed, see Contacts and opt-outs. - The customer replied STOP. The opt-out register wins in every mode and every category.
- Consent mode is “required” and they never opted in.
- The order has no usable phone number. Logged as skipped.
- One was already sent for this order. Refused as a duplicate, with no second log row.
- Credits ran out. 402, and nothing is spent.
Cost
MARKETING, 8 credits to an Indian number and 18 elsewhere under the shipped default rate card, against 1 and 6 for the utility order events. A store shipping 1,000 orders a month spends around 8,000 credits asking all of them for a review, which is more than the order confirmations and shipping updates combined. Worth deciding deliberately rather than switching on and forgetting. See Credits and billing.
