Description
This plugin connects your store to your customer loyalty club at Loyalil. Once connected, every paid order earns the customer credit against their phone number, and a refund automatically reverses that credit.
All of the club’s own rules — stamps, cashback, tiers, promotions — are kept and decided at Loyalil, so the plugin never needs updating when you change how the club works.
The club card is shown on your storefront in three ways, matching however you already build pages: the “Loyalil Club” block in the block editor, the “Loyalil Club Card” widget in Elementor, or the [loyaly_club] shortcode in any theme. On the “My Account” page the card appears automatically.
Connecting
WooCommerce Loyalil “Connect to Loyalil”. There are no keys to create and nothing to copy. If your host blocks the automatic connection, you can paste a key by hand on the same screen.
Recovering an abandoned cart
WooCommerce has no equivalent to Shopify’s own tracking of a checkout that was started and never finished, so this plugin reports each checkout it sees to Loyalil, and Loyalil decides — on a setting you control at Loyalil, next to the club’s other messaging settings — whether and after how long to remind that customer, on the channels and with the marketing consent your club already has for them. See “External services” below for exactly what is sent.
External services
This plugin is a courier for your Loyalil loyalty club, and by design it does most of its work by talking to Loyalil’s own servers (loyalil.com). It cannot function without this connection — there is no local, offline mode, because the loyalty programme itself (stamps, cashback, tiers) is decided at Loyalil, not by this plugin.
What is sent, and when:
- When a paid order or a refund happens on your store, the order’s total, currency, the customer’s billing phone, email and name, the order status, and any Loyalil discount codes used on it are sent to Loyalil’s server, so the customer’s balance can be credited or reversed. Loyalil’s Terms of Service and Privacy Policy.
- When a checkout is started (submitted, before payment), the order id, billing email, phone and currency are sent, so Loyalil can send an abandoned-cart reminder later if you have that switched on and the order is never completed. Nothing is sent if you have not connected the store.
- The club widget’s own code (
widget.js) is loaded directly from your connected Loyalil account’s own address atloyalil.com, not bundled with the plugin, because it has to reflect your club’s own colours, wording and rules the moment you change them in your Loyalil dashboard, without waiting for a plugin update. - When redemption is set up (the “Redeeming balance in your store” screen), your own WooCommerce REST API key is sent to Loyalil once, so Loyalil can create and remove discount coupons in your own store on the customer’s behalf. This key is not used for anything else.
- The widget, run from a customer’s own browser, calls Loyalil’s server directly to check whether the visitor is a club member and to show their card. No page load calls any third party other than Loyalil.
No data is sent to any service other than Loyalil. Nothing here is used for advertising, and nothing is sold to a third party. See Loyalil’s Privacy Policy for how this data is handled once it reaches Loyalil’s servers.
Privacy
This plugin registers with WordPress’s own Export Personal Data and Erase Personal Data tools (Settings Privacy the tools tab). It holds almost nothing locally that traces to a specific person — see “External services” above for what it sends to Loyalil, which holds the customer’s actual loyalty data under its own privacy policy. The one local record this plugin keeps that touches an order at all is a short send log (the last twenty attempts to reach Loyalil), and the export and erase tools cover exactly the entries in that log which name one of the requester’s own orders.
Blocks
This plugin provides 2 blocks.
- Loyalil Club The club on your storefront: a compact balance card, or the full club page.
- Loyalil Club Page (legacy) Replaced by the Loyalil Club block, set to "full club page". Pages already using this block keep working.
Installation
- Plugins Add New Upload Plugin, choose the zip file, Install, Activate.
- WooCommerce Loyalil.
- Press “Connect to Loyalil” and choose the club.
FAQ
-
Does this work with caching plugins?
-
Yes. No detail about a specific customer is ever printed into the page itself, so a page saved by a caching plugin still shows the right data to every visitor who loads it.
-
What happens if I disconnect?
-
Earning stops. Your customers’ balances stay safe at Loyalil.
-
What data does this plugin send, and to whom?
-
See “External services” above for the full list. Everything goes to Loyalil (loyalil.com) and nowhere else.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Loyalil Rewards for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Loyalil Rewards 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.0.3
- The club page’s stylesheet now reaches the page through WordPress’s own style queue, added with wp_add_inline_style(), instead of a style tag printed inside the page content. The page looks the same.
- The list of addresses this site reports to Loyalil is now only the site’s own home and site URLs. It no longer includes the Host header of incoming requests, which the sender of a request can set to anything, and the list earlier versions stored is deleted.
1.0.2
- Renamed from “Loyaly for WooCommerce” to “Loyalil Rewards for WooCommerce” — the previous name was too close to an existing project’s in the same field. The slug, text domain and every on-screen mention of the old name changed with it; nothing about how the plugin connects, earns, reverses or displays the club changed.
1.0.1
- The club page’s HTML, which is fetched from Loyalil and printed inside your theme, now passes through an allowlist of tags and attributes before it reaches the page. Nothing on that list can run a script or load a frame, so the page renders as designed even if the response is ever tampered with. The page’s own stylesheet is kept, checked separately, so the design is unchanged.
- Two small changes to the club page follow from that. Its headings now use your theme’s own sans-serif rather than fetching Heebo and Inter from Google, so the page no longer contacts anyone but Loyalil; and the tier pills under the hero no longer fill in when pressed, though they still jump to the tier they name.
- The API address is now checked against Loyalil’s own host before it is stored, from both the connect handshake and the settings form. A site can still be pointed elsewhere for development, but only by defining LOYALY_API_HOST in wp-config.php, which needs file access to the server rather than a login.
- Declares WooCommerce as a required plugin, so WordPress checks for it before activating.
1.0.0
- Abandoned-cart recovery: the plugin now reports a started checkout to Loyalil, so Loyalil can send a reminder — with the customer’s real balance, not just “you left something in your cart” — if the order is never completed. Off unless switched on at Loyalil.
- A customer who joins the club on your storefront now also reaches your own WooCommerce Customers list, the way one who places an order already did.
- Registered with WordPress’s own Export Personal Data and Erase Personal Data tools.
- Documentation catch-up: this readme had fallen behind the plugin by several versions. It now names every external service the plugin uses (see “External services” above), and the version number here matches the plugin’s own for the first time in a while. Nothing in this release changes how the connection, the widget, or redemption already worked — see the FAQ and “External services” sections for what they do now that this file has caught up.
- Text domain corrected to match the plugin’s own slug.
0.7.1
- Identifying a customer without a store account: phone or email and a one-time code, exactly as on the Shopify side.
- Guest mode always offers two choices: join the club, or sign in as an existing member.
- New widget design — the club’s own logo and colours, full Hebrew support.
- “Not me, sign out” on any shared device.
0.7.0
- Thank-you page: an offer to join right after payment, with the exact value of that order in cashback or stamps.
- “No thanks” is recorded for that order only and does not ask again.
- Someone already a club member sees no offer at all.
0.6.0
- Redeeming balance from inside the store: a discount code is created in WooCommerce, and cancelling it returns the balance.
0.5.0
- Redesigned admin screen: cards, a tagged connection state, one-click shortcode copy, and a collapsible diagnostics section.
- The screen follows the logged-in user’s own language (Hebrew or English), correctly aligned in both.
- A block for the block editor and a widget for Elementor. The shortcode remains as a fallback.
0.1.0
- First version: one-click connect, earning on a paid order, reversal on refund, the club card shown in the store.