Description
Aopy for WooCommerce connects your store to Aopy (aopy.com), the email marketing and automation platform. It powers abandoned-cart emails, post-purchase automations and newsletter sign-ups from your checkout, and it reports your orders and refunds to Aopy directly from your WordPress server — no browser snippet to paste, no third-party cookies, and nothing an ad blocker can stop.
What it does
- Sends a purchase event to Aopy once payment is actually confirmed — including cash on delivery and bank transfer, which never involve a payment gateway. An order that was created but never paid is never counted as a sale.
- Works with BOTH the classic checkout and the newer Checkout Block, so no order is silently missed regardless of which one a customer used.
- Retries automatically if Aopy cannot be reached — for purchases AND refunds — so a momentary network problem does not silently lose a sale or leave a refunded one standing.
- Sends an “added to cart” event so Aopy’s abandoned-cart automations have real signal to work with — something no order-only integration can provide.
- Adds an opt-in checkbox at checkout, never pre-ticked, on both the classic checkout and the Checkout Block. Only shoppers who tick it become mailable contacts in Aopy; placing an order alone never does.
- Recovers carts in one click. Links in your Aopy emails can rebuild the shopper’s cart and apply the coupon you promised, then drop them straight on checkout.
- Loads Aopy’s on-site tracker for you once your store is connected, so product views and browsing sessions reach Aopy without you editing your theme.
- Adds a “Notify me when the price drops” button under the Add to Cart button on every product page, so shoppers can sign up for your Price Drop Alert automation without you wiring anything yourself.
- Shows the popups you build in Aopy — sign-up forms, discount offers, spin-to-win — with nothing to paste. The plugin tells Aopy what kind of page each visitor is on, so a popup meant for product pages appears only there. Use the shortcode
[aopy_form id="..."]to place an embedded sign-up form in your footer or anywhere else. - Reports refunds, whole or partial, so your Google Ads and Google Analytics reporting stops counting revenue you gave back.
- Tells you whether it is actually working. The settings screen shows your last successful send, your last error, and a “Send test event” button that reports exactly what Aopy answered.
- Respects your site’s cookie/consent banner. If a consent plugin (Complianz, Cookiebot, CookieYes, or any plugin implementing the WP Consent API) is active, advertising click identifiers and on-site behaviour are recorded only for shoppers who granted consent. Orders, refunds and carts are reported either way, carrying the shopper’s actual consent answer, because an order is a contract you already perform under — and Aopy applies your account’s own consent rules to it.
- Fully compatible with WooCommerce’s High-Performance Order Storage (HPOS). Every order value is read and written through WooCommerce’s own API, never raw post meta.
External service: Aopy
This plugin is an interface to Aopy, a third-party marketing service at aopy.com. The plugin does nothing on its own — it requires an Aopy account and a REST key from that account. Order and cart data from your store is transmitted to Aopy’s servers so it can power your segments, automations, and advertising conversion reporting.
Data sent to Aopy when an order is paid: order ID, order total, currency, and for each line item its product ID, SKU, name, category, quantity and unit price; plus the billing email address, and — when present on the order — the billing phone number, first name, last name, and the customer’s IP address and browser user-agent as recorded by WooCommerce on the order.
Advertising click identifiers, when present: the values of your own Meta Pixel’s _fbp and _fbc cookies, and any fbclid, gclid, gbraid, wbraid or ttclid parameter present in the address the visitor arrived on. These identify the ad click, not the person, and are forwarded so your Meta, Google Ads and TikTok reporting can credit the correct campaign for the sale. They are only ever recorded for a visitor who has granted statistics consent.
Data sent to Aopy when a customer starts checkout: order ID, order total, currency, line items as above, and the billing email address, so that abandoned-checkout automations can reach customers who did not complete payment.
Data sent to Aopy when an order is refunded: order ID, refund ID, currency, the amount refunded, the order’s remaining value, and the billing email address. This is what lets Aopy tell Google Ads and Google Analytics that a sale was returned, so your advertising reports stop counting revenue you gave back.
Data sent to Aopy when a product is added to the cart: product ID, SKU, name, quantity, price and store currency.
Popups: the on-site tracker asks Aopy which of your popups are active, identified only by your own public tracking key. When a shopper fills one in, what they typed — their email address, and a phone number or name if your popup asks for one — is sent to Aopy as a sign-up. Nothing is sent for a popup a shopper only sees and closes, beyond the anonymous count that tells you how often it was shown.
Data sent to Aopy when a shopper ticks the checkout opt-in box: their email address, name and phone number as entered on the order, together with the order number and your store address, recorded as the source of their consent.
Data sent about your installation, daily: the versions of this plugin, WooCommerce, WordPress and PHP, your site address, whether High-Performance Order Storage is on, whether a consent plugin is present, whether the checkout opt-in is enabled, and when this plugin last successfully reached Aopy. This describes the software, never your shoppers.
No payment details are ever transmitted, and no browsing history is collected by this plugin. The plugin sends nothing at all until you enter a valid REST key.
By using this plugin you agree to Aopy’s Terms of Service and Privacy Policy.
Setup
- In your Aopy dashboard, open Integrations > WooCommerce and copy your REST key (it starts with
rk_). - In WordPress, go to Plugins > Add New, search for “Aopy”, then install and activate it. WooCommerce must already be active.
- Go to Settings > Aopy, paste the key and save.
- Press Send test event and confirm it reports success. This is the fastest way to tell a mistyped key apart from a server that cannot reach Aopy.
- Place a test order and confirm it appears in your Aopy dashboard.
FAQ
-
Does this slow down checkout?
-
No. Every call to Aopy happens after the order is already placed, has an 8-second timeout, and never blocks or fails the checkout if Aopy is unreachable. Retries run in the background through WooCommerce’s own scheduler, never during a customer’s request.
-
Does this work with the new block-based checkout?
-
Yes — this is one of the two things this plugin was specifically built to get right. It hooks both the classic checkout AND the Checkout Block (Store API), since WooCommerce fires a different action for each.
-
Their advertising click identifiers and on-site behaviour are not recorded at all — not recorded and then withheld. Their order and any refund on it are still reported to Aopy, carrying their actual consent answer, because reporting a sale you have already made is part of running the shop rather than something a cookie banner governs. Aopy then applies your account’s own consent rules, which by default store nothing for a shopper who has not agreed.
-
Yes, for orders, refunds, carts and the checkout opt-in. Advertising click identifiers and on-site behaviour stay off until you install a plugin that supports the WP Consent API — Complianz, Cookiebot and CookieYes all do. The settings screen says so plainly rather than letting you believe everything is running.
-
Does the opt-in checkbox come pre-ticked?
-
No, and it cannot be configured to. A pre-ticked marketing box is not valid consent under the GDPR, and that is your liability, not ours.
-
How do I put a popup on my store?
-
Build it in Aopy and set it live. Nothing to paste here — the plugin already loads Aopy’s tracker, and the tracker brings every active popup with it. For an embedded sign-up form (one that sits in the page rather than floating over it), copy the popup’s id from Aopy and put
[aopy_form id="the-id"]where you want the form, for example a footer widget. -
Do I need an Aopy account?
-
Yes. This plugin is an interface to Aopy (aopy.com) and does nothing without an account and a REST key from it. See “External service: Aopy” above for exactly what data is sent and where.
-
What happens to my data if I uninstall the plugin?
-
Uninstalling deletes the plugin’s own settings from your WordPress database, including your stored REST key. It does not touch your orders, products, or customers, and it does not delete anything already sent to Aopy — to remove that, use your Aopy account.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Aopy for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Aopy 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
1.5.4
- Fixed: the price-drop button’s JavaScript is now enqueued through WordPress instead of being printed inline on the product page.
1.5.3
- Changed: every setting, scheduled task and order note the plugin stores now uses the
aopy_prefix, and the plugin declares WooCommerce as a required plugin.
1.5.2
- Added: a “Notify me when the price drops” button on every product page, wired to your Price Drop Alert automation. Shows the shopper whether they were subscribed, already subscribed, or need to give their email or accept marketing cookies first — never a silent failure.
1.5.1
- Improved: when your ad links carry the ad group and the ad name, your orders now bring them to Aopy too, so you can see which products sold through each ad group and each ad, not only each campaign.
1.5.0
- Added: popups. Every popup you build in Aopy now appears on your store on its own, with nothing to paste and no per-popup setup. Your popup’s own targeting decides where it shows.
- Added: your store now tells Aopy what kind of page a visitor is on — home page, product, category, cart, checkout, search or blog — so a popup meant for product pages appears only there, whatever your permalinks look like.
- Added: the shortcode [aopy_form id=”…”] places an embedded sign-up form anywhere you can put a shortcode, for example your footer. Copy the id from the popup’s page in Aopy.
1.4.0
- Changed: the plugin is now called “Aopy for WooCommerce” (previously “Aopy Tracking”), which describes what it is for: abandoned-cart emails, post-purchase automations and checkout sign-ups.
- Removed: the self-hosted updater. Updates are now delivered only through WordPress.org, like every other plugin in the directory.
1.3.1
- Changed: the plugin now tells Aopy each consent purpose separately (statistics, marketing, preferences) instead of one yes/no. A shopper who allowed statistics but refused marketing is measured, but their details are never sent to Meta, Google or TikTok. Orders and refunds carry the same purpose-by-purpose answer frozen at checkout.
- Fixed: a shopper who accepted, then declined, then accepted, then declined again in one visit now has BOTH refusals delivered; the second used to be dropped.
- Fixed: an order or refund that Aopy rejected outright (for example while a wrong REST key was saved) used to be marked as tracked and skipped forever. It is now shown on the settings screen as “Orders Aopy rejected”, with a “Resend rejected orders” button that re-queues them once the cause is fixed.
- Added: orders now carry the visit’s traffic source (WooCommerce’s own Order Attribution: UTM source, medium, campaign, landing page, referrer) and, when the shopper allowed statistics, the Google Analytics client id from your own gtag cookie — so Aopy can report a Google Analytics purchase under the same visitor your GA4 property already knows, instead of inventing a new one.
- Fixed: when a shopper arrived through several Google ads on different visits, the order used to carry more than one Google click id, which Google rejects. Only the most recent click is kept.
1.3.0
- Fixed: on a store with no cookie-consent plugin installed, this plugin used to send nothing at all — no orders, no refunds, no carts — while the settings screen said “Tracking is active”. Sales are now always reported, carrying the shopper’s real consent answer, and Aopy applies your account’s own consent rules to it. Advertising click identifiers still require consent and always will.
- Fixed: the settings screen now tells you the truth. It shows your last successful send, your last error, whether your store is connected to Aopy, whether a consent plugin is present, and your WooCommerce, WordPress and PHP versions.
- Added: a “Send test event” button. It sends one real event with your saved key and reports exactly what came back, so a wrong key looks different from a blocked connection.
- Added: an opt-in checkbox at checkout, never pre-ticked, on both the classic checkout and the Checkout Block. Before this, a WooCommerce store could sync thousands of customers into Aopy and email none of them, with nowhere to fix it.
- Added: one-click cart recovery. A link in your Aopy email can rebuild the shopper’s cart, apply the coupon you promised, and drop them on checkout.
- Added: the Aopy on-site tracker is loaded for you once your store is connected, so product views and browsing reach Aopy without editing your theme.
- Added: automatic updates. New versions now appear on your Plugins page instead of waiting for you to notice one and upload it by hand.
- Fixed: a refund whose delivery failed with a server error was marked as sent and never tried again, leaving a conversion standing at Google Ads and Google Analytics for money you had already given back. Refunds now retry with the same backoff purchases use.
- Fixed: refunds now carry the date the refund actually happened. They were previously filed on the day Aopy received them, which put a delayed one in the wrong day — and at month end, the wrong month.
- Fixed: the guard preventing one checkout being reported twice did not cover several of its own exit paths.
1.2.2
- Added: purchases and refunds now say which store they came from, so a business running more than one WooCommerce site has each sale filed under the right one instead of being rejected.
- Added: purchases are reported with the time the order was actually placed, so a delayed or backfilled send no longer lands in your reports as “today”.
- Added: purchases and refunds now carry the shopper’s own visit id, so the sale joins up with the product views and cart activity that led to it. Before this, you kept the order and lost the story behind it.
- Added: the consent decision recorded at checkout is now sent with the purchase and the refund, so your advertising platforms are told the basis on which the data was shared — and a shopper who says no is honoured everywhere, not just at collection time.
- Added: when a shopper who had agreed to tracking changes their mind during a visit, that withdrawal is now sent to Aopy. Before this the plugin simply went quiet — and going quiet looks exactly like never having been there, so their earlier “yes” stayed on file and their details could keep being shared with advertising platforms.
1.2.1
- Cart events now report the parent product id (variation id moved to its own field) so add-to-cart joins the product catalog.
1.2.0
- Added: refund tracking. When you refund an order — in full or in part — Aopy now tells Google Ads and Google Analytics, so your advertising reports stop counting revenue you gave back. Meta and TikTok are not included because their APIs have no way to reverse a conversion.
1.1.0
- Fixed: purchases were reported when the order was CREATED, which happens before the customer pays. A declined card or an abandoned payment page counted as a sale. Purchases are now reported only once payment is confirmed, including cash on delivery and bank transfer.
- Fixed: a failed send is now retried automatically with backoff instead of being lost. Duplicate sends are impossible — Aopy matches on the order number.
- Added: checkout-started tracking, so abandoned-checkout automations can reach shoppers who got as far as the payment step.
- Added: the customer’s consent decision is now recorded on the order at checkout, so it is applied correctly later even when payment is confirmed by the gateway or by hand in the admin.
- Added: ad-campaign attribution. When your Meta/Google/TikTok click information is available, it is forwarded with the purchase so your ad reporting can credit the right campaign.
1.0.0
- Initial release: order tracking (classic + block checkout), cart-add tracking, WP Consent API integration, HPOS compatible.
