Connecting back-office requests and approvals
A shared request queue with ERP synchronization, vendor integrations, approval routing and an audit history.
- Client
- Operations team (NDA)
- Industry
- Back-office operations
- Services
- Custom software, Digital transformation
- Ingest
- ERP sync + vendor webhooks
- Routing
- Automatic approval or human review
- Queue
- Dashboard instead of a spreadsheet
An operations team copied requests and approval statuses between an ERP, a vendor portal and spreadsheets. Staff used email to follow up on decisions and identify where a request was waiting.
The problem
The ERP had to stay in place, and its API was incomplete and rate-limited. Some requests could follow fixed rules; exceptions and higher-value decisions needed an experienced reviewer. The rollout also had to fit the team’s quarterly review schedule.
What we built
- Data synchronization: a Node.js service that imports ERP records into PostgreSQL and logs changes.
- Routing rules: requests are approved automatically when agreed criteria are met, or sent to a reviewer or escalation queue.
- Operations dashboard: request lists, record details, approve/reject controls with comments, and a daily digest of automated activity.
- Vendor adapters: incoming webhooks mapped to the shared record format.
Storing imported records locally lets the dashboard query a consistent schema without depending on an ERP request for every screen.
How we approached it
The team mapped routine requests, exceptions and higher-risk decisions before defining the routing rules. Data synchronization and the shared queue came first; automated approvals followed once staff could review the records.
Historical spreadsheet data was validated in staging. Incomplete records were marked for review. The dashboard ran alongside the existing process while staff compared counts and checked exceptions.
Automated actions record a reason in the audit log. Requests the rules cannot classify go to a human reviewer, and the daily digest shows staff what the system handled.
Delivered system
The team works from a shared queue of ERP and vendor records, with decisions and their reasons recorded alongside each request.
Discuss your operations workflow or explore custom software development.
Built with
- Next.js
- Node.js
- PostgreSQL
- TypeScript