STALLYONS TECHNOLOGIES

Innovating the future of digital with AI, design, and technology. From AI to Web — Stallyons transforms your ideas into digital reality. Building smarter digital experiences through AI, innovation, and technology. Innovating the future of digital with AI, design, and technology. From AI to Web — Stallyons transforms your ideas into digital reality. Building smarter digital experiences through AI, innovation, and technology.
EN
background

Blog

Lunexa Case Study:
Building a Per-Minute Chat PWA With Real-Time Wallet Billing

Most chat apps can afford a hiccup. A message lands a second late, a timer stutters, and no one really notices. Lunexa did not have that luxury. On this platform, every minute is money, so a frozen timer or a wrong deduction is not a bug, it is a broken promise and a lost customer.

That single constraint shaped everything our team at Stallyons built. Lunexa is a paid chat platform where people browse profiles, pick someone, and talk on a per-minute basis, with the cost drawn live from a wallet. Underneath the polish sits a routing system that quietly sends every chat to a small team of employees, and a billing engine that has to be right to the second, every time. Here is how it came together.

The idea in one line: users browse profiles and chat by the minute from a wallet, chats route to a team of employees through a console, the timer bills in real time, and an admin panel runs the whole operation.

Why per-minute chat is deceptively hard

On the surface, Lunexa looks like a premium messaging app. The hard part is invisible, and it lives in the gap between “send a message” and “charge exactly the right amount for exactly the right time.”

A few realities made this a demanding build. Money moves every single minute, so the timer and the wallet can never drift or freeze. The people shown in the profiles are not the people replying, so the platform has to route chats to a hidden team while keeping the illusion seamless for the customer. A small group of employees needs to handle many conversations at once without anyone drowning. And because it is a progressive web app rather than an app-store product, it has to feel instant and native while running from the browser. Get any one of these wrong and the whole model falls apart.

How Lunexa works, from tap to receipt

The cleanest way to understand the platform is to follow a single chat from start to finish.

A customer opens the app, browses the profile listing, and taps one they like. The request shows “Waiting for acceptance,” and if no one takes it within a minute, it cancels itself with no charge, so nobody is ever left hanging. Once an employee accepts, a timer starts and the wallet begins billing by the minute. Throughout the conversation the customer only ever sees the profile name in the chat header, never the employee behind it. Either side can end the chat, and it also ends on its own if the balance runs low. When it closes, the whole thing is logged in the customer’s history with its duration, date, and amount. Simple to use, precise underneath.

Three surfaces, one live platform

Lunexa is really one system wearing three faces, all sharing the same backend and the same live data.

The customer PWA is where people log in with Google or a mobile OTP, top up a wallet, browse profiles, and chat. The employee console is a messenger-style workspace where a small internal team accepts and runs many chats at once, on behalf of the profiles. The admin panel is the owner’s control room, managing profiles, employees, and users while tracking the day’s takings. Because the three share one source of truth, whatever the admin changes and whatever an employee does is reflected for the customer instantly.

The part we obsessed over: the wallet and timer

If there was a heart to this project, this was it. A paid-by-the-minute model only earns trust if the billing is flawless, so this is where most of the engineering care went.

A customer recharges from preset options, and the balance updates live. The moment a chat is accepted, the timer starts, and the wallet ticks down in real time so the customer always knows exactly where they stand. A tight set of rules keeps it honest: a request that is not accepted within one minute cancels with no charge, the timer only runs while a chat is truly active, and if the balance hits the minimum, the chat cuts off automatically so no one is ever charged beyond what they have. Every completed chat is recorded with its real duration and amount. No frozen timers, no surprise deductions, no guesswork.

There is a quiet cleverness in the employee side too. Chats are shared out automatically, in turn, so with two employees the assignment simply alternates and the load stays even. Each console shows live timers and plays a sound on every new chat, so nothing slips through, and the profile name always sits in the header so an employee knows which persona they are replying as. Both sides can send images, emoji, and text, and once a chat closes, no history is kept.

Built as a PWA, and why that was the right call

Lunexa runs as a progressive web app on a Laravel backend, with a real-time layer carrying messages, timers, and status updates between every side. We chose the PWA route deliberately, and it paid off in ways that matter for a platform like this.

A PWA installs straight from the browser, updates instantly for everyone the moment we ship, and works across devices without waiting on app-store review cycles. For a product that lives or dies on real-time reliability and quick iteration, that combination is hard to beat. This kind of fast, browser-native build sits right alongside our broader web-based app development services, where the goal is always the same: a web-powered app that feels native while staying quick to update and easy to run.

The stack, at a glance

Layer Technology Why it matters
Frontend Progressive web app (PWA) Installs from the browser, updates instantly, works across devices
Backend and API Laravel (PHP) Runs accounts, wallet, billing, chat routing, and the admin panel
Real-time chat Live messaging layer Carries messages, timers, and status updates instantly
Wallet and billing Per-minute engine Charges the wallet each minute and enforces the safety rules
Auto-assignment Round-robin routing Shares incoming chats evenly between the employees
Login Google and mobile OTP Quick, familiar sign-in for customers
Design Figma The provided design, built to match across every screen
Notifications Push and in-console sound Alerts customers and employees to new chats and messages

What shipped

The finished product is a complete per-minute chat platform, delivered as a PWA on a Laravel backend with real-time chat at its core. Customers sign in, browse profiles, recharge a wallet, and chat by the minute, with every safeguard in place to keep billing fair. Behind the profiles, a small team handles the conversations through a messenger-style console, with new chats shared between them automatically and the profile name always shown to the customer. The owner runs it all from an admin panel that manages profiles, employees, and users, and tracks the day’s collection.

The result does exactly what the concept demanded: a polished, app-like platform where a handful of employees can serve many customers, billing is accurate to the minute, and the entire operation is controlled from one place.

Thinking about a real-time web app of your own?

Real-time platforms are unforgiving. Live billing, routing, and messaging all have to hold up under pressure, and that is precisely the kind of build we enjoy. If you are planning a chat platform, a marketplace, or any product where money and messages move in real time, we can help you design it so it stays fast and correct under load. Take a look at our web app development expertise and tell us what you have in mind.

Frequently Asked Questions

What is a PWA (progressive web app)?

A PWA is a web app that runs in the browser and can be installed like a native app, without going through an app store. It updates instantly and works across devices, which makes it a strong fit for real-time products like Lunexa.

How is a PWA different from a WebView app?

A PWA runs directly in the browser and installs from a web link, while a WebView app is a native app shell that displays web pages inside it and is downloaded from the app stores. Both are web-powered, but they are delivered differently. Our WebView app builds show the app-shell approach in action.

Can a PWA handle real-time chat and per-minute billing?

Yes. Lunexa proves it, with a live messaging layer, a real-time wallet, and a per-minute timer built to stay accurate and never freeze, along with safety rules that prevent overcharging.

Why choose a PWA instead of an app-store app?

A PWA installs from the browser, ships updates instantly to everyone, and skips app-store review delays, which suits fast-moving, real-time platforms that need to iterate quickly.

Leave a Reply