Fully Automated Loyalty Program for a Medical Spa

We built a custom iOS and Android loyalty app for Bella Skin Institute in Calabasas: QR code point earning at checkout in under 15 seconds, expiring points to drive return visits, and a full admin panel the front desk operates without developer help.

See all work

This project

Result 01

from concept to launch

12 weeks

Result 02

QR code transaction processing time at checkout

<15 sec

Result 03

Platforms supported from a single Flutter codebase (iOS + Android)

2
4.9 / 5 on ClutchSee all work
Platform
Web App and Mobile App
Duration
12 weeks
Industry
Healthcare
Read time
6 min read
Bella Skin Institute Logo

Dr. Anna Guanche spent 18 years building Bella Skin Institute into something more than a dermatology clinic. Board-certified, featured on Oprah and TLC, with a trademarked procedure (the GuancheLift™) and her own product lines, her practice in Calabasas serves an clientele that expects a premium experience at every touchpoint.

The business model for cosmetic dermatology depends on repeat visits. Botox every 3–4 months. Fillers every 6–12 months. Laser treatments in series. The patient who returns is worth significantly more than the one-time visitor. But between appointments, the practice had no digital touchpoint, no way to create urgency, and no loyalty system that matched the standard she had built over nearly two decades.

Every off-the-shelf loyalty platform she evaluated was built for coffee chains. Too rigid, too generic, and unable to handle the specific rules her business required: 10% cash-only point earning, expiring points to drive return visits, QR-based checkout, and a premium brand experience that would not cheapen what she had built.

She came to us to build the platform from scratch. We delivered in 12 weeks. The practice owns the code outright, with no vendor lock-in and no recurring licensing fees.

Custom loyalty program for medical spa Bella Skin Institute

before & after

What changed

Before
  • No digital loyalty system: patient points tracked manually, creating errors and no engagement between appointments
  • Zero touchpoint during the 3–6 month gap between treatments
  • Off-the-shelf platforms could not handle cash-only point earning rules or expiring point logic
  • Staff manually entered transactions at checkout, causing delays and reconciliation problems
  • No way to send targeted offers based on treatment history or point balance
  • Generic loyalty UI would have undermined the premium brand standards built over 18 years
After
  • Custom iOS and Android loyalty app built to Bella Skin Institute's brand standards
  • QR code checkout credits points in under 15 seconds, with no manual entry and no errors
  • "Pressure Points" expiration mechanic sends 28-day and 7-day reminders that drive return visits without discounting
  • Before/after gallery and service catalog keep patients engaged and considering their next treatment
  • Admin panel lets front desk staff process transactions and management adjust rules without developer involvement
  • Practice owns the source code, data, and infrastructure with no vendor dependency

What we had to solve

  • 01

    Building an expiry mechanic that creates urgency without alienating patients

    Expiring points are only useful if patients are reminded before it is too late to act. Too many reminders and they become noise. Too few and the mechanic fails. We designed a two-stage system called "Pressure Points" where a 28-day reminder acts as an early nudge and a 7-day reminder creates genuine urgency. Color indicators in the app shift as expiration approaches. Push notifications are triggered at both milestones. Getting the timing and tone right required close work with Dr. Guanche's team to match the brand voice: clinical, warm, and never pushy.

  • 02

    Making the admin panel fast enough for a busy front desk

    The QR code scanning flow needed to work at front desk pace: scan a patient's code, enter the transaction amount, confirm, and the points credit, all in under 15 seconds. Any slower and staff would stop using it. We also had to design the rewards management, rule adjustment, and reporting tools so that non-technical management staff could operate them without training documentation or developer help. Two very different users, the front desk processing transactions and the manager adjusting campaigns, needed the same system to feel natural for each of them.

outcomes

What we achieved

12 weeks
from concept to a live, fully automated platform
Previously

The practice had no digital loyalty system. Patient points were tracked manually, causing inevitable errors and no engagement during the long gaps between cosmetic treatment appointments.

<15 sec
QR code transaction processing time at checkout
Previously

Staff manually entered transactions with no QR-based system, creating friction and reconciliation errors at a front desk that could not afford to slow patient checkout.

2 platforms
iOS and Android from a single Flutter codebase
Previously

Off-the-shelf loyalty platforms could not handle cash-only earning rules, expiring points logic, or the premium brand standards the practice required. Custom was the only path.

Your practice has loyal patients but no system to recognize and retain them between visits?

the build

What we built

We started with a full discovery sprint before any code was written: mapping every user journey, documenting all business logic including accrual rules, redemption caps, and expiry mechanics, and prioritising the development backlog with time estimates. By the time development began, there were zero ambiguous requirements.

01

Points credit in under 15 seconds — no manual entry, no reconciliation errors

Patients open their app and present a unique QR code at the front desk. Staff scan it, enter the transaction amount, and points credit instantly at 10% of cash payments. No manual entry, no reconciliation errors. The entire transaction completes in under 15 seconds. The admin panel's scanning interface is optimised for checkout speed, not technical users.

QR code loyalty point earning at checkout
02

Expiry drives return visits without requiring the practice to discount services

Countdown timers show points expiring in 28 days and 7 days. Colour indicators shift toward red as expiry approaches. Push notifications fire at both milestones. The 28-day reminder acts as an early nudge toward booking a next appointment. The 7-day reminder creates genuine urgency. Expiry drives return visits without requiring the practice to discount services.

Pressure Points expiring loyalty mechanics
03

Practice stays present during the 3–6 month gap between visits — without any manual outreach

A before/after gallery organised by procedure type lets patients browse results from treatments they are considering. A full service catalog with descriptions and duration estimates lets them explore options and submit appointment requests directly from the app. The practice maintains a digital presence during the 3–6 month gap between visits without any manual outreach.

Patient engagement gallery and service catalog
04

Front desk processes transactions, management adjusts the program — no vendor involvement required

Front desk staff process QR transactions, correct point balances, and manage appointment requests without technical training. Management adjusts earning rules, creates rewards, sets expiry windows, and reviews redemption analytics from the same panel. All changes publish to the mobile app instantly. No vendor involvement required.

Admin panel for rewards management and reporting

Engagement

How we worked together

  1. 01Weeks 1–2

    Discovery and scoping

    We map the problem before writing code. Two weeks of technical audit, stakeholder interviews, and prototype — so both teams align on scope and risk before sprint one.

  2. 02Ongoing

    Two-week Agile sprints

    Each sprint ends with working software, not a status update. You review a real build, request changes, and approve before we move forward. No surprises at handover.

  3. 03Ongoing

    Daily async updates

    Slack for daily progress, Asana for task visibility, weekly video calls for decisions. You have full visibility without needing to attend every meeting.

  4. 04Final

    Handover and warranty

    Full code handover with deployment runbooks and documentation. Thirty-day warranty period for production issues at no extra cost.

Still curious?

Off-the-shelf platforms are built for the average use case (coffee shops, retail chains). They cannot handle cash-only point earning, expiring points with specific urgency timing, or QR-based checkout at a medical front desk. More importantly, they cannot match a premium brand. The appearance of a generic loyalty app undermines years of brand building. Custom development costs more upfront but gives the practice rules that actually match its business model and a product that feels like it belongs to the brand, not a third party.

Upfront, yes. Over three to five years, custom is usually more cost-effective. SaaS platforms charge monthly fees per user or per transaction, raise prices annually, and require upgrades for advanced features. You never own the system. With custom development, the one-time investment means no per-user fees, you own the code and data, and you can modify the platform without asking a vendor. Most projects break even within 18 to 30 months.

The patient opens the app and shows their unique QR code. The staff member scans it in the admin panel, enters the transaction amount, and confirms. Points credit instantly at 10% of the cash payment in Bella Skin's case. The whole transaction takes under 15 seconds. No patient name lookup, no manual entry, no end-of-day reconciliation errors.

Yes. The admin panel was designed for two different user types: front desk staff processing transactions quickly and managers adjusting rewards and campaigns. Both interfaces are self-explanatory. Staff can scan QR codes, correct point balances, and manage appointment requests without documentation. Managers can update earning rules, create new rewards, and review redemption data without contacting a developer.

Yes. After final payment, you receive the source code, database access, deployment documentation, and infrastructure credentials. You can hire any developer to maintain or extend it, switch hosting providers, or transfer ownership. There is no lock-in. Bella Skin Institute owns the platform outright, with no recurring licensing fees and no vendor dependency.

Next step

Recognise this problem in your business?

Tell us what's broken. We'll diagnose it and show you where the leverage is before you commit to anything.

  • Scope and cost agreed before work starts. No surprises. No obligation.
  • Working prototype within 3 weeks of kickoff.
  • Pay by milestone. You see progress before each invoice.
  • 60-day post-launch warranty. Bug fixes, UI tweaks, and deployment support. No retainer.
  • All conversations are NDA-protected.