Home / Work / Telecommunications
SCROLL TO EXPLORE
Case Study · Telecommunications

A telco app that does more than wait for customers to open it.

React Native rebuild for a national telecommunications provider, expanding payments, notifications, self-service diagnostics, technician booking and an action-capable chatbot.

React NativeiOS + AndroidPaymentsSelf-serviceChatbot~10 sprints
01 / The Client

A telco whose app is the front counter.

The client provides broadband and mobile services to consumer and business customers, who manage those services through a self-service portal and a mobile app already live in both major app stores. The app is where customers check what they owe, pay a bill, and work out whether a service interruption sits in their home equipment or the wider network — IXC Digital was engaged to rebuild it and broaden what customers could do without contacting support.

02 / The problem

Customers had to chase the app.

The existing experience was largely passive. Important updates required customers to check the app themselves, payments were card-only, and connectivity problems often became support calls.

Behind the scenes, the product also relied on legacy APIs, unreliable analytics event naming, and a deep-link dependency scheduled for deprecation.

0

Proactive alerts — customers had to open the app to check bill due dates or outages themselves.

1

Payment option — card only, with no Apple Pay, Google Pay, or PayPal for customers who wanted them.

0

Self-service diagnostics — every connectivity issue and hardship request went straight to a support call.

03 / Objectives

What the project had to deliver.

Rebuild, not patch

React Native across iOS and Android, without losing anything customers already relied on.

Notifications that opt in

Working push notifications with category opt-in — account, service and marketing kept separate.

Wider payments

Card, Apple Pay, Google Pay and PayPal, with pay, part-pay, or change-method all in-app.

Hardship, self-service

A 7-day payment extension presented as support, not buried three menus deep.

Modern API layer

Move off legacy APIs onto the client's modern experience API layer.

Diagnose, then act

Let customers test their connection, see where the fault sits, and book a technician — no calls.

04 / Our Approach

Pin the detail down first, then build against it.

Delivery ran on four disciplines, kept visible throughout rather than resolved only at sign-off.

DISCIPLINE 01

Requirements traceability

A traceability matrix covered the existing app as well as new scope, so current-state behaviour was documented rather than assumed — every requirement from design workshops carried through to a user story.

DISCIPLINE 02

Design validated before development

Information architecture, user journeys and a component system were signed off in Figma first. Screen names had to support notification targeting, so naming was settled before routing code was written.

DISCIPLINE 03

Sprint governance people could see

Roughly 10 two-week sprints in Jira, each closing with a showcase. UAT ran every second sprint, not saved for the end, so payment and FCM integration problems surfaced while there was still time to act.

DISCIPLINE 04

Analytics designed, not retrofitted

Because most existing events were untitled, event tracking was planned during business analysis after design sign-off — every tracked element mapped to its Figma frame.

05 / The Solution

An app that pays the bill, explains the fault, and books the fix.

The rebuilt app is React Native across iOS and Android, with style, text and imagery configurable rather than hard-coded.

Notifications & Payments

Push, by category

FCM notifications with tokens tied to customer ID, refreshed on reinstall — opt-in split into account, service and marketing.

Drop-in checkout

Card, Apple Pay, Google Pay and PayPal, with a consistent vault flow so a stored token covers recurring charges.

Pay-my-account

Editable down to the overdue balance, plus a full transaction history by date, invoice and amount.

Hardship request

A short-term payment extension presented as financial-support assistance — the date writes back so it can't be reused.

Diagnostics & Support

Connection health check

Tests across the provider and wholesale networks to tell the customer whether the fault is home-side or upstream.

Automatic fault handling

A network fault gets lodged with a ticket number; a known outage gets an ETA instead of a queue position.

Chatbot that acts

Lodges faults, returns ticket updates, rebooks technician visits, and hands over to a live agent when it can't help.

06 / Technologies

The stack behind the app.

App
React NativeiOSAndroid
Notifications
Firebase Cloud MessagingDeep links
Payments
CardApple PayGoogle PayPayPal
Diagnostics
Connection health checkAuto fault lodgement
Support
In-app chatbotLive-agent handover
Delivery
JiraFigmaGitHubTestFlightBrowserStack
07 / The outcome

Self-service became a real service channel.

0payment methods in one checkout: card, Apple Pay, Google Pay and PayPal
0jobs from one connection test: diagnose, lodge a fault, book a technician
0support tasks handled by the chatbot without a call

Customers can receive targeted billing and outage updates, choose how they pay, diagnose connectivity problems, lodge faults and manage technician appointments without waiting on support.

The app also moved onto the modern experience API layer and a deliberate analytics model, creating a reusable foundation for future customer-app initiatives.

08 / Client Testimonial
"
Customers used to call us to find out what we already knew. Now the app tells them first — and handles most of it before it ever reaches a support queue.
— Head of Digital, National Telecommunications Provider (placeholder — replace with a real, sign-off'd quote before publishing)
09 / Key Learnings

What this engagement reinforced.

01

Screen naming is a technical decision, not just a design one — notification targeting and deep links both depend on it.

02

UAT every second sprint, not just at the end, surfaces payment and notification integration problems while there's still time to act.

03

Analytics planned during business analysis beats retrofitting tracking onto a shipped app with unreliable event names.

Why it matters

The kind of work we do well.

A live app serving real customers, payments and notifications that had to work correctly from launch, several third parties in the critical path, and shared dependencies across client teams. Projects like this demand precise requirements, visible governance, and disciplined delivery — the model we bring to every engagement.

Let's build

If your app has fallen behind, this is the fix.

Book a 30-minute working session. Bring your app, your support-ticket backlog, or your next-quarter roadmap — we'll tell you honestly what it would take.