Description
GoUltra for WooCommerce connects your online store to the GoUltra.AI WhatsApp Business API platform, enabling you to send automated WhatsApp messages to your customers.
Features
- Order Confirmations – Automatically send a WhatsApp message with order details and product images when a customer completes a purchase.
- Shipping Updates – Notify customers when their order ships, including tracking links. Compatible with Advanced Shipment Tracking (AST).
- Abandoned Cart Recovery – Capture opted-in checkout data and send a smart 3-step WhatsApp recovery sequence (nudge urgency discount coupon).
- Admin Alerts – Get instant WhatsApp notifications on your phone for every new order.
- AI-Powered Support – Sync your store policies so GoUltra’s AI can automatically answer customer questions via WhatsApp.
- Template Builder – Create and manage WhatsApp message templates in 20+ languages directly from WordPress.
- GDPR Compliant – Messages are only sent to customers who explicitly opt in at checkout.
- Webhook Logs – View the last 500 API events with status codes for easy debugging.
- HPOS Compatible – Fully compatible with WooCommerce High-Performance Order Storage.
How It Works
- Install the plugin and enter your GoUltra API key.
- Configure which notifications to enable (order confirmations, shipping, abandoned cart, admin alerts).
- Customize your WhatsApp message templates in any language.
- The plugin sends lightweight payloads to GoUltra’s servers – no heavy processing on your site.
- GoUltra handles message delivery via the official WhatsApp Business API.
Third-Party Service
This plugin connects to GoUltra.AI, a third-party SaaS service, to deliver WhatsApp messages. An active GoUltra account is required for the plugin to function.
WhatsApp message delivery costs are billed by Meta (WhatsApp) based on conversation type and volume.
Installation
- Upload the
goultra-for-woocommercefolder to/wp-content/plugins/. - Activate the plugin through the Plugins menu in WordPress.
- Go to GoUltra Settings in the admin sidebar.
- Create a GoUltra account at goultra.ai/register if you don’t have one.
- Paste your API key and click Connect.
- Configure your notification preferences and you’re done!
FAQ
-
Do I need a GoUltra account?
-
Yes. This plugin requires an active GoUltra account to send WhatsApp messages. You can create a free account at goultra.ai/register.
-
How much does it cost?
-
The WordPress plugin is free. GoUltra has affordable monthly plans. WhatsApp message costs are set by Meta and are typically very low for utility/service messages.
-
Is this GDPR compliant?
-
Yes. The plugin adds an opt-in checkbox at checkout. Messages are only sent to customers who explicitly consent.
-
Does this work with WooCommerce HPOS?
-
Yes. The plugin is fully compatible with WooCommerce High-Performance Order Storage.
-
What languages are supported?
-
The template builder supports 20+ languages including English, Hebrew, Arabic, Russian, Spanish, French, German, Portuguese, Italian, Turkish, Japanese, Korean, Chinese, and more.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“GoUltra for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “GoUltra for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
3.7.15
- Fixed: the WhatsApp template chosen for an order status or admin alert could be lost after a template sync, so the notification stayed enabled but silently did not send and you had to re-select it. Template ids are now kept stable across syncs, so your saved selections persist.
- Fixed: admin notifications could be silently skipped when no specific template was mapped. Admin alerts now fire on the toggle alone (the backend picks the admin template), consistent with customer notifications.
- Added a warning on the Settings screen when a notification is enabled but you have no approved WhatsApp templates yet, so it is clear why messages are not sending (create and approve a template in the Templates tab).
- The connection now shows a clear message when the GoUltra subscription is not active, instead of a raw error code.
- Security and compliance hardening: the REST webhook secret is accepted only via the Authorization header (no longer as a URL query parameter), plus minor WordPress.org Plugin Check cleanups.
- Updated the API key field hint to match the current GoUltra key format.
3.7.13
- Fixed the submission error “Your plugin and author URIs are the same”: the Plugin URI now points to the plugin’s WordPress.org directory page and the Author URI to the author site, so the two headers are distinct as required.
3.7.12
- WordPress.org review compliance: the admin CSS and JavaScript are now enqueued instead of printed inline (no inline style or script tags). Removed the “Powered by GoUltra” line from the message footers, so it is no longer added to customer messages by default. Added the “Requires Plugins: woocommerce” header and corrected the Plugin URI.
3.7.11
- Fixed: the Templates screen could reload itself a few seconds after opening (the background status sync refreshed the page), which sent you back to the start if you had already begun creating a template. The status sync now runs quietly in the background and never reloads the page; use the “Sync Status” button for an immediate refresh.
- Fixed: in a right-to-left admin (Arabic / Hebrew) the back arrow in the WhatsApp template preview pointed the wrong way; it now points correctly.
- Hebrew starter templates now use the proper gershayim character in the “total” abbreviation.
3.7.10
- Made the plugin display name in readme.txt match the plugin header exactly (WordPress.org submission consistency). No functional change.
3.7.9
- WordPress.org readiness + privacy: removed all remote Google Fonts from the admin screens (the UI now uses your system font stack), so the plugin makes no third-party requests for assets. This is faster, fully private (no data sent to Google), and resolves a common GDPR concern.
- Code-quality / Plugin Check hardening: tightened output escaping in the logs and templates screens, added input unslashing on a couple of admin save paths, gated internal debug logging behind WP_DEBUG, sanitize incoming template data on write (defense in depth), and added capability checks directly on the admin page renderers. No behavior change for store owners.
3.7.8
- Security hardening (from an adversarial penetration-test style review of the unauthenticated attack surface): the public abandoned-cart capture endpoint now rejects empty or zero-value carts, reducing automated abuse. Added defense-in-depth capability checks on the admin page renderers and extra output escaping in the Templates wizard. No vulnerability that could expose or compromise the host site was found; these are preventative hardening measures.
3.7.7
- Abandoned cart compliance (GDPR + ePrivacy): the plugin now stores a shopper’s contact details for abandoned-cart recovery ONLY when they give marketing consent at checkout. Without consent, no personal data is kept for marketing. Consent is also re-checked at send time, so withdrawing consent stops any pending messages.
- Quiet hours now actually work: abandoned-cart marketing messages that would fire inside your quiet window are automatically rescheduled to when the window ends (transactional order/shipping messages are never delayed).
- GDPR data-subject tools: the plugin now integrates with WordPress Tools > Export/Erase Personal Data, so a customer’s stored abandoned-cart data can be exported or erased on request, and it adds suggested privacy-policy text.
- All abandoned-cart logic verified end to end (consent gating, scheduling, sending, coupon generation, kill switch, data export/erase).
3.7.6
- Security hardening: the public store-info endpoint no longer exposes the WooCommerce or plugin version (reduces version fingerprinting). The backend still receives the plugin version via the authenticated request header.
3.7.5
- Hardening (from a full code + runtime audit): fixed a case where the delivery-status webhook could fail on PHP 7.4 (it used a PHP 8 only function); the plugin is now compatible with PHP 7.4 and up again.
- Performance: the analytics table is no longer re-created on every analytics write (one-time, gated), and the store-policies / status-template-map options are no longer autoloaded on every page request.
- Robustness: the abandoned-cart kill switch now catches all error types when cancelling scheduled actions, so it can never interrupt order processing.
- Audited: zero blocking HTTP on checkout (all sends are async), full HPOS compatibility, all admin AJAX protected by nonce + capability, all SQL uses prepared statements, REST endpoints use timing-safe secret checks. No customer-facing errors in testing.
3.7.4
- Analytics: the Analytics dashboard is now fully translated (Hebrew, Arabic, French, Spanish) and renders in right-to-left for Arabic and Hebrew (KPI cards, the stats row, and the recent-activity table all flip correctly). The month name now follows your WordPress language too.
3.7.3
- Templates: the built-in starter templates are now translated into 21 major world languages (English, Hebrew, Arabic, Spanish, French, German, Italian, Portuguese, Russian, Turkish, Dutch, Polish, Ukrainian, Indonesian, Malay, Vietnamese, Thai, Japanese, Korean, Chinese, Hindi). Choosing a template language now shows ready-to-use content in that language instead of English. Other languages still fall back to English.
- Language: removed the in-plugin interface-language switcher. The admin now simply follows your WordPress language (the cleaner, standard approach). This resolves the admin layout/right-to-left issues that the manual switcher could cause. To use the plugin in another language, set your WordPress language under Settings > General.
- Admin notifications: status toggles and template pickers are now disabled until an admin WhatsApp number is entered (you cannot enable an admin alert without a destination number).
- UX: the bottom test-send bar is clearer (neutral phone placeholder, tooltips, and a clearer “awaiting approval” label for templates pending Meta approval).
- RTL: fixed the “Back” arrow direction in the Templates wizard for Arabic and Hebrew (now points the correct way).
3.7.2
- Fix (critical): switching the GoUltra interface language to a non-default language (e.g. Arabic or Hebrew) could make GoUltra admin pages return HTTP 500. The locale filter no longer calls a translation function while WordPress is determining the locale (which caused infinite recursion). GoUltra admin pages now load correctly in every language.
- Text: removed the long-dash character from all plugin text for a cleaner, consistent style.
3.7.1
- Translations: the Templates screen is now fully localized (Hebrew, Arabic, French, Spanish) – message types, the template wizard, the custom-template editor, and all status messages. Arabic and Hebrew render in polished right-to-left.
- Convenience: connecting your API key now automatically pulls your existing approved templates in one step – no need to open the Templates screen and click Sync. The connect button confirms how many templates were imported.
3.7.0
- Translations: the plugin admin is now translatable and ships with Hebrew, Arabic, French and Spanish (English default; unsupported languages fall back to English). It auto-detects your WordPress language, and a new “GoUltra Interface Language” selector lets you force a specific language for the GoUltra screens.
- Right-to-left: full, polished RTL layout for Arabic and Hebrew on the Settings screen.
- (First i18n phase – Settings screen. Templates/Analytics screens are being localized next.)
3.6.0
- Consent: separated MARKETING from UTILITY messaging (Meta + GDPR best practice). Utility messages (order confirmation, shipping) are transactional and are now sent automatically to anyone who provides a phone – no opt-in required. Marketing messages (offers, abandoned-cart recovery) now require an EXPLICIT opt-in: an unchecked-by-default checkbox the customer must actively tick at checkout (classic + block checkout). Abandoned-cart recovery is sent only to customers who opted in to marketing.
- Removed the old microcopy/checkbox opt-in toggle (superseded by the consent separation above).
3.5.3
- UX: the template pickers (Order Status + Admin notifications) are now grouped by template type with a clear “Language · Style – preview” label, so multiple approved templates are easy to tell apart. Removed the confusing inline checkmark and fixed right-to-left rendering.
3.5.2
- Branding: the official GoUltra logo now appears in the Settings, Templates, and Analytics page headers.
- Fix: corrected the API key field placeholder to match the real key format (sk_live_…).
3.5.1
- Block checkout: added a native WhatsApp opt-in checkbox (WooCommerce Additional Checkout Fields API) for “checkbox” opt-in mode, saved to the order. The block checkout is the default since WooCommerce 8.3, where the classic opt-in hooks do not fire. Microcopy mode keeps working via implicit consent.
3.5.0
- Performance: all outbound WhatsApp/API calls on order events now run as Action Scheduler async jobs, so checkout and order status changes are never blocked or slowed by the GoUltra API (even if it is slow or unreachable).
- Performance: removed redundant per-request database queries (schema check, scheduler check, analytics table check are now gated).
- Fix: duplicate order-status hooks no longer cause duplicate sends (per-status + per-order de-duplication).
- Fix: shipping updates now normalise the customer phone to E.164 (local-format numbers were sent unnormalised).
- Fix: consistent opt-in handling across order confirmation and shipping.
- Fix: product catalog sync now returns the correct total count and avoids a heavy full-catalog query.
- Fix: corrected a PHP notice on the settings page (status template option list).
- Fix: PHP 8.x hardening (null-safe phone normalisation and string handling).
- Fix: deactivation/uninstall now unschedule the correct Action Scheduler hooks; uninstall also removes the analytics table.
- Compatibility: declared Cart & Checkout Blocks compatibility; ghost-capture now works on the block checkout; abandoned-cart coupons now use the WC_Coupon CRUD object. Tested up to WooCommerce 10.8 and WordPress 7.0.
1.0.0
- Initial release.
- Order confirmation notifications.
- Shipping update notifications with tracking.
- Abandoned cart recovery (3-step sequence).
- Admin new order alerts.
- Template builder with 20+ languages.
- Store policies sync for AI support.
- Webhook logs viewer.
- HPOS compatibility.
- GDPR-compliant checkout opt-in.
