Digital marketplace platform
for utility services
The client runs a UK based utility services marketplace connecting service seekers with insured tradespeople. Users can post projects, compare estimates, communicate with professionals, and make secure payments through the platform. Traders manage their pipeline and grow their business without paying for leads.
The platform was already live but lacked key capabilities such as an editorial content layer, a self serve advertising system, and a job placement module. These were essential to expand engagement, visibility, and platform value.
We extended the existing codebase by building these modules, integrating Stripe for monetization, fixing critical mobile app issues, and optimizing performance to make the platform production ready.
2024 – 2025
Web + Mobile (Android and iOS)
Utility services marketplace
Key challenges and how we solved them
What was the client’s key challenge
The platform was already live but lacked key modules such as articles, adverts, and placements. As the engagement progressed, the scope expanded to include mobile app stabilization and performance optimization to support growing demand.
There was no content layer, monetization system, or job listing capability. The mobile app had critical bugs and outdated logic, making it unshippable, while performance issues were addressed using OPCache to improve scalability and response times.
What was our approach
We began with a codebase audit to understand what existed, what worked, and what was missing, ensuring the right sequencing of work. Each module was built as a self contained unit before integration, with articles developed first to support advert placement. Stripe was integrated from the start as part of the advert module, extending the existing webhook infrastructure to maintain consistency and clean billing flows.
Mobile stabilization ran in parallel, where bugs were prioritized and resolved, and logic was realigned with backend APIs. OPCache was introduced as a targeted optimization to eliminate repeated script compilation, improving API response times without requiring changes to the application code.
Key functionalities delivered in the project
01
Article and blog module
A content system enabling teams to create and manage editorial content, providing an organic channel and contextual surface where trader adverts are displayed within relevant articles.
02
Advert module
Traders create and manage adverts with self service billing via Stripe. Ads appear contextually within articles, with webhook handling managing payments, confirmations, and failures automatically.
03
Placement module (Job listings)
Traders post job openings while users browse and apply. Placement fees are processed through Stripe, adding a recruitment layer within the platform without requiring a separate system.
04
Opcache performance optimization
Implemented at server level to cache compiled scripts, eliminating repeated compilation and improving API response times and platform performance under increasing user load.
05
Social login
Implemented using Laravel Socialite to simplify onboarding, reduce friction during registration, and improve completion rates without adding complexity to account management.
06
Browser fingerprinting for visitor tracking
Improved unique visitor tracking accuracy using fingerprinting techniques, providing more reliable analytics without relying solely on cookie based tracking methods.
07
Mobile app stabilization
Resolved critical bugs, realigned logic with backend APIs, and stabilized the app, transforming it from an unshippable state to a production ready mobile experience.
Ready to bring your product to life?
Technologies and capabilities to build and scale
Technology stack
Services offered
Feature development
Built articles, adverts, and placements modules on existing platform
Payment integration
Integrated Stripe with webhook support for automated billing workflows
Performance optimization
Improved performance using OPCache to reduce execution overhead
Mobile app stabilization
Fixed bugs and aligned mobile app with backend APIs
Authentication implementation
Implemented social login using Laravel Socialite for easier onboarding
Analytics improvement
Enhanced visitor tracking accuracy using browser fingerprinting techniques
How we approached and executed the project
Designed around distinct user roles and their pain points
Service seekers
Core need
Find trusted tradespeople, compare estimates, and pay securely without friction.
Biggest pain
Difficult to verify trust, compare options, and manage hiring without risk.
Post, compare, pay, and review
Traders
Core need
Get consistent work without lead fees and receive direct payments.
Biggest pain
Other platforms charge for visibility, leads, and delay payments.
Advertise, hire, and manage work
Platform admin
Core need
Manage users, projects, and platform quality at scale efficiently.
Biggest pain
Manual review becomes unsustainable as platform usage grows rapidly.
Full control, monitoring, and reporting
Reviewer
Core need
Review projects for clarity, completeness, and fairness before approval.
Biggest pain
Maintaining consistent review quality with increasing project volume.
Review, validate, and approve workflows
What impact did team Mallow deliver?
- Reduced manual ad placement effort by 70 percent through automation
- Built full monetization using Stripe powered advert and placement payments
- Restored mobile app to production ready state across Android and iOS
- Improved API response times using OPCache without code level changes
- Increased visitor tracking accuracy using browser fingerprinting techniques
- Reduced onboarding friction with social login implementation via Laravel Socialite
- Enabled new revenue stream through placement module with Stripe payments
Explore more on what really goes into shaping our client's successful outcomes?
No two journeys here follow the same path. Each story captures a different starting point, set of constraints, and path to execution. As you explore our portfolio, you’ll see how priorities shifted, what trade-offs were made, and how decisions evolved in response to real-world challenges. It gives you a more complete view of what actually shapes outcomes, beyond just what gets built.




