Northbound — B2B Order Management Platform
Full-stack UBL 2.1 e-procurement platform with invoicing, tax, and reporting
Demo coming soon
Overview
Northbound is a full-stack B2B e-procurement platform built around the UBL 2.1 Order standard. It supports authenticated order CRUD, UBL XML generation, invoice generation with country-based tax calculation, recurring order templates, despatch advice (DevEx) integration, and aggregated party reports for buyer spend and seller revenue. The React frontend ships with multi-language support (EN/ES/FR/DE/ZH) and multi-currency handling via live exchange rates. As Scrum Master, I drove sprint planning, backlog refinement, and Jira issue tracking across the full project lifecycle while contributing directly to the codebase.
Architecture
The backend is an Express + TypeScript API backed by Supabase (PostgreSQL), with JWT authentication and a standard JSON response envelope for consistent success/error handling. Endpoints are dual-versioned (`/orders` and `/v1/orders`) for backward compatibility and documented end-to-end with Swagger UI at `/docs`. Invoice generation integrates an external exchange-rate API for live FX conversion. The React frontend consumes the API and is deployed to Vercel; the backend runs on Render.
Key Challenges
- •Implementing the UBL 2.1 XML schema correctly for B2B procurement compliance
- •Designing the invoice/tax module to handle country-specific rates and live FX conversion
- •Coordinating a 5-person team across sprints while maintaining individual engineering contributions
- •Keeping two API versions consistent while evolving the response envelope
- •Modelling recurring order templates so they generate consistent UBL output over time
What I Learned
- •Deep understanding of enterprise document standards (UBL 2.1) and B2B procurement workflows
- •Practical Agile/Scrum leadership — running standups, sprint retros, and backlog grooming
- •OpenAPI 3.0 / Swagger design-first API development with versioned routes
- •Building i18n and multi-currency support into a real product surface
- •Splitting a full-stack app across Vercel (frontend) and Render (backend) deployments
Future Improvements
- •Add support for UBL 2.1 Credit Note and additional document types
- •Expand the party reporting dashboard with charts and exports
- •Implement webhook delivery for order and invoice status events
- •Add multi-tenant authentication and rate limiting