5th Club loyalty program: a custom module for the 5th Avenue fashion store
A shopper buys a dress, then comes back a month later for a sweater. Or she doesn’t, because another store sent her a discount code in the meantime. In fashion, the winner is whoever can keep a customer around longer than one seasonal collection. That’s why we built the 5th Club loyalty program for 5th Avenue, powered by a PrestaShop module written from scratch.
5th Avenue is an online store for women’s fashion that we designed and continue to develop on PrestaShop. The program has been live since April 30, 2026. Below, we show how it works from the shopper’s point of view, how much she can save, and what’s happening under the hood, including how the module deducts points for returns and complaints.

At a glance
- Client: 5th Avenue, a women's fashion store on PrestaShop.
- Goal: reward regular purchases, not sale hunting, with full control over costs.
- Solution: the 5th Club program, powered by a module written from scratch.
- What sets it apart: automatic point deductions for returns and complaints, including partial ones.
Why this project?
Acquiring a new customer in fashion keeps getting more expensive, and seasonal sales teach shoppers to wait for a discount. The owners of 5th Avenue wanted to reward regular purchases, not deal hunting. And they wanted full control over how much the program costs the store.
Off-the-shelf modules did some of what they needed. But not everything, as you’ll see below.
How 5th Club works: the rules in a nutshell

- For every zloty spent on products, the shopper earns 1 point
- Points from all orders add up in her account
- Points activate 31 days after the order ships
- Active points are valid for 12 months
- 1 point equals PLN 0.05 off future purchases
- Points can cover up to 70% of the product total in an order
- The “Sale” and “Deals” categories are excluded from the program
- Points can't be used to reduce shipping costs
The rules are simple for shoppers and protect the store’s margin at the same time. Excluding sale items and capping redemptions at 70% means the points discount doesn’t stack with other promotions or eat up the entire profit on an order.
How to join the club: five steps

Sign up
The shopper creates an account in the store. Joining the program is free.
Log in
Points are earned on purchases made while logged in.
5th Club dashboard
In her account, she sees her balance, points history, and expiration dates.
Redeem for a coupon
She clicks “Convert points to coupons” and chooses how many points to redeem.
Code in the cart
The discount code is added to the cart automatically. No need to copy it anywhere.
Next purchase
A new order earns points again, and the cycle starts over.
Example: how much you can save
The easiest way to show it is with numbers. At the current rate, 1 point is worth PLN 0.05, so every PLN 100 spent in the store earns PLN 5 off future purchases.
| You spend on products | You earn points | Discount value |
|---|---|---|
| PLN 200 | 200 pts | PLN 10 |
| PLN 500 | 500 pts | PLN 25 |
| PLN 1,000 | 1,000 pts | PLN 50 |
| PLN 2,000 | 2,000 pts | PLN 100 |

One shopper's story
- In June, she buys a coat and a sweater for PLN 600.
- 31 days after shipping, her account activates 600 points.
- In August, she buys a dress and a blouse for PLN 400, which earns another 400 points.
- She now has 1,000 points, which she converts into a coupon worth PLN 50.
- The code shows up in her cart automatically on her next order.
Why join 5th Club?
Discounts on what you'd buy anyway
No waiting for a sale or hunting for codes. Every regular order gets you closer to your next discount.
Free, with no paperwork
All you need is a store account. No cards, no apps, no extra terms to sign.
Everything in your dashboard
Your balance, points history, and expiration dates are always at hand in the 5th Club tab.
The code goes straight to your cart
The shopper chooses how many points to redeem, and the store instantly adds the code to her order.
What the program does for the store
Returning customers
Points give shoppers a reason to make their next purchase here, not with a competitor.
More customer accounts
The program encourages sign-ups, and an account means better communication and newsletter reach.
Control over discount costs
Excluded categories, the 70% cap, and no stacking with promotions protect the margin.
Protection against abuse
The 31-day waiting period means nobody can order, collect points, and immediately return the items.
Technical details: how the custom loyalty module works
The program runs on a module we wrote specifically for 5th Avenue. Here are the key features, split into what the shopper sees and what happens in the store’s back office.
Front end: what the shopper sees
- “5th Club” tab in the customer account: points balance, history, and the expiration date of each batch.
- “Convert points to coupons”: the shopper chooses how many points to turn into a discount.
- Automatic code in the cart: the discount applies without copying a code.
- Program info page: the rules in a few steps, plus the terms and conditions.
- Mobile version: everything works the same on a phone.
Back end: what the module calculates
- Configurable conversion rate: how many points per zloty and how much a point is worth. The store can change this without a developer.
- Points based on products: points are calculated on the gross price, excluding shipping and payment fees.
- Excluded categories: “Sale” and “Deals” don't earn points.
- Waiting period and validity: activation 31 days after shipping, automatic expiration after 12 months.
- 70% cap: points can't cover an entire order.
- Adjustments for returns and complaints: the module automatically deducts points for returned products, including partial returns.
Returns and complaints: how the module keeps points in check
This is the part you don’t see on the program page, and it’s what sets this module apart from simple solutions the most. In fashion, returns happen every day. A shopper orders two sizes and sends one back. A loyalty program that doesn’t account for that hands out points for merchandise that’s already back in the warehouse.
The 5th Avenue module responds to a return or complaint automatically:
- No points are awarded for a returned product, or they're reversed if they've already activated
- For a partial return, the module deducts points only for the products sent back
- If the shopper paid for the returned product with points, she gets back the amount she actually paid, and the redeemed points aren't restored
- Customer service doesn't have to recalculate anything by hand
Partial return example
- A shopper orders a dress for PLN 180 and pants for PLN 120, which is 300 points.
- She sends back the pants.
- The module deducts 120 points, leaving her with 180.
- Nobody in customer service had to do any math.
This is exactly where off-the-shelf solutions usually give up. A simple module awards points when the order is placed, and that’s it. It’s like a coffee shop punch card that gives you a stamp even for the coffee you returned.
Why a custom module instead of an off-the-shelf one?
To be honest, not every store needs a program built from scratch. If you just want to award points for purchases and let customers redeem them for discounts, a good module from PrestaShop Addons will do it for less. Run the numbers to see whether the difference pays off.
5th Avenue’s rules were more detailed: a waiting period counted from the ship date, separate validity for each batch of points, a 70% cap, category exclusions, and above all, correct deductions for partial returns. Patching an off-the-shelf module to handle rules like these would have cost about the same and still left workarounds. In a situation like this, we think it’s better to have one clean module that does exactly what the store needs.

- Program rules in three sentences
- Five steps from sign-up to discount
- Large, easy-to-tap buttons
- Discount code without copying
- The same 5th Club dashboard as on desktop
How we built it
Program rules
Together with the owners, we set the conversion rate, exclusions, waiting period, and limits.
Points logic
We mapped out every scenario: purchase, shipping, return, complaint, and expiration.
Module development
We wrote the PrestaShop module from scratch, with settings in the store's back office.
Dashboard and club page
We added a 5th Club tab to the customer account and a page explaining the rules.
Scenario testing
We tested partial returns, adjustments, and point expiration on real test orders.
Program launch
5th Club launched on April 30, 2026, along with its terms and conditions.

Where to start with a loyalty program in your store
Sometimes an off-the-shelf module and well-thought-out rules are enough. Sometimes it turns out that returns, exclusions, and limits call for a solution built specifically for your store.
If you’re wondering which approach makes sense for you, talk to us. We’ll go through your sales and returns rules and tell you straight whether an off-the-shelf module will do.
See also: custom modules, Dacpol case study, e-commerce implementations.
FAQ: loyalty programs in PrestaShop
Can a loyalty program be added to an existing PrestaShop store?
Yes. The module installs in a live store, and points start accruing from the day the program launches.
How does a loyalty program handle returns?
It depends on the module. Our module for 5th Avenue automatically deducts points for returned products, including partial returns.
Can specific categories be excluded from the program?
Yes. At 5th Avenue, the “Sale” and “Deals” categories don't earn points, so discounts don't double up.
How much does a custom loyalty module cost?
It depends on the number of rules and scenarios. A simple program can often be handled with an off-the-shelf module, and we quote custom solutions after talking through your rules.
Do loyalty points work for B2B sales too?
Yes, although in B2B, volume-based discounts and partner tiers tend to work better. We build those too.
Want a similar program in your store?
Tell us how you sell today and what returns look like for you. We'll propose program rules and tell you whether an off-the-shelf module will do.
