Vendor Management Platform
Supplier onboarding, compliance and invoicing on top of SAP.
- Client
- Mid-size manufacturer (NDA)
- Role
- Lead product engineer
- Year
- 2025
- Industry
- Manufacturing
Problem
Supplier data lived in inboxes, not in SAP
Onboarding a supplier meant a chain of emails: a registration form as an Excel attachment, bank details in a PDF, certificates sent whenever someone remembered. Procurement copied every field into SAP by hand, and nobody owned the question of when a certificate would expire.
- Fwd: Supplier registration form (v3).xlsxProcurement, via email
- Re: Re: Updated bank details, please confirmSupplier, via email
- Is this ISO certificate still valid?Compliance, via chat
- Vendor master request: still pending in SAPProcurement, via SAP GUI
Research
Mapping the real process before drawing a screen
Discovery ran alongside procurement, finance and compliance. The goal was to find where supplier data entered the business, who touched it on the way, and where SAP had to stay the only source of truth.
What we learned
- SAP had to remain the system of record. The portal could propose changes, but never bypass SAP's own validation.
- Most of the delay came from waiting on missing documents, not from approvals.
- Suppliers were happy to self-serve as long as the checklist told them exactly what was missing.
- Compliance needed expiry dates as data they could act on, not as text inside a PDF.
User journey
From first invite to a compliant, payable supplier
A composite persona built from the interviews, following one supplier through onboarding.
BeforeWith the product
- 1
Invite the supplier
Before: Emailed a spreadsheet form and waited for it to come back complete.
Now: Sends a portal invite; the supplier gets a checklist tailored to their category.
- 2
Collect documents
Before: Chased certificates and bank letters across separate threads.
Now: Uploads are checked on arrival and anything missing stays visible to the supplier.
- 3
Verify the data
Before: Retyped fields from PDFs and compared them by eye.
Now: Fields are pre-filled with a confidence level; only uncertain ones need her.
- 4
Approve and create in SAP
Before: Forwarded to finance for approval, then keyed the vendor into SAP.
Now: Role-based approval in the portal, then the vendor is created in SAP automatically.
- 5
Stay compliant
Before: Found out about expired certificates during audits.
Now: Expiry dates drive reminders to the supplier before documents lapse.
Solution
A supplier portal with SAP as the source of truth
Suppliers onboard themselves through a guided checklist. Procurement works from one console where every supplier, document and approval is visible. The portal writes to SAP through OData with the same validation SAP applies, and reads changes back so both sides always agree.
How the work flows
Switch between the old process and the one the product runs.
- 1
Portal invite
The supplier gets a checklist tailored to their category.
AutomatedOwner: Portal - 2
Supplier self-serves
Uploads are validated on arrival; gaps stay on the checklist.
Person, in productOwner: Supplier - 3
AI extraction
Fields and expiry dates are read with a confidence level.
AutomatedOwner: Extraction worker - 4
Review flagged fields
Only low-confidence or rule-breaking fields need a person.
Person, in productOwner: Procurement - 5
Approve in one place
Finance approves with the full record and history in view.
Person, in productOwner: Finance - 6
Create in SAP
Posted through OData; the SAP vendor number is written back.
AutomatedOwner: Sync worker - 7
Expiry reminders
Suppliers are reminded before a certificate lapses.
AutomatedOwner: Scheduler
Architecture
Built around SAP, not beside it
A Next.js front end talks to a Node.js API that owns every business rule. Slow or unreliable work (extraction, SAP writes, reminders) runs on Redis-backed queues, so the interface stays fast and failures can be retried. PostgreSQL holds portal state and the audit log; SAP S/4HANA stays the system of record for vendor master data.
- Interface
- Service
- AI
- Data and queues
- External system
Interfaces
Application
Workers and storage
External systems
Portal API
Owns the business rules: onboarding checklists, approval routing, permissions and the audit log. Every write goes through it.
Why it's built this way
One API for both front ends, so each rule is enforced once rather than duplicated in two interfaces.
Connections
UI
Two audiences, one design language
Suppliers get a calm, guided flow that works on a phone. Procurement gets a dense, keyboard-friendly console built on saved views. Both share the same components, so a status means the same thing everywhere.
Development
Built to be changed safely
Development ran in short cycles with a demo at the end of each, against an SAP quality system rather than production. The priority was making SAP integration boring: typed, tested and observable.
Stack
- Frontend
- Next.jsTypeScript
- Backend
- Node.jsRedis
- Data
- PostgreSQL
- AI
- OpenAI
- Integration
- SAP OData
- Delivery
- Docker
AI
AI pre-fills, people decide
The extraction worker reads certificates and invoices with a model that must answer in a fixed JSON schema. Every field comes back with a confidence level. Anything below the threshold, or anything that breaks a business rule, is routed to a person instead of being saved silently.
Certificate extraction
Globex Certification Services
Certificate of registration
- This certifies that the quality management system of
- Northwind Components Ltd
- has been assessed and found to conform to
- ISO 9001:2015
- Certificate number QMS-48213
- Valid until 03/04/2027
- Scope: machining and assembly of precision parts
Extracted fields
- Supplier
- Standard
- Certificate number
- Expiry date
- Scope
- 1
Classify the upload
Detects whether a file is a certificate, bank letter or invoice, and which checklist item it satisfies.
- 2
Extract to a schema
The model returns typed fields, such as certificate number, issuer and expiry date, validated against a JSON schema.
- 3
Score confidence
Each field is scored from model signals plus rule checks like date formats and tax ID checksums.
- 4
Route exceptions
Low-confidence or conflicting fields go to the review queue with the source region highlighted.
Guardrails
- No field reaches SAP without passing validation and, where the rules require it, a human approval.
- Only the pages needed for extraction are sent to the model, never other suppliers' data.
- Every AI suggestion is logged with the reviewer's decision, so accuracy can be checked over time.
Integration
Four systems, each with a clear owner
Each integration has one job and one direction of truth. SAP owns vendor master data, Azure AD owns identity, and the portal owns the onboarding process in between.
SAP S/4HANA
OData, Business Partner API
Creates and updates suppliers as business partners, and polls for changes made in SAP so both sides stay reconciled.
Two-wayAzure AD
OpenID Connect
Single sign-on for internal users; group membership maps to procurement, finance and compliance roles.
InboundSendGrid
REST API
Invites, reminders and approval requests from versioned templates, sent from background jobs.
OutboundS3 document storage
Signed URLs
Encrypted document storage with direct browser uploads and short-lived download links.
Two-way
Performance
Fast where people wait, patient where systems do
The console has to feel instant while SAP and the model take their time. The approach: keep slow work off the request path, and make list views cheap to query.
Outcome
Suppliers onboard themselves, and SAP stays clean
Procurement stopped acting as a relay between suppliers and SAP. Suppliers see exactly what's missing and fix it themselves, vendor data is entered once and synced, and compliance works from dates rather than PDFs. The audit log means any change to a supplier can be traced back to a person or a job.
What's next
Next on the roadmap: supplier scorecards built from delivery and quality data that already lives in SAP.
What changed
- Suppliers onboard themselves instead of emailing forms back and forth
- Vendor data is entered once and synced to SAP, not re-keyed
- Expiring compliance documents are flagged before they lapse
Outcomes are described qualitatively. Client figures stay with the client.
Have a similar project?
Whether it's a workflow that still runs on email and spreadsheets or a system you need to integrate with, tell me what you're building. I reply within one business day with questions and a suggested first step.