Client engagement Platform
SuperLovek
An online shop for a Ghanaian phone and appliance retailer: website, Android and iOS apps and a back-office on one backend, with prices and stock read from the retailer's ECOUNT ERP and payments through Hubtel.
- Products published on the website, 21 October 2026
- 316
- ECOUNT items kept in sync from the appliance account
- 528
- Automated tests in the mobile app, 21 October 2026
- 831
Each figure has its source on record.
How it fits together
People reach it through
- Web
- Android app
- iOS app
Ruby on Rails · PostgreSQL
- Hubtel
- OpenStreetMap
Connected to
Context
SuperLovek sells phones and home appliances from more than 50 branches in Ghana. Its prices, stock and sales already live in ECOUNT, the ERP its shops use every day. The retailer wanted customers to browse, buy and pay online, on the web or in an app, and then collect from a nearby branch or have the order delivered, without staff keeping a second set of prices or stock by hand. Mfidie Solutions is building the whole system as a client engagement, with a full launch planned for mid-November 2026.
The problem
Selling online from many shops is harder than putting a catalogue on a website. Stock sits in different branches and changes all day as people buy in store, so a number from an hour ago is not proof that an item can be sold. ECOUNT holds the authoritative prices and quantities but no photos or descriptions, and its item names were written for stock-keeping, in capitals and with typos. Its API also has strict limits: about ten failed logins from one address lock out both the API and the shops' own ERP access.
Payments add their own risk. A customer can pay by mobile money, a payment confirmation can arrive late or twice, and a single order may contain items from two branches. Each branch then needs its own pickup or delivery, while the customer still sees one order and makes one payment. Sales made online must reach ECOUNT exactly once, or the retailer's books and stock go wrong.
Our contribution
Mfidie Solutions wrote the specification and is building every part of the system: the Rails backend and JSON API, the customer website, the staff back-office, and the Android and iOS apps from one Flutter codebase. The work includes the ECOUNT and Hubtel integrations, SMS sign-in, push notifications, delivery pricing, and the release and store submissions. The retailer supplies its ECOUNT data, branch details, product information and business rules, and approves each policy decision.
Approach
The backend is a Rails 8 modular monolith on PostgreSQL. The website and back-office use Hotwire and Tailwind, and the apps read the same versioned JSON API, so a basket, wishlist or order follows the customer across channels.
ECOUNT stays the source of truth. A job syncs items, prices and branch stock every hour, at minute 17, with one run per window and the last good data kept if a run fails. When a customer checks out, each item is read fresh from ECOUNT and the stock already held for other customers is subtracted. Each ECOUNT operation is marked verified or untested in code, and no untested write can be switched on. A paid sale is posted to ECOUNT once, at handover, through an outbox.
Online payments hold stock for 15 minutes. The Hubtel status check, not the callback, decides whether a payment succeeded. An order is split into one fulfilment per branch, each with its own pickup code and QR code or delivery record.
The catalogue is built with AI assistance: ECOUNT's stock-keeping entries become draft product pages, and staff review every draft and photo before it is published.
Challenges
- An ERP that locks out its own users. Too many failed logins block the retailer's shops as well as the API. Logins are never retried automatically, a circuit breaker stops after three failures, and every call is paced to the limits ECOUNT allows.
- Stock that is never quite current. An hourly snapshot cannot prove an item is still on the shelf. Checkout reads each item live. If ECOUNT cannot be reached, it uses a snapshot under 90 minutes old and flags the order for a stock check, and otherwise it refuses to take payment.
- A catalogue with no content. Hundreds of items had stock-keeping names and no photos or descriptions. AI-assisted cataloguing, with staff approval before anything goes live, turned them into product pages without inventing details.
Outcomes
The public website is serving SuperLovek's real catalogue, with prices and branch stock taken from ECOUNT. The Android and iOS apps are built and their store listings are being prepared for review. Checkout with mobile money, branch pickup, delivery and cash on delivery is built and covered by automated tests, with live payment checks to follow before the full launch planned for mid-November 2026.
Technology
- Ruby on Rails
- PostgreSQL
- Hotwire
- Tailwind CSS
- Solid Queue
- Flutter
- Android
- iOS
- ECOUNT ERP API
- Hubtel
- Firebase Cloud Messaging
- OpenStreetMap
Links
Services involved
-
Custom Software Development
Turn repeated manual tasks into one system your team can operate and improve as the business grows.
-
Web Application Development
Give customers a clear way to complete tasks online without installing an application.
-
Payment Gateway and Mobile Money Integration
Accept digital payments and keep the payment record connected to the service the customer bought.
-
Mobile App Development
Put your service on your customers' phones with Android and iOS apps that share one account and one backend with your website.
Industries
-
Retail and Commerce
Online shops, apps and payments for Ghanaian retailers, built on the prices and stock your shops already keep, so staff do not maintain a second catalogue by hand.