Integration service for MVNO providers with Telgea's API normalizer. Built with TypeScript and follows Domain-Driven Design principles.
- Normalizes data from multiple MVNO sources (SOAP/REST)
- Aggregates usage and SMS charging data
- Type-safe implementation with comprehensive error handling
- Follows DDD principles for maintainable, scalable architecture
- Node.js >= 18.0.0
- npm
npm installStart the development server:
npm run devRun the test suite:
npm testGET /api/mvno/usage/:userIdGET /api/mvno/sms/:userIdGET /api/mvno/aggregated/:userIdAggregates both SOAP and REST api data (both partials of Telgea's internal format) into the Telgea's normalized format.
/src
/api # Express routes and controllers
/application # Application services and DTOs
/domain # Core business logic and entities
/infrastructure # External integrations (SOAP/REST)
/tests # Test files
- Domain Layer: Core business entities (User, UsageData, SmsCharge)
- Application Layer: Use cases and data transformation
- Infrastructure Layer: External API clients
- API Layer: REST API endpoints and controller
- Comprehensive error handling throughout all layers
- Detailed error messages for debugging
- Error logging for monitoring
- Unit tests for core business logic