Skip to main content
Referrals in Habit use the same points ledger as purchases. You do not install a second app or pay a second fee.

Set referral bonuses

In Settings, configure:

Create and manage codes

Open Referrals in the Habit admin to:
  • Create a code for any customer in your store, including someone who hasn’t ordered yet. Choose your own code (for example FRIEND10) or leave it blank to generate one, and set how many days it stays valid (blank = never expires). Codes you create don’t count toward the per-member limit.
  • See every code with its referrer, status (Active, Used, Expired, Revoked), who used it, and when it expires. Search by code, name, or email, or filter by status.
  • Revoke a code so it can no longer be used.
The top of the page shows active codes, successful referrals, and total bonus points awarded.

How a referral converts

1

Share a code

You create a code in Referrals, or a signed-in customer gets one from the storefront widget or the customer account rewards block.
2

Apply it

The new customer enters the code under Have a referral code? in the cart (every plan, guests included; needs the Redeem points in cart app embed) or, on Shopify Plus, at checkout. The code is checked when they apply it.
3

Paid order

When that customer’s paid order goes through, Habit credits both bonuses and marks the code used. Each customer can be referred once, and self-referrals are rejected. To only accept codes on a customer’s very first order, turn on Only accept referral codes on a customer’s first order in Settings. If the order is later fully refunded, both bonuses are reversed.
Invalid, expired, or already-used codes don’t apply. The customer sees why when they apply the code, and if a code is refused on an order anyway (for example, a guest checks out with the referrer’s own email), the Referrals page shows the reason next to the code. The referral field is separate from Shopify’s discount code box. A referral code gives bonus points, not a discount, so entering it in the discount box won’t work.

Fraud protection

Habit caps unused codes per member, expires unused codes, and shows a dashboard banner when shop-wide code creation exceeds your velocity threshold. This will not catch every case, but it stops thousands of codes leaking overnight with no way to notice.