Back to portfolio
Ongoing100% SoloBackend / Integration

Excalibur Integration Middleware

Educational ERP ↔ SAP Business One — NestJS API Middleware

A NestJS backend middleware I designed and built 100% solo, bridging the Excalibur educational ERP with SAP Business One. It handles the full financial data pipeline — student records, down-payments, payments, revenue invoices, credit notes, GL accounts, and bank reconciliation — running in production on a PM2-managed Linux server.

NestJS REST API
SAP B1 Service Layer
MongoDB Atlas
PM2 · Linux

My Role

I am the sole developer of this middleware — 100% of the architecture, implementation, and deployment. I designed the SAP Business One integration layer, built all API endpoints, set up the PM2 production environment, and maintained the system across multiple release versions (V1.0.0 → V1.1.1).

Modules Built

Student Management

Create, update, and retrieve student records in SAP Business One

Bidirectional sync of student profiles and enrolment data

Master data management for GL accounts and reference data

Payment Processing

Down-payment creation and cancellation with foreign currency support

Incoming payment recording and reconciliation

Outgoing payment handling

Unprocessed and cancelled payment tracking

Invoicing & Credit Notes

Revenue invoice generation synced to SAP B1

Credit note creation and management

GL account mapping for financial accuracy

Infrastructure & Auth

JWT + RBAC authentication layer

PM2 process management for production stability

AWS S3 file storage integration

Office365 SMTP email notifications

MongoDB audit logging for all sync operations

NestJS Throttler rate limiting (later optimised)

Tech Stack

Framework

NestJS 10Node.jsTypeScript

Database

MongoDBMongoose

Integration

SAP Business One (Service Layer)Axios

Auth & Security

JWTPassport.jsArgon2Throttler

Infrastructure

PM2AWS S3Office365 SMTP

Dev

NestJS SwaggerNestJS ScheduleCache Manager

Designed & built 100% by Nisala Nadeera Kudaligamage — Full-Stack Software Engineer