One loyalty card for your online shop and your physical store
If you sell on Shopify or WooCommerce and also have a shop, Loyalty+ (loyaltyplus.app) can give points for both in one programme. Paid online orders add points automatically. In the shop, customers scan your QR code. Both land on the same card when the customer uses the same phone number in both places. This needs the Pro or Growth plan.
How it works
- In the shop: the customer scans your store's QR code with the phone camera. The card opens in the browser, with no app, and the points land. The customer saves the card with a name and phone number. Staff can also find a customer by phone number on the cashier terminal.
- Online: when an order is paid, Shopify or WooCommerce tells Loyalty+ through a webhook. Loyalty+ finds the customer and adds points by your reward rule.
- One balance: the customer sees online and in-store points together on the card, and redeems them in the shop.
How customers are matched
For each paid order, Loyalty+ looks for the customer in this order:
- Phone number. Shopify: the phone on the order or on the Shopify customer (not the shipping-address phone). WooCommerce: the billing phone.
- Email. Shopify: the order or customer email. WooCommerce: the billing email.
- The shop's customer ID (Shopify customer, or a logged-in WooCommerce customer).
If nobody matches, Loyalty+ creates a new customer from the order. When that customer later saves the card in your shop with the same phone number, Loyalty+ finds the existing account and the online points are already there.
The weak spot is email. In-store customers save their card with a phone number only; they cannot add an email address. So an online order that carries only an email finds the in-store card only if an earlier order already linked that email to it. Otherwise it starts a separate card, and Loyalty+ cannot merge two cards. If you want one card per customer, ask for a phone number at checkout.
Which orders earn points
- Shopify: orders that Shopify reports as paid (the "Order payment" webhook).
- WooCommerce: orders that reach the status "processing" or "completed" (the "Order updated" webhook).
- Each order earns points once, even if the webhook arrives twice.
- With a points-per-spend rule, Loyalty+ uses the order total as Shopify or WooCommerce sends it. Loyalty+ does not convert currencies.
Set it up
- Create a Loyalty+ account. You get a 14-day Pro trial with no card. Add your store, set your reward rule, and print the store's QR code.
- In Loyalty+, open Integrations, choose Shopify or WooCommerce, and save to get your webhook URL.
- Shopify: in Shopify admin, go to Settings → Notifications → Webhooks. Create a webhook with Event = "Order payment", Format = JSON, and your Loyalty+ URL. Copy the signing secret Shopify shows under the webhook list into Loyalty+.
- WooCommerce: in WordPress, go to WooCommerce → Settings → Advanced → Webhooks → Add webhook. Set Status = Active, Topic = "Order updated", Delivery URL = your Loyalty+ URL, and type a secret of your own. Paste the same secret into Loyalty+.
- Make a test order with your own phone number and check that the points arrive on your card.
Limits to know
- Pro or Growth only. On Free, orders are recorded but earn no points.
- One rule for online orders. Online orders use your default reward rule, not a store's own rule, and their points are recorded under your first store.
- Promotions: a double-points promotion for all stores also doubles online orders; a promotion for one store does not.
- Refunds: refunded or cancelled orders do not lose their points automatically. You can deduct points by hand on the customer's page.
- Customer limit: customers created from orders count toward your plan's limit (1,000 on Pro, unlimited on Growth). When the limit is full, orders from new customers earn no points; existing customers still earn.
- Redeeming: rewards are redeemed in the shop. Loyalty+ does not create discount codes in Shopify or WooCommerce.
- No wallet passes, no referral or birthday rewards, and no email to customers.
Price
Pro costs €39 a month incl. VAT (€390 a year) for 2 stores and 1,000 customers. Growth costs €89 a month incl. VAT for up to 5 stores and unlimited customers. See the pricing page: it lists everything included. Points from Square, SumUp, Stripe, Zettle and Lightspeed work the same way, if your till uses one of them.
FAQ
How does Loyalty+ know an online order belongs to my in-store customer?
By phone number first, then email, then the shop's customer ID. In the shop, customers save their card with a phone number, so an online order with the same phone number lands on the same card. Customers cannot add an email address to their card themselves, so an order that carries only an email starts a separate card, unless an earlier order already linked that email. Loyalty+ cannot merge two cards, so ask for a phone number at checkout.
Which orders earn points?
Shopify: orders that Shopify reports as paid (the Order payment webhook). WooCommerce: orders that reach the status processing or completed. Each order earns points once, even if the webhook arrives again.
Are points taken back when I refund an order?
No. Refunds and cancellations do not remove points automatically. You can deduct points by hand on the customer's page.
Which plan do I need?
Pro (€39 a month incl. VAT) or Growth (€89 a month). On Free, orders are recorded but earn no points. Every new account gets a 14-day Pro trial with no card.
Do online customers count toward my customer limit?
Yes. A new customer created from an order counts like any other. Pro allows 1,000 customers; Growth has no limit. When the limit and its grace allowance are full, orders from new customers earn no points; existing customers still earn.
Try Loyalty+ free
Free forever for up to 50 customers — no card, no app for your customers to install. Set up your first store and print your QR in about five minutes.
Start free