Docs
Set Up Loyalty Program

Set Up Loyalty Program

Enable Square Loyalty rewards for your WooCommerce customers.

Integrate Square's Loyalty program with your WooCommerce store. Customers earn and redeem points for online and in-store purchases.

Overview

With Square Loyalty integration, your customers can:

  • Earn points on WooCommerce purchases
  • Redeem points for rewards at checkout
  • Track their loyalty status online
  • Use points across online and in-store purchases

Prerequisites

Before setting up loyalty:

  • Active Square Loyalty program
  • SquareSync for Woo Pro 7.7.0 or higher
  • Connected Square account

Step 1: Enable Loyalty Features

  1. Go to SquareSync for Woo > Settings > Loyalty Program
  2. Toggle Point Accruing to allow customers to earn points
  3. Toggle Point Redeeming to allow customers to use points
  4. Click Save Changes

Step 2: Choose Calculation Method

Select how points are calculated for orders.

Square calculates points from the Square order.

Advantages:

  • Fully automated calculations
  • Points tied to Square orders/transactions

Considerations:

  • Shipping is included, so shipping costs may over-earn points
  • Not compatible with Split Orders by Product Locations — split orders are recorded in Square with EXTERNAL payment records, which Square does not recognise for automatic point accumulation, so no points are awarded (the plugin adds an order note when this happens). Stores that split orders by location must use Custom Calculation instead.

Best for: Businesses wanting simplicity and consistency with in-store loyalty.

After enabling loyalty features, refresh your permalinks:

  1. Go to Settings > Permalinks in WordPress
  2. Click Save Changes (no modifications needed)
  3. This registers the loyalty dashboard URLs

Customer Experience

Earning Points

Customers earn points automatically when:

  1. They place an order
  2. Payment is completed
  3. Order meets eligibility requirements

Points appear in their account after order completion.

Viewing Points

Customers can view their points:

  • On their account dashboard
  • Using loyalty shortcodes you place on pages
  • Through the loyalty widget

Redeeming Points

At checkout, customers can:

  1. See their available points
  2. Choose to apply points to their order
  3. Receive a discount based on point value

Rewards are only offered while Point Redeeming is enabled — when it is off, customers still see their points balance but cannot apply rewards (a redemption that could not be recorded in Square would otherwise give the discount without deducting the points).

Tax Treatment of Rewards

How the reward's discount interacts with tax (from version 9.12.1):

Tax-inclusive stores: a redeemed loyalty reward reduces the taxable base of the order. The Loyalty Discount is recorded as a net amount plus tax, apportioned across the tax rates of the items the reward applies to (zero-rated items contribute no tax share). Tax is therefore declared on the discounted consideration — the treatment many jurisdictions require for price-reducing discounts (e.g. UK VAT). The customer still receives exactly the promised discount and the order total is unchanged; only the net/tax split moves. Example: a £2.50 reward on a standard-rated (20% VAT) basket is recorded as £2.08 net + £0.42 tax, reducing the declared VAT by £0.42.

This is controlled by Rewards reduce the taxable base in Loyalty settings — ON by default. Disable it only if your accounting depends on the previous behaviour (the reward carried no tax), for example for continuity until the end of a tax period. Developers can also override it with the sws_loyalty_fee_reduces_tax_base filter.

Tax-exclusive stores: unchanged — the reward is a flat discount and does not affect the tax charged.

Gift cards are different and deliberately unaffected: a gift card is a payment method, not a price reduction, so redeeming one does not reduce the taxable base — tax on the pre-redemption total is correct there.

The same figures flow through to Square: the reward is deducted exactly once from the Square order (via the Square-attached reward with the default redemption method, or the plugin's discount entry with the custom method), so Square's recorded sale and "Tax Included" match what the customer actually paid.

Linking Customers

For loyalty to work, customers must be linked between WooCommerce and Square.

Automatic Linking

When a customer:

  1. Creates a WooCommerce account
  2. Places an order
  3. Their email matches a Square customer

They're automatically linked.

Manual Linking

For existing customers, link them by:

  1. Going to their WooCommerce customer profile
  2. Using the Square customer lookup
  3. Confirming the match

Troubleshooting

Points not accruing

  • Verify loyalty program is enabled
  • Check calculation method settings
  • Confirm order completed successfully
  • Verify customer is linked to Square

Redemption not working

  • Check Point Redeeming is enabled
  • Verify customer has sufficient points
  • Confirm reward is configured in Square
  • Check for minimum order requirements

Customer not linked

  • Verify email addresses match
  • Check Square customer exists
  • Try manual linking
  • Confirm API connection is active

Dashboard not loading

  • Re-save permalinks
  • Clear caching plugins
  • Check for theme conflicts
  • Verify shortcodes are correct

Points discrepancy

  • Compare Square and WooCommerce order history
  • Check calculation method consistency
  • Review for cancelled or refunded orders
  • Audit point earning rules