All work

Korner Rewards

A loyalty app for a convenience and fuel retailer, now released on iOS and Android. It started as a prototype I built on my own. I then built the first version of the mobile app and its backend, integrated with the retailer’s existing loyalty provider.

Role
Initiated, prototyped, and built the initial app
Stack
Kotlin Multiplatform, Android, iOS (Swift), Node.js, TypeScript, PostgreSQL
Status
Publicly released · iOS & Android
Korner Rewards rewards screen with points balance and coupons
Korner Rewards store map with a store card showing fuel prices
Korner Rewards home screen with member card (barcode and member ID redacted)

How it started

Korner had discussed building a loyalty app, but the idea hadn’t moved forward.

I built an early prototype, put together UI concepts and user journeys, and showed management a working demo. They approved it for development.

From there, I worked with Product and Operations to define the first release, and with Electrum, the existing loyalty provider, to understand its APIs and production requirements.

The app in action

A tour of the released app

Members scan a card at the counter to earn points and redeem them for coupons, find offers, and locate the nearest stores with current fuel prices.

  • Korner Rewards home screen with member card (barcode and member ID redacted)

    Home and membership

    Member card for earning and redeeming in store. Barcode and member ID redacted.

  • Korner Rewards rewards screen with points, how-it-works steps, and coupons

    Rewards and coupons

    Points balance and the coupons it can be redeemed for.

  • Korner Rewards store map with pins and a store card showing fuel prices

    Store discovery

    Every location, with distance and current fuel prices.

Engineering

Building around existing retail systems

The app had to fit systems the retailer already ran: loyalty accounts managed through Electrum, promotions configured through CStore, and redemption at the store counter.

I built the initial Kotlin Multiplatform/Android app and the backend integrations for membership, rewards, offers, age verification, and store discovery. The backend used Node.js, TypeScript, and PostgreSQL.

Electrum required a privacy policy and age-gated verification before granting production API access. I worked through those requirements with their representatives and built the app’s age-verification flow.

Outcomes

  • Released publicly on the App Store and Google Play.
  • I built the prototype that got it approved, then the initial app and backend integrations.
  • The released app includes the wider team’s work. Another engineer helped test the iOS app and led the Donations feature.

App StoreGoogle Play