Context
LightForce needed a client-facing portal where businesses could register, manage payment methods and view invoices without relying only on emails or separate accounting access.
Case study / LightForce
LightForce needed a secure way to connect clients, invoices and payment workflows. MT Software delivered a full-stack PWA that gives customers clearer invoice visibility while the backend coordinates Xero, Stripe and GoCardless-ready payment workflows behind the scenes.
Authorized invoice events enter the backend as billing triggers for customer and payment review.
The API matches customers, stores invoice state, checks payment methods and routes payment handling.
Clients and admins see invoice status, payment state and required actions in a protected portal.
Overview
LightForce needed a dedicated portal for client payments, invoice visibility and backend billing automation connected to accounting and payment provider events.
LightForce needed a client-facing portal where businesses could register, manage payment methods and view invoices without relying only on emails or separate accounting access.
The workflow had to connect Xero invoice events, client records, payment terms, Stripe cards, prepared GoCardless support and asynchronous webhook updates without exposing administrative controls.
MT Software structured a Vue/Quasar PWA backed by a NestJS API for authentication, invoice mirroring, customer management, payment method handling and billing orchestration.
Outcome snapshot
The case focuses on structural outcomes: centralized client access, payment status synchronization and a maintainable backend layer for billing automation.
Clients can access issued invoices, due dates, balances, payment status and payment method workflows in one portal.
Xero and payment provider events feed the backend so local invoice and payment state can stay aligned.
Admin and client capabilities are separated so customer access, payment terms and billing actions remain controlled.
Solution design
The solution focused on one practical workflow: help clients understand invoice status, keep payment details current and give LightForce a backend capable of coordinating billing events.
Authenticated registration, login, profile access and protected routes create a secure customer portal foundation.
Clients can review invoice numbers, due dates, paid amounts, outstanding balances, line items and status badges.
Stripe card management and prepared GoCardless bank-link support give the portal structured payment method handling.
NestJS services mirror Xero invoices, evaluate customer setup, process payment state and record operational errors.
Billing model
The visual model shows how invoice events move through customer matching, payment method review, provider handling and client-facing status updates.
Xero trigger
Xero webhooks act as triggers for invoice lookup, local mirroring and customer matching.
Payment state
Stripe and prepared GoCardless flows support payment state updates through signed webhooks.
Delivery path
The work moved from workflow mapping to portal implementation, API integrations, webhook handling and operational handoff for a portable VPS deployment model.
Map client registration, Xero invoice events, payment terms, customer matching and required portal permissions.
Build authenticated client screens for profile access, invoice visibility, payment methods and admin client management.
Implement NestJS modules for Xero, Stripe, GoCardless-ready flows, invoice mirroring and payment status updates.
Document the Nginx, PM2, Node.js, SQLite and VPS runtime model needed to rebuild the environment.
Technical direction
The technical direction focused on authenticated portal access, signed webhook handling, invoice state mirroring, payment provider integration and a portable deployment model using Nginx, PM2 and Node.js.
Project takeaway
“The strongest value of the project was not just a customer portal, but a billing workflow that connects invoice events, payment methods and operational visibility.”
Let’s talk about driving your project to success!