{"id":399988,"date":"2026-11-11T04:00:51","date_gmt":"2026-11-11T04:00:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/caltrixio-for-woocommerce\/"},"modified":"2026-11-11T04:00:21","modified_gmt":"2026-11-11T04:00:21","slug":"caltrixio","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/caltrixio\/","author":23600388,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.7.8","stable_tag":"0.7.8","tested":"7.1.4","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"Caltrixio for WooCommerce","header_author":"Caltrixio, Inc.","header_description":"Sends customers, orders and on-site activity to Caltrixio for email marketing automation.","last_updated":"2026-11-11 04:00:21","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/caltrixio.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":59,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.7.8":{"tag":"0.7.8","author":"caltrixio","date":"2026-11-11 04:00:21","revision":3795621}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3795647,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3795647,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3795647,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3795647,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.7.8"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[15962,264,1034,455,286],"plugin_category":[42,45],"plugin_contributors":[291977],"plugin_business_model":[],"class_list":["post-399988","plugin","type-plugin","status-publish","hentry","plugin_tags-abandoned-cart","plugin_tags-email-marketing","plugin_tags-marketing-automation","plugin_tags-newsletter","plugin_tags-woocommerce","plugin_category-contact-forms","plugin_category-ecommerce","plugin_contributors-caltrixio","plugin_committers-caltrixio"],"banners":{"banner":"https:\/\/ps.w.org\/caltrixio\/assets\/banner-772x250.png?rev=3795647","banner_2x":"https:\/\/ps.w.org\/caltrixio\/assets\/banner-1544x500.png?rev=3795647","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/caltrixio\/assets\/icon-128x128.png?rev=3795647","icon_2x":"https:\/\/ps.w.org\/caltrixio\/assets\/icon-256x256.png?rev=3795647","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Caltrixio is a customer marketing platform for online stores. This plugin connects your WooCommerce store to your Caltrixio account, so you can send the right email at the right moment and see the revenue it brings in.<\/p>\n\n<p><strong>What you can do with Caltrixio<\/strong><\/p>\n\n<ul>\n<li>Abandoned cart, abandoned checkout, browse abandonment, welcome, post-purchase and win-back flows, from ready-made templates.<\/li>\n<li>Campaigns built in a drag-and-drop editor, sent to segments that refresh on their own.<\/li>\n<li>Sign-up forms (popup, flyout or embedded) with double opt-in, a second step and spin to win.<\/li>\n<li>Order emails (confirmation, shipping, cancellation, refund) sent by Caltrixio instead of WooCommerce, if you choose.<\/li>\n<li>Back in stock alerts on sold-out product pages, and product reviews.<\/li>\n<li>Revenue reporting by email, net of refunds and cancellations.<\/li>\n<\/ul>\n\n<p><strong>What the plugin does in your store<\/strong><\/p>\n\n<ul>\n<li>Sends customers, orders, refunds, cancellations, carts and checkouts from your server with your secret key, so ad blockers can't drop them. Failed requests are retried.<\/li>\n<li>Adds a first-party script that records product views and visits, and links a guest to their email as soon as they type it at checkout.<\/li>\n<li>Keeps your product catalog in sync and creates unique single-use coupon codes as WooCommerce coupons.<\/li>\n<li>Adds abandoned cart links that restore the exact cart (signed, valid for 7 days, never logging anyone in).<\/li>\n<li>Shows an optional marketing opt-in at checkout. It is never pre-checked.<\/li>\n<li>Brings in all customers and the last 24 months of paid orders with a one-time sync that never sends an email.<\/li>\n<\/ul>\n\n<p>Works with High-Performance Order Storage (HPOS) and with both the classic checkout and the Cart and Checkout blocks.<\/p>\n\n<p>A Caltrixio account is required. There is a free plan; see <a href=\"https:\/\/caltrixio.com\/pricing\">pricing<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects your store to Caltrixio (https:\/\/caltrixio.com), the email marketing service it is made for, operated by Caltrixio, Inc. Nothing is sent until you paste your Caltrixio keys on the plugin's settings page.<\/p>\n\n<p>From your store's server, to https:\/\/api.caltrixio.com, with your secret key:<\/p>\n\n<ul>\n<li>Customers: email address, name, phone number, billing city, state, ZIP and country, and the WooCommerce customer ID, when an account is created or edited.<\/li>\n<li>Orders: items, totals, discounts, shipping and billing addresses, phone, shipping and payment method names (never card numbers), when an order is paid, completed, cancelled or refunded.<\/li>\n<li>Carts and checkouts: Added to Cart and Started Checkout with the cart's items, and the name and location (city, state, ZIP, country) a guest types at checkout before placing the order.<\/li>\n<li>Marketing consent from the checkout opt-in, back in stock requests, approved product reviews, your product catalog and the coupon codes Caltrixio creates.<\/li>\n<li>Your plugin version and whether Order emails is on, when you save the settings and once a day.<\/li>\n<li>All customers and the last 24 months of paid orders, once, when you click \"Sync historical data\".<\/li>\n<\/ul>\n\n<p>From your shoppers' browsers, to https:\/\/api.caltrixio.com, with your public key, through the script the plugin adds to your storefront:<\/p>\n\n<ul>\n<li>Page visits and product views, the email address typed at checkout, and sign-up form entries. The script sets a first-party cookie (cx_aid) with a random ID to connect them. It sends nothing and sets no cookie when the browser sends the Global Privacy Control signal.<\/li>\n<li>When a shopper opens your store from a link in one of your Caltrixio emails, the one-hour code in that link (it doesn't contain their email address), so the visit joins their profile.<\/li>\n<li>It also loads your Caltrixio sign-up forms and product reviews to show them on your store.<\/li>\n<\/ul>\n\n<p>Caltrixio Terms of Service: https:\/\/caltrixio.com\/legal\/terms\nCaltrixio Privacy Policy: https:\/\/caltrixio.com\/legal\/privacy<\/p>\n\n<h3>Source code<\/h3>\n\n<p>assets\/js\/caltrixio.js is built from the TypeScript source in assets\/js\/src with esbuild 0.25:<\/p>\n\n<pre><code>esbuild assets\/js\/src\/index.ts --bundle --minify --format=iife --target=es2018 --outfile=assets\/js\/caltrixio.js\n<\/code><\/pre>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin from Plugins &gt; Add New in your WordPress admin.<\/li>\n<li>Open Caltrixio in the WordPress admin menu (under WooCommerce).<\/li>\n<li>Paste the public key and a secret key from your Caltrixio account (Integrations &gt; API keys). No account yet? <a href=\"https:\/\/account.caltrixio.com\/signup\">Sign up free<\/a>.<\/li>\n<li>Choose whether to show the marketing opt-in at checkout, then click \"Sync historical data\".<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20history%20sync%20email%20my%20customers%3F\"><h3>Does the history sync email my customers?<\/h3><\/dt>\n<dd><p>No. Past customers and orders are imported for segments and reporting only; they never start a flow.<\/p><\/dd>\n<dt id=\"does%20it%20work%20if%20a%20shopper%20uses%20an%20ad%20blocker%3F\"><h3>Does it work if a shopper uses an ad blocker?<\/h3><\/dt>\n<dd><p>Orders, carts and checkouts are sent from your server, so they are recorded either way. Product views and visits come from the browser script and can be blocked.<\/p><\/dd>\n<dt id=\"what%20about%20shoppers%20who%20ask%20not%20to%20be%20tracked%3F\"><h3>What about shoppers who ask not to be tracked?<\/h3><\/dt>\n<dd><p>Browsers that send the Global Privacy Control signal are not tracked: the script sets no cookie and records no browsing.<\/p><\/dd>\n<dt id=\"my%20product%20landing%20page%20doesn%27t%20record%20visits.\"><h3>My product landing page doesn't record visits.<\/h3><\/dt>\n<dd><p>A template that prints its own HTML without calling wp_head() and wp_footer() gets no Caltrixio script. Print the tags before  in that template:<\/p>\n\n<pre><code>&lt;?php if ( function_exists( 'caltrixio_tracking_tags' ) ) { echo caltrixio_tracking_tags(); } ?&gt;\n<\/code><\/pre>\n\n<p>On a product page they also record Viewed Product. They are the same for every visitor (no signed-in customer's details), so a page your template caches publicly stays safe. Pages that already load the script print nothing more.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.7.8<\/h4>\n\n<ul>\n<li>The back-in-stock form and the settings page load their scripts and styles from files with WordPress's enqueue functions.<\/li>\n<li>The back-in-stock form works on product pages served from a page cache: it gets a fresh security token when the shopper submits it, instead of using one printed in the page that could expire.<\/li>\n<li>No \"translation loading triggered too early\" notice with WP_DEBUG on WordPress 6.7 and later: the default labels are translated only when they are shown.<\/li>\n<li>Declares WooCommerce as a required plugin (WordPress 6.5 and later).<\/li>\n<li>Deleting the plugin also cancels its queued requests to Caltrixio, which hold customer details.<\/li>\n<\/ul>\n\n<h4>0.7.7<\/h4>\n\n<ul>\n<li>Ready for the WordPress.org plugin directory: the readme describes the plugin and the Caltrixio service it sends data to, the browser script's TypeScript source ships in assets\/js\/src, and the tracking tags for custom templates are printed with WordPress's script tag functions.<\/li>\n<li>Tested with WordPress 7.1 and WooCommerce 11.2.<\/li>\n<\/ul>\n\n<h4>0.7.6<\/h4>\n\n<ul>\n<li>The name and location (city, state, ZIP, country) a guest types at checkout reach their profile before the order is placed, so abandoned checkout emails can greet them by name. They fill only what the profile is missing and never replace details from an order; phone numbers still come only from orders. Works with the classic checkout and the Checkout block.<\/li>\n<\/ul>\n\n<h4>0.7.5<\/h4>\n\n<ul>\n<li>Placed Order adds the billing city, state, ZIP and country to the customer's profile, so guest shoppers can be segmented by location too.<\/li>\n<li>US and Canadian phone numbers typed without +1, such as (312) 555-0142, are now sent with the customer's details instead of being left out.<\/li>\n<li>Fulfilled Order carries the carrier's name and tracking link for the built-in carriers (USPS, UPS, ...) of Shipment Tracking and Advanced Shipment Tracking.<\/li>\n<\/ul>\n\n<h4>0.7.4<\/h4>\n\n<ul>\n<li>Placed Order carries the billing address and billing phone next to the shipping address, so order confirmations can show both.<\/li>\n<li>Product, category, shipping and payment method names are sent as plain text: names with an ampersand no longer show as \"&amp;\" in emails.<\/li>\n<\/ul>\n\n<h4>0.7.3<\/h4>\n\n<ul>\n<li>Custom templates that skip wp_head() and wp_footer(), such as product landing pages, can load the Caltrixio script with caltrixio_tracking_tags(), so their visits and product views are recorded.<\/li>\n<li>The plugin clears the page cache (LiteSpeed Cache, WP Rocket, W3 Total Cache, WP Super Cache, WP Fastest Cache) when it's activated and when the public key, the checkout consent checkbox or the back-in-stock form changes: pages cached before then lacked the script or showed old settings.<\/li>\n<\/ul>\n\n<h4>0.7.2<\/h4>\n\n<ul>\n<li>The API endpoint is no longer a setting: the plugin always uses https:\/\/api.caltrixio.com. Test sites can set CALTRIXIO_ENDPOINT (and CALTRIXIO_SERVER_ENDPOINT) in wp-config.php.<\/li>\n<\/ul>\n\n<h4>0.7.1<\/h4>\n\n<ul>\n<li>Caltrixio has its own menu in the WordPress admin, under WooCommerce, instead of Settings &gt; Caltrixio. Old links lead there, and the Plugins page has a Settings link.<\/li>\n<li>Historical sync shows its progress as it runs (customers, orders, then products) without reloading the page, says when it's done only after the products are sent, and points to Scheduled Actions if it stops making progress.<\/li>\n<li>Shoppers who click a link in one of your Caltrixio emails are recognized when they land on your store, so browse and cart reminders reach them. The link carries a one-hour code the script trades and removes from the address; nothing happens when the browser sends Global Privacy Control.<\/li>\n<li>Tells Caltrixio whether Order emails is on (when you save, after an upgrade and daily), so Caltrixio warns if customers would get order emails twice, or none.<\/li>\n<li>Spin to win: after signing up, shoppers press Spin (or click the wheel), watch it turn and stop on their prize, then press Claim my prize to get the code.<\/li>\n<\/ul>\n\n<h4>0.7.0<\/h4>\n\n<ul>\n<li>Signup forms: an opening yes\/no step, spin to win with an animated prize wheel, a skippable second step (phone, birthday, a question saved to the profile), and A\/B tests that keep each visitor on one version.<\/li>\n<\/ul>\n\n<h4>0.6.1<\/h4>\n\n<ul>\n<li>Signup forms show each subscriber their own unique coupon code when the form uses a Caltrixio coupon.<\/li>\n<\/ul>\n\n<h4>0.6.0<\/h4>\n\n<ul>\n<li>Unique coupon codes: every 5 minutes, creates the single-use codes Caltrixio generates as WooCommerce coupons (and sets their expiry once given out). Coupons you create by hand are never changed.<\/li>\n<\/ul>\n\n<h4>0.5.0<\/h4>\n\n<ul>\n<li>\"Notify me when it is back\" form on sold-out product pages (and sold-out variations), sent as \"Subscribed to Back in Stock\". Caltrixio emails subscribers when the product is in stock again.<\/li>\n<li>Approved product reviews are sent as \"Submitted Review\" with the rating.<\/li>\n<li>Catalog sync now also powers Price Drop alerts in Caltrixio.<\/li>\n<\/ul>\n\n<h4>0.4.0<\/h4>\n\n<ul>\n<li>Sends \"Fulfilled Order\" when an order is completed, with tracking details from the common shipment tracking plugins.<\/li>\n<li>Orders carry the shipping address and a link to view the order, for order confirmation emails.<\/li>\n<li>New setting to let Caltrixio send customer order emails instead of WooCommerce.<\/li>\n<\/ul>\n\n<h4>0.3.0<\/h4>\n\n<ul>\n<li>Syncs the product catalog (name, price, image, categories, stock) for product recommendations in emails.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Abandoned checkout emails link to a signed cart restore URL that rebuilds the cart on any device.<\/li>\n<li>Sends Refunded Order and Cancelled Order so email-attributed revenue stays net of refunds.<\/li>\n<\/ul>","raw_excerpt":"Email marketing automation for WooCommerce: abandoned cart and checkout emails, sign-up forms, campaigns and revenue reporting with Caltrixio.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/399988","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=399988"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/caltrixio"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=399988"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=399988"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=399988"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=399988"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=399988"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=399988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}