Our client is a Norwegian telecom company that serves small and medium-sized businesses across Europe. They provide mobile services, internet, and business packages that keep teams connected and online.
But while their services were top-notch, their internal systems weren’t. Managing business clients, tracking usage, and sending invoices was slow, manual, and often led to delays and lost revenue. The client came to us with a clear goal: build a smarter system that could handle contracts and invoicing without the need to manually track down each business user.
The client asked for a custom CRM built specifically for their B2B needs. They wanted to manage different types of users under each business account, track service usage, and bill accurately—especially when clients went over their limits.
They also needed the system to connect with their existing telecom tools and banking APIs. Most importantly, they wanted to automate the process so invoices went out on time and payments were tracked accurately. At the beginning of our collaboration, invoices sometimes took two weeks to send out, and payments were delayed by up to three months, causing major cash flow issues. Reducing manual work and error was key for a smoother, clearer workflow.
This wasn’t just about building a CRM. We had to bring together several systems—telecom data, usage tracking, invoicing, and bank reconciliation—and make sure they worked smoothly together.
The business logic was also complex. Each client could have different contracts, tariffs, and usage rules, making it extremely challenging to connect everything in a clean system.
We started with an open-source CRM as the foundation, which allowed us to move faster while staying flexible. We tailored it extensively to fit the client’s telecom-specific needs. This included support for multiple users under each business account, centralized client management, and a structured view of active contracts, services, and usage history.
Telecom services rely heavily on dynamic pricing and contract structures. We built a flexible module to manage various tariff plans, business bundles, and contract conditions. It allowed the client to define custom service packages and automatically apply correct pricing and limits based on each customer’s contract.
A major issue was untracked or under-billed service overuse. We solved this by integrating service usage tracking directly into the CRM. The system could monitor how many minutes, data, or services each user consumed and flag any overuse for additional billing—ensuring no revenue was left on the table.
We developed a powerful invoicing system that could handle both automation and manual flexibility. Invoices could be generated based on usage and contract terms, but also edited manually when needed. Accountants could review, adjust, and approve invoices with full visibility before they were sent out.
We connected the platform to the client’s banking systems through APIs. This allowed the system to automatically check whether an invoice was paid, reconcile transactions, and update the customer status in real time. It also supported cash flow monitoring by showing how much was invoiced vs. how much was actually received.
By working closely with the client’s in-house analysts and testers, we delivered a system that was deeply integrated with their existing infrastructure and ready to scale with their business.
The implementation of the dashboard led to significant improvements: