June 2026/Fullstack/course

ERP TradeFlow

This project started as an assignment for an Enterprise Systems course. The goal was to build a complete ERP application that handled Order-to-Cash, Procure-to-Pay, and Inventory Management. It had to strictly adhere to a predefined BPMN specification. We used Next.js, Prisma, and MongoDB to build a system where the digital process matched the theoretical models one-to-one. It forced a deep look into how real world business roles and authorizations translate into rigid state machines in code.
ERP TradeFlow mockup
A system is only as good as its architecture. The overarching process dictated the entire implementation. Every module had to tie back into this flow. For the sales side, the Order-to-Cash pipeline required precise role switching. A sales representative opens the order, but only a manager can approve it. This separation of concerns ensures operational integrity.
Order to Cash BPMN large
On the procurement side, the Procure-to-Pay process mirrors this strictness. It manages how purchase orders flow through the warehouse staff and accounting. It ensures cash only leaves the business when inventory is verifiably received.
Procure to Pay BPMN large
Finally, tying it all together is the Inventory Management process. It acts as the central ledger for physical goods, sitting directly between sales fulfillment and procurement receiving.
Inventory Management BPMN large
Building this taught me that enterprise software is less about clever algorithms and more about relentlessly enforcing business rules. In the end, the lecturer was highly satisfied with how strictly the system adhered to the theoretical models.