Resources

System Architecture

PayWallet is built on a microservices architecture with clear separation of concerns, enabling scalability, maintainability, and flexibility.

Architecture Overview

PayWallet follows a microservices architecture pattern with an API Gateway as the single entry point.

Microservices Architecture

Loosely coupled services that can scale independently. Each service has a specific responsibility.

Multi-Tenant Support

Complete data isolation per tenant. Subdomain-based routing with database-per-tenant architecture.

API Gateway Pattern

Single entry point for all API requests. Centralized authentication, routing, and rate limiting.

Event-Driven Communication

Services communicate via events and REST APIs. Redis Pub/Sub for real-time event distribution.

Modular Monolith

FinOps service uses modular monolith pattern - clear module boundaries within a single deployable unit.

Fineract Integration

Deep integration with Apache PayWallet (Fineract) for core banking operations and ledger management.

Backend Services

All backend services are built with Spring Boot and communicate via REST APIs and events.

Gateway API

Port 8080

Single entry point for all API requests. Handles authentication, routing, and rate limiting.

Core Service

Port 8081

Core banking operations built on Apache PayWallet. Handles clients, loans, savings, and accounting.

Tenant Manager

Port 8082

Multi-tenant management and provisioning. Handles tenant configuration and platform administration.

ROSCA Service

Port 8083

ROSCA (Rotating Savings and Credit Association) operations. Group management and contribution tracking.

FinOps Service

Port 8084

Financial operations modular monolith. Consolidates payments, billing, reconciliation, notifications, credit bureau, POS, and vouchers.

Frontend Applications

Three separate frontend applications, each optimized for specific use cases.

paywallet-ui

Port 3001

Core banking application with Platform Admin, Core Banking, and Self-Service portals.

/platform-admin
/core
/self-service

paywallet-web

Port 5174

Unified marketing site — For Rounds and For Business.

/rosca
/business
/platform/*
/resources/*

paywallet-rosca-ui

Port 3003

ROSCA admin and member portals.

/rosca-admin
/rosca

Request Flow

How requests flow through the PayWallet platform.

1

Client Request

Frontend application sends request to Gateway API (Port 8080)

2

Authentication & Routing

Gateway validates authentication and routes to appropriate service

3

Service Processing

Backend service processes request and interacts with database

4

Response

Response flows back through Gateway to frontend application

Service Status

All backend services are operational and ready for use. Swagger/OpenAPI documentation is available on the Gateway service.

Gateway API

Port 8080
Active

Single entry point for all API requests. Handles authentication, routing, and rate limiting.

Core Service

Port 8081
Active

Core banking operations built on Apache PayWallet. Handles clients, loans, savings, and accounting.

Tenant Manager

Port 8082
Active

Multi-tenant management and provisioning. Handles tenant configuration and platform administration.

ROSCA Service

Port 8083
Active

ROSCA (Rotating Savings and Credit Association) operations. Group management and contribution tracking.

FinOps Service

Port 8084
Active

Financial operations modular monolith. Consolidates payments, billing, reconciliation, notifications, credit bureau, POS, and vouchers.

Multi-Tenant Architecture

PayWallet supports multiple organizations with complete data isolation.

Subdomain-Based Routing

  • Platform Admin: localhost:3000
  • Tenant Access: {tenant}.localhost:3000
  • Default Tenant: default.localhost:3000

Database Isolation

  • One database per tenant (e.g., paywallet_default)
  • Tenant metadata in shared database (paywallet_tenants)
  • Complete data isolation between tenants

Built-in platform capabilities

Core attributes that apply across lending, ROSCA, and FinOps services.

Multi-Currency
Bank-Grade Security
Real-Time Data
API-First
Multi-Tenant
Compliance Ready
ROSCA Native

Package platform suites in weeks not months

Deploy a modern lending stack plus PayWallet-specific ROSCA and FinOps operations as modular suites for each tenant and market.

Platform Core
Origination Suite
Servicing Suite
Collections Suite
Payments Suite
FinOps Suite
ROSCA Suite
Reporting & Compliance Suite
Installment Loans
Lines of Credit
Credit Cards
Merchant Cash Advance
Asset-Backed Loans
Lease
Platform Core
Origination Suite
Servicing Suite
Collections Suite
Payments Suite
FinOps Suite
ROSCA Suite
Reporting & Compliance Suite
Installment Loans
Lines of Credit
Credit Cards
Merchant Cash Advance
Asset-Backed Loans
Lease
Platform Core
Origination Suite
Servicing Suite
Collections Suite
Payments Suite
FinOps Suite
ROSCA Suite
Reporting & Compliance Suite
Installment Loans
Lines of Credit
Credit Cards
Merchant Cash Advance
Asset-Backed Loans
Lease
Multi-Currency Support
Real-Time Accounting
Automated Collections
Custom Workflows
Regulatory Reporting
API Integrations
Multi-Tenant Architecture
Role-Based Access
Tenant Governance
ROSCA Native Operations
FinOps Admin Control Plane
Service Control Plane
Multi-Currency Support
Real-Time Accounting
Automated Collections
Custom Workflows
Regulatory Reporting
API Integrations
Multi-Tenant Architecture
Role-Based Access
Tenant Governance
ROSCA Native Operations
FinOps Admin Control Plane
Service Control Plane
Multi-Currency Support
Real-Time Accounting
Automated Collections
Custom Workflows
Regulatory Reporting
API Integrations
Multi-Tenant Architecture
Role-Based Access
Tenant Governance
ROSCA Native Operations
FinOps Admin Control Plane
Service Control Plane

Learn More

Explore our API documentation and integration guides to start building with PayWallet.