← Back to projects
In-house product · 2026 · B2B SaaS

Keep the POS you already use.
Loyalty starts when the payment ends

An in-house CRM that receives payment records from a store's POS and turns them into loyalty points and repeat-visit management. When a payment completes, the staff tablet shows an alert, and the customer enters a phone number to earn points. It was installed at one pilot store and confirmed to work.

Keep the POS you already use. Loyalty starts when the payment ends

B2B SaaS, POS integration, loyalty CRM

3
Apps (admin, tablet, mini home)
Screens

Real screens.

Screens from a run with demo data. Select an image to enlarge it.

01Dashboard
02Customers
03Customer detail
04Points
05Payments
06Analytics
07At-risk customers
08Automated messages
09Coupons
10Mini home settings
11Prize wheel
12POS status
13Settings
14Staff tablet
01 / 18Dashboard
Dashboard
01 — CHALLENGE

A POS records sales, but not who came back and how often.

Managing regulars means using one more tool besides the POS. At a busy counter, that extra step is where loyalty gets skipped.

02 — APPROACH

We leave the POS untouched and read only the payment information.

A bridge program installed on the store PC reads POS payment records in read-only mode. It takes the amount, time, receipt number and cancellation status. It does not read card numbers or customer details. When a refund arrives, the matching points are revoked automatically.

The owner's admin covers customers, points, coupons, at-risk customers and sales analytics. Automated messages run on four kinds of rules, capped at 200 per store per day.

03 — STACK

Stack.

01

.NET bridge

Reads POS payment records in read-only mode on the store PC and sends them to the server.

02

Node.js, TypeScript, PostgreSQL

Handles payment intake, customer matching, and point accrual and revocation.

03

Three Next.js apps

Split into owner admin, staff tablet and customer mini home.

04

SSE

Notifies the tablet as soon as a payment arrives.

05

Cloudflare Workers, AWS Lightsail

Screens deploy to Workers, and the server and database run on Lightsail.

Got a similar problem?
Let's build it.

Request a consultation →See other projects