Tailored Solutions
Drawing on its fintech application development services, Mejora Infotech rebuilt the platform on a modern Java stack and replaced the monolith with a microservices architecture, keeping the product experience stable throughout.
Migration from PHP to Java
The platform was rebuilt using Java with Spring Boot. Java was selected for its performance under high transaction volumes, its support for multi-threading, concurrency and asynchronous processing, its suitability for complex financial workflows, and its strong typing and structured error handling, which reduce runtime risk. The maturity of the ecosystem and the availability of experienced financial application developer talent also made the platform easier to staff and maintain over the long term.
Decomposition into 11 microservices
Moving to Java addressed the limitations of the underlying technology, but the monolithic structure itself remained a constraint. The platform was therefore decomposed into 11 independently deployable microservices, each owning a distinct business capability. Service boundaries were drawn around business capabilities rather than technical layers, which kept the number of moving parts manageable for the team while still delivering independent deployment. This gave FundTap independent scaling of transaction-heavy services such as funding and payment processing, fault isolation so a failure in one service does not bring down the platform, faster and lower-risk releases, and the ability to upgrade or replace individual services without another full-platform rewrite.
Each service manages its own PostgreSQL database on Amazon RDS rather than sharing a single schema. This removed the data coupling that had made changes risky in the monolith and allowed each service to evolve its own data model.
Communication and event streaming
REST APIs are used for client, third-party and external integration traffic. gRPC, based on Protocol Buffers, handles internal service-to-service communication for its performance and streaming support. Apache Kafka provides the asynchronous messaging backbone, letting services publish and consume events without direct dependencies on one another and supporting event-driven workflows and real-time data pipelines.
Rebuilt integration layer
The connections to Xero, MYOB, QuickBooks and Reckon were rebuilt as part of the new architecture, covering invoice synchronisation, organisation and contact data, profit and loss and balance sheet reporting, bank transactions, payments and invoice writeback. Beyond accounting, the rebuild carried the platform's wider integration set: APLYiD for identity verification and KYC checks at onboarding, Annature for digital signing of loan documents, and HubSpot for sales pipeline and customer records. Together these support a single continuous flow from first enquiry through identity verification, signed agreement and funded invoice.
Cloud-native deployment on AWS
Services are containerised with Docker and orchestrated on Kubernetes, with images stored in Amazon ECR. AWS API Gateway provides a single, secured entry point for API traffic. The supporting infrastructure uses Amazon EC2, Amazon RDS, Amazon S3, Route 53, Elastic Load Balancing, Auto Scaling, AWS Secrets Manager, AWS Certificate Manager and Amazon CloudWatch. Redis provides server-level caching, and AWS QuickSight supports business intelligence and data visualisation.
Automated build and release pipeline
Source control runs on Bitbucket with separate development, staging and master repositories. Webhooks trigger automated builds on commit through Jenkins and AWS CodeBuild, running static analysis and unit tests with defined thresholds for code coverage and pass rate. Container images are tagged by commit ID, pushed to ECR, and rolled out to Kubernetes as rolling updates, giving deployments without downtime and a clear path back to any previous build.
Security built into the design
Security was treated as a design requirement rather than a hardening step. Credentials are hashed using algorithms intended for password storage, secrets are held in AWS Secrets Manager rather than in configuration, database access uses parameterised queries and query bindings, file upload handling is constrained, and TLS certificates are managed centrally. Rotation of keys and secrets was planned into operations from the start.
The platform runs across separate development, QA, staging and production environments, each with its own isolated data stores, so changes can be validated at every stage before reaching customers.