Limgro
Case studyIn production since 2022E-commerceMarketplace

Wabi Sabi Gifts

Purchase and redemption as two separate objects

Wabi Sabi Gifts sells experiences instead of objects — boxing lessons, wine tastings, pasta workshops, photoshoots, flights. The platform is built around discovery: filter by province, recipient, category and price, with certificate activation, a corporate B2B channel and a bilingual EN/NL storefront.

Laravel
Vue.js
MySQL
Redis
The numbers
11 × 11
Provinces × categories
4
Facet dimensions in one query
2
Storefront languages

Challenge

An experience is not a product with a stock count. It has a host, a location, a duration, a group size and a redemption date chosen by someone who is not the buyer — often six months after the purchase. Standard e-commerce carts cannot express any of that.

What we built

We split the purchase from the redemption: buying issues a gift certificate, activation binds it to a date and a host. The catalog is faceted across province, recipient, category and price, with every combination resolving to its own cacheable URL and facet counts served from cache.

Result

A bilingual EN/NL catalog covering 11 provinces and 11 experience categories, a working certificate activation flow that survives listing changes, and a separate B2B channel for corporate gifting and team building.

What it does

Every screen below is the live product, captured this week.

Home — experiences filtered by province, recipient, category and price.
Module 01

Faceted catalog

Discovery runs across four dimensions at once — province, recipient, category and price — and every combination resolves to its own cacheable URL.

  • 11 provinces × 11 categories with price and recipient filters
  • Cached facet counts so filtering stays instant
  • Sorting and price ranges applied without a page reload
Category page — wine and food experiences with price and duration.
Module 02

Category browsing

Each category is a curated shelf rather than a filter result: duration, group size, host and location are on the card before anyone clicks.

  • Duration, group size and per-person pricing on every card
  • Host and location shown before the detail page
  • Add to basket directly from the category grid
How it works — purchase, gift, activation, redemption.
Module 03

Certificate lifecycle

Buying and redeeming are separate events, often months apart. The purchase issues a certificate; activation binds it to a date and a host.

  • Purchase issues a transferable gift certificate
  • Recipient activates against a date and a host
  • Certificate survives listing changes on the host side
Gift audience page — experiences grouped by who receives them.
Module 04

Gifting and B2B

The buyer is rarely the user, so navigation is organised by recipient — and the same catalog powers corporate gifting and team building.

  • Recipient-first navigation: her, him, two, family, friends, group
  • B2B track for corporate gifts and team building
  • Host onboarding for new experience partners
On a phone

Faceted browsing survives the phone: filters collapse into a sheet, the result grid keeps its imagery.

Under the hood

The stack, and the engineering decisions behind the build.

Front end
Vue.js storefront · faceted filter UI · basket & activation flows
Back end
Laravel · certificate issuing/redemption engine · host back office
Data
MySQL · Redis cache for facet counts
Rendering & i18n
Deterministic facet URLs · cached facet counts · EN/NL dictionaries
Integrations
Payments · e-mail delivery of certificates · CRM export
Engineering highlights
  • Purchase and redemption split into two entities — a certificate can outlive the listing it was bought from.
  • Four facet dimensions resolved into one query, with counts served from cache so filtering stays instant.
  • Every facet combination resolves to its own cacheable URL rather than a query string.
  • Host back office for onboarding independent experience partners without developer involvement.

Have a Similar Project?

Let's talk about how we can build something great for your business. We love a good challenge.

Start a Conversation

Let's Build Something Great Together

Have a project in mind? Tell us about it. We'll get back to you within 24 hours with a clear plan of action.