All projects
A
Telecom / Call routing

Modular multi-tenant NestJS architecture, VoIP provider, decisioning engine

A call routing platform with a modular multi-tenant NestJS architecture, a routing engine with several configurable strategies, dynamic score adjustments, third-party VoIP integration, Prisma ORM, Swagger docs.

Modular Architecture
Multi-tenant Isolation
VoIP Telephony
Lead Role

The architecture is based on a modular NestJS organization, with each module responsible for a domain: campaigns, numbers, routing, billing, recordings, reporting. This strict separation makes it possible to change the routing logic without affecting billing, and vice versa, with end-to-end type coverage.

The routing engine is the most critical component. It supports several routing strategies that are configurable to each campaign's needs. Dynamic modifiers adjust the scores based on geolocation, time of day and budget caps. Integration with a third-party VoIP provider handles the telephony: reception, transfer, recording and conferencing.

The multi-tenant architecture isolates data per client while sharing the infrastructure. Prisma ORM with PostgreSQL handles the complex data models: nested campaigns, conditional routing rules, call histories. The Swagger documentation is generated automatically from the NestJS decorators.

Technical architecture

Modular multi-tenant NestJS architecture: authentication (JWT/Passport), per-tenant isolation, management of campaigns, numbers, routing, compliance and reporting.

Decisioning engine with several configurable routing strategies and dynamic modifiers for score adjustment.

Complete third-party VoIP integration: DID number provisioning, call control, recording, webhooks.

End-to-end typed TypeScript architecture, Prisma ORM with complete data modeling, complete Swagger documentation.

Configurable conversion tracking with duration thresholds, payout calculations (per call/minute/conversion), audit logs.

Technical highlights

Modular architecture

Multi-tenant NestJS, separation by domain

Strict typing

End-to-end TypeScript across the whole stack

VoIP integration

DID provisioning, control, recording

Technical stack

TypeScript
NestJS
React
Prisma
PostgreSQL
Docker
VoIP
Swagger
Role Lead Developer
Duration 2025
Engagement Contract (Tier A)

A similar technical engagement?

A brief, a repo, or a quick call - whatever works.