{"id":314899,"date":"2026-06-08T07:49:10","date_gmt":"2026-06-08T07:49:10","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/retaint\/"},"modified":"2026-06-08T07:31:30","modified_gmt":"2026-06-08T07:31:30","slug":"retaint","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/retaint\/","author":23502121,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"trunk","tested":"7.0","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Retaint","header_author":"Retaint","header_description":"Retention marketing for WooCommerce. Captures customer events and pushes them to Retaint so you can run win-back, abandoned-cart, and lifecycle campaigns.","assets_banners_color":"","last_updated":"2026-06-08 07:31:30","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/retaint.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":15,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"1.0.0":"<p>First public release of Retaint for WordPress + WooCommerce.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3564276,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3564276,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[15962,266149,456,23979,286],"plugin_category":[45,55],"plugin_contributors":[266150],"plugin_business_model":[],"class_list":["post-314899","plugin","type-plugin","status-publish","hentry","plugin_tags-abandoned-cart","plugin_tags-customer-events","plugin_tags-marketing","plugin_tags-retention","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-seo-and-marketing","plugin_contributors-retaintdev","plugin_committers-retaintdev"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/retaint\/assets\/icon-128x128.png?rev=3564276","icon_2x":"https:\/\/ps.w.org\/retaint\/assets\/icon-256x256.png?rev=3564276","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Retaint connects your WooCommerce store to the Retaint retention marketing platform. Once you paste your Org ID and activate the plugin, every meaningful customer touchpoint is captured automatically:<\/p>\n\n<ul>\n<li>Product views, category views, search queries<\/li>\n<li>Add-to-cart, checkout started<\/li>\n<li>Order placed (with full order details for retention flows)<\/li>\n<li>User registration and login (linked to anonymous browsing sessions)<\/li>\n<\/ul>\n\n<p>No code changes needed \u2014 the plugin handles event tracking on every storefront page automatically.<\/p>\n\n<h4>How it works<\/h4>\n\n<p>The plugin loads a small JavaScript snippet on every frontend page (loaded from tracker.retaint.com), which assigns each visitor an anonymous ID. As the visitor browses, views products, searches, and starts checkout, events are reported to Retaint. When a customer registers, logs in, or completes an order, the plugin links their anonymous browsing session to their email and phone so Retaint can target them with retention campaigns.<\/p>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.0 or later<\/li>\n<li>WooCommerce 7.0 or later<\/li>\n<li>PHP 7.4 or later<\/li>\n<li>A Retaint account (https:\/\/retaint.com)<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the Retaint service (https:\/\/retaint.com) to send customer event data so retention marketing campaigns can be triggered.<\/p>\n\n<p><strong>What it sends:<\/strong><\/p>\n\n<ul>\n<li>On every frontend page: loads <code>https:\/\/tracker.retaint.com\/retaint.wl.js<\/code> (the Retaint tracker script) which assigns the visitor an anonymous ID.<\/li>\n<li>On commerce events (add-to-cart, checkout, order placed): sends an HTTP POST to <code>https:\/\/tracker.retaint.com\/rest\/v1\/learn\/event<\/code> with the event name, value, and anonymous visitor ID.<\/li>\n<li>On user registration, login, and order completion: sends an HTTP POST to <code>https:\/\/tracker.retaint.com\/rest\/v1\/learn\/identify<\/code> with the user's email, phone, and full name to link the anonymous browsing session to a known customer.\n<strong>When it sends:<\/strong> Only after a site administrator enters a Retaint Org ID under Settings \u2192 Retaint. If no Org ID is configured, no data leaves your site.<\/li>\n<\/ul>\n\n<p><strong>Retaint terms and privacy:<\/strong><\/p>\n\n<ul>\n<li>Terms of Service: https:\/\/retaint.com\/terms-condition\/<\/li>\n<li>Privacy Policy: https:\/\/retaint.com\/privacy-policy\/<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>retaint<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install through the Plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' menu.<\/li>\n<li>Go to Settings \u2192 Retaint.<\/li>\n<li>Paste your Retaint Org ID and click \"Save Org ID\".<\/li>\n<li>Click \"Test Connection\" to verify the integration is working.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20do%20i%20find%20my%20retaint%20org%20id%3F\"><h3>Where do I find my Retaint Org ID?<\/h3><\/dt>\n<dd><p>Log in to your Retaint dashboard at https:\/\/app.retaint.com and find the Org ID under your workspace settings.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20store%3F\"><h3>Will this slow down my store?<\/h3><\/dt>\n<dd><p>No. Server-side events use fire-and-forget HTTP requests (1-second timeout, non-blocking), so even if Retaint's API is slow, your checkout and cart flows remain instant. The JavaScript snippet is loaded asynchronously and does not block page rendering.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20store%20any%20personal%20data%20in%20wordpress%3F\"><h3>Does this plugin store any personal data in WordPress?<\/h3><\/dt>\n<dd><p>The plugin stores only your Retaint Org ID and a timestamp of the last verified connection. Customer event data is sent directly to Retaint's API and is not stored locally.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20compatible%20with%20woocommerce%20high-performance%20order%20storage%20%28hpos%29%3F\"><h3>Is this plugin compatible with WooCommerce High-Performance Order Storage (HPOS)?<\/h3><\/dt>\n<dd><p>Yes. Retaint declares HPOS compatibility and uses only HPOS-safe WooCommerce APIs.<\/p><\/dd>\n<dt id=\"how%20do%20i%20enable%20debug%20logging%3F\"><h3>How do I enable debug logging?<\/h3><\/dt>\n<dd><p>Add <code>define( 'RETAINT_DEBUG', true );<\/code> to your <code>wp-config.php<\/code>. Every dispatched event will be logged to your PHP error log.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Captures: product views, category views, search, add-to-cart, checkout started, order placed, user identify.<\/li>\n<li>WooCommerce HPOS compatible.<\/li>\n<li>Admin settings page with connection status and test-connection button.<\/li>\n<\/ul>","raw_excerpt":"Retention marketing for WooCommerce. Capture customer events and push them to Retaint to power win-back, abandoned-cart, and lifecycle campaigns.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/314899","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=314899"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/retaintdev"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=314899"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=314899"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=314899"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=314899"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=314899"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=314899"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}