DataBadger.aiDataBadger.ai
  • About
  • Work
  • Team
  • Contact
ENFR
Start a conversation
  • AboutWho we are, and how we build01
  • WorkEvery engagement, in detail02
  • TeamThe people on your project03
  • ContactStart with a problem, not a brief04
ENEnglishFRFrançais
Start a conversation
All projects

Loyalty & rewards

A loyalty commerce platform, ERP to storefront

Three coordinated workstreams as their embedded engineering team: a live Java ERP kept shipping, a headless storefront built from scratch, and a migration toolkit that moved the data between them.

Client

A North American corporate loyalty and rewards fulfilment company

5 weeks

to launch readiness

A loyalty commerce platform, ERP to storefront — Loyalty & rewards

The challenge

What was in the way

The client runs corporate perks and rewards programmes — an ERP holding catalogue, orders and fulfilment, and a need to put branded storefronts in front of end customers.

The ERP was long-lived and business-critical, the storefront did not exist, and the data had to move between them without a day of downtime.

The solution

What we built

Three coordinated workstreams as their embedded engineering team. On the ERP, continuous development of a live Java and Spring Boot system shipped through Jenkins to AWS, with secret scanning in the pipeline and explicit production-database safety rules.

The storefront is a headless commerce platform built from scratch — a thin, correct orchestration layer over three systems we do not own (the client’s catalogue and fulfilment API, Stripe for payments and tax, and a transactional email provider) with PostgreSQL as the system of record reconciling money state against fulfilment state for every order.

The engineering is deliberately conservative where it counts. Domain code is forbidden by lint rule from importing any framework, and CI greps the built worker bundle to prove none leaked in. There is no message broker: the order status column is the queue, claimed with FOR UPDATE SKIP LOCKED, which removes an entire piece of infrastructure from the failure surface.

The migration ran through a purpose-built toolkit of convergence, reconciliation and verification scripts against the live schema, with a full census of what moved.

Key technologies

Storefront
Next.js 16, React 19, TypeScript, Tailwind 4, next-intl (EN/FR)
Data
Prisma 7, PostgreSQL 18, Redis, Postgres-as-queue worker
Integrations
Stripe payments and tax, NetSuite, client catalogue API
ERP
Java/Spring Boot, PHP/CodeIgniter, Jenkins, AWS, gitleaks
Quality
Biome, Vitest, Playwright including visual design-parity tests

Impact & results

01

Launch readiness in five weeks

30 schema migrations covering referrals, entitlements, tax, admin roles, audit and reporting rollups.

02

Architectural boundaries enforced by machines

The domain layer cannot drift into framework coupling, because CI will not let it merge.

03

Infrastructure deliberately removed

No broker to operate, monitor or fail.

04

A live ERP kept shipping

While its replacement front end was built alongside it.

Next project

An outsourced technology department

Start here

Start with a problem, not a brief.

Tell us what is slow, what is manual, what is stalled, or what nobody understands any more. We will tell you honestly whether it is worth building.

Start a conversationinfo@databadger.ai
DataBadger.ai

Software, data and AI — studied, designed, built, deployed and maintained. End to end, by the people who architected it.

the technology department for companies that need one and do not want to build one.

www.databadger.ai — footer
$badger contact
emailinfo@databadger.ai
sitewww.databadger.ai
reply< 1 business day
$badger status
✓accepting new partners
✓est. 2022 · 100% client retention
✓12 engagements · 6 / 6 layers in-house
$badger sitemap
01aboutwho we are, and how we build
02workevery engagement, in detail
03teamthe people on your project
04contactstart with a problem, not a brief
$badger start --project
Start a conversation
$

© 2026 DataBadger.ai

Every partnership since 2022, still running.