Enterprise Procurement Platform for Brown & Carroll
Eliminated manual email/spreadsheet procurement: all activity captured in structured, auditable workflows

Background
Brown & Carroll managed procurement through a combination of email chains, spreadsheets, and manual document tracking. This created gaps in the audit trail, approval bottlenecks, and no single source of truth for outstanding purchase orders or invoices. When a supplier queried an order status, finding the answer meant searching several inboxes and a spreadsheet that was often a version behind reality, and every handoff between requisition, approval, and payment was a place a document could get lost.
What We Built
A full-lifecycle procurement platform covering:
- Purchase Requisitions
- staff raise requests with line items, cost codes, and supporting docs
- Approval workflows
- configurable sign-off chains before a PO is issued
- Purchase Orders
- auto-generated PDF POs emailed to suppliers via AWS SES
- Goods Receipt Notes (GRN)
- warehouse staff confirm delivery against the PO
- Invoice processing
- invoices matched against GRNs and routed through a finance sign-off chain
- Finance issuance
- final approval triggers payment records and closes the transaction
Architecture
Angular 12 frontend with Kendo UI components, NestJS 8 REST API, and MongoDB. Documents and attachments are stored in AWS S3, so a PO, GRN, and its supporting paperwork stay linked and retrievable years later. Transactional emails (PO dispatch, approval notifications) are sent via AWS SES. Containerised with Docker and deployed on DigitalOcean, chosen for straightforward scaling as order volume grew.
Results
Procurement tracked across email chains, spreadsheets, and manual document tracking
Every requisition, PO, GRN, and invoice captured in one auditable workflow
Outcomes & Lessons Learned
- Eliminated manual email/spreadsheet procurement: all activity captured in structured, auditable workflows
- Automated PO generation and supplier email dispatch on approval
- Multi-tier invoice sign-off chain with a finance issuance stage, reducing payment delays
- Full audit trail from requisition through to payment on every transaction
- Now handles over 2,000 purchase orders a month across multiple departments
Procurement cycles that previously relied on back-and-forth email became self-contained within the platform with a full audit trail at each stage. The structured GRN-to-invoice matching step in particular reduced disputed invoices from suppliers, since a mismatch surfaces automatically instead of after an invoice has already been queried.
Questions, answered.
The things people ask us about this project. If yours isn't here, ask us directly, we reply like humans.
Ask us anything→How are purchase orders generated and sent to suppliers?
Once a requisition clears its approval chain, a PDF purchase order is auto-generated and emailed to the supplier via AWS SES, without anyone manually drafting or sending it.
How does the platform prevent invoice disputes with suppliers?
Invoices are matched against Goods Receipt Notes before payment, so a mismatch between what was ordered, received, and invoiced surfaces automatically instead of after a supplier has already queried it.
What scale does this platform actually run at?
It now handles over 2,000 purchase orders a month across multiple departments, with every requisition, PO, GRN, and invoice captured in one auditable workflow.
Where are documents and attachments stored?
In AWS S3, so a purchase order, its goods receipt note, and supporting paperwork stay linked and retrievable years later, not scattered across email attachments.
Why was DigitalOcean chosen for deployment?
For straightforward scaling as order volume grew, containerised with Docker, which kept infrastructure manageable as the platform moved from a smaller pilot to full departmental rollout.
Ready to craft tomorrow, today?
Where innovation meets execution, and ideas evolve into impactful solutions. Book a free consultation, no strings attached.