WooCommerce
The ReachBell for WooCommerce plugin forwards store lifecycle events — order placed, paid, completed, refunded, and (for logged-in shoppers) add-to-cart — to your ReachBell project. You then build the actual messages as automations in your dashboard.
Pair it with the WordPress plugin (or the browser SDK) on your storefront to capture web-push subscribers and to identify() them — that's what lets an automation reach the right customer.
How it works
- The plugin sends a server-to-server
POST /eventsfor each enabled event (non-blocking, so checkout never waits on us). Your API key stays server-side. - It does not send messages itself — you design those as automations keyed off the event name (e.g.
order_paid→ a thank-you push,add_to_cartwith no follow-up purchase → an abandoned-cart reminder). - Customers are matched to ReachBell subscribers by
externalId. The plugin sends the order's billing email (default) or WordPress user ID. Your storefront must call the browser SDK'sidentify(externalId)with the same value, or automations can't find the subscriber.
Install
- Install and activate the free WooCommerce plugin.
- Upload and activate ReachBell for WooCommerce.
- Go to WooCommerce → ReachBell, paste your API key, choose the customer-id source, and tick the events to forward.
- Build automations in your dashboard that react to those events.
The plugin is compatible with WooCommerce High-Performance Order Storage (HPOS).
Events
| Event | Fires when | Key properties |
|---|---|---|
order_placed | An order is created at checkout | orderId, total, currency, items |
order_paid | Payment completes | orderId, total, currency, items |
order_completed | Order status → completed | orderId, status, items |
order_refunded | Order status → refunded | orderId, total |
add_to_cart | A logged-in shopper adds an item | productId, variationId, quantity |
order_paid and order_completed are enabled by default; toggle the rest in settings.
Matching customers
Set Customer id in the plugin to the same identifier your storefront passes to identify():
// On your storefront, after the shopper logs in:
ReachBell.identify('shopper@example.com'); // billing-email mode (default)With that in place, an automation triggered by order_paid for shopper@example.com will reach exactly the device(s) that subscribed under that id.
Example automation
- Trigger: event
add_to_cart. - Wait: 1 hour.
- Condition: no
order_paidevent since. - Action: send a push — "Still thinking it over? Your cart's waiting 🛒".
See Automation for the full builder.