Do I need a WA.cr account?
Yes, for WhatsApp — which is what the plugin is for. WA.cr is a separate third-party service with its own sign-up, terms and pricing, and this plugin holds no WhatsApp ability of its own: without an account, every WhatsApp step stalls unsent. It is not all-or-nothing, though. Recovery emails are sent by WordPress itself and need no WA.cr account at all, so a shop with no WA.cr workspace can still detect abandoned journeys and recover them by email. There is no SMS.
Which parts still work without one?
Detection, identity resolution, consent capture, the journey list and the privacy tools all run locally and need no account. Everything past the point of contact — dispatch, delivery status, replies, recovery links being tapped, attribution — needs the WA.cr connection. System Status says plainly when the connection is missing.
Does it require WooCommerce?
No. RecoveryFlow is a recovery engine; WooCommerce is its first supported integration. The plugin installs, activates and runs its background processing without WooCommerce. With WooCommerce present it uses Action Scheduler; without it, WP-Cron.
Does it send messages without consent?
No. Explicit consent is the default: an unchecked checkbox at checkout that names your site and WhatsApp. The plugin records what was agreed, where and when. A merchant can switch to “identified contact” mode only after reading a warning and typing an acknowledgement, which is stored with their user ID and the wording version. Opt-outs are honoured in every mode.
What does RecoveryFlow store, and for how long?
RecoveryFlow keeps its data in its own tables in your WordPress database. It stores:
- Identity : first and last name, email address, phone number as entered and in E.164 form, country, and the linked WordPress user ID when there is one. Phone and email are also stored as keyed one-way hashes for matching.
- A cart snapshot per journey : product names, SKUs, quantities and amounts. Never addresses.
- A consent record : granted, denied or withdrawn; where it came from (classic checkout, block checkout, account, opt-out link, STOP keyword, WA.cr, admin); the wording version; the time; and the IP address as a keyed hash only.
- Journey and message history : states, timestamps, template names, delivery status, message IDs returned by WA.cr, link clicks and attribution. Message text is never stored.
- An opt-out record. After a privacy erasure this is kept only as a one-way hash of the phone number so that the opt-out continues to be honoured.
- A Google Analytics client ID , only with GA4 reporting on: the shopper’s _ga cookie value and whether marketing consent was refused. It is exported, erased and anonymised with the rest, and dropped when a journey ends without a message.
Retention. Finished journeys are anonymised after 90 days by default; you can change the period or set it to manual. A shopper who comes back after that is treated as a new customer, and an opt-out they gave still holds. Carts that never identified a customer are deleted after 7 days. Logs are kept for 14 days and never contain phone numbers, emails, names, message text or recovery links.
Privacy tools. Tools › Export Personal Data includes RecoveryFlow data for the email address and the phone numbers linked to it. Tools › Erase Personal Data anonymises it: names, email, phone and cart items are removed, totals are kept for reporting, and the eraser reports that a one-way hash is retained to keep honouring the opt-out.
Uninstall. Deleting the plugin always removes your API key, the hash key, capabilities and scheduled tasks. Tables and settings are removed only if you enable “Delete all data on uninstall” in Settings › Privacy.
Which WA.cr plan do I need?
Every plan needs an active account, and the plan decides which of the two workflow paths you can use. Auto Flow hand-off needs a workspace that can run an Auto Flow, which starts at WA.cr Growth, and needs no API key. WordPress-authored workflows with direct template sends and reply polling use the WA.cr developer API ( /v1 ), which is included with WA.cr Scale and above. If WA.cr accepts a hand-off and does not run the flow — because the plan cannot run one, or the flow is paused — RecoveryFlow holds the reminder and says so on its status screen rather than recording it as sent.
Can I build my own integration?
Yes. Register a class implementing the Recovery Source interface through the recoveryflow_register_sources filter. Every integration answers seven questions: what is recoverable, how the customer is identified, when it counts as abandoned, how completion is detected, where to send the customer, what value information exists, and what consent constraints apply. See integrations.md and developer-api.md .
Does it use WP-Cron?
It uses Action Scheduler when it is available (WooCommerce ships it) and WP-Cron otherwise. Either way the work runs in small locked batches under a time budget, so overlapping runs are safe and nothing slows the storefront. System Status shows which driver is active and warns if WP-Cron is disabled without a system cron.
Does it slow down my checkout?
No. Cart activity sets a flag, and one small database write happens at the end of the request, throttled to once a minute per session. Nothing calls WA.cr during a customer’s request.
What happens if a customer taps the link twice, or a bot fetches it?
The link keeps working while it is valid. Clicks are counted only for real browsers, never for WhatsApp’s link preview fetcher, and restoring the cart merges rather than duplicates. Expired, revoked and unknown links all show the same neutral page.
Can it stop messaging people who never answer?
Yes, in a workflow you build in WordPress. Put the check “the customer has ignored fewer than a set number of earlier recoveries” in front of a touch, for example the last one that carries a discount. A recovery counts as ignored when a message went out and nobody opened the link, replied or bought before it ended, and only the last 180 days count. It saves billed messages and discount margin; it does not recover more baskets, and a new shop has no history for it to use yet.
Where do I get help?
Documentation lives in the plugin repository . For WA.cr accounts, templates and Auto Flows, see help.wa.cr .