Inspiration
Order fulfillment is one of the most fragmented processes in business. Orders arrive from multiple channels, inventory lives in siloed databases, payments require manual verification, and shipping involves juggling multiple carriers. We wanted to build a solution that treats the entire order-to-delivery journey as a single, orchestrated flow — where the right actor (human, robot, agent, or API) handles each step at the right time, with clear exception paths when things go wrong.
What it does
O2D is a production-ready, end-to-end order fulfillment workflow built with UiPath Maestro BPMN. It orchestrates the complete order lifecycle: Order Validation — Automated checks on pricing, quantity, and customer data Inventory Check — Real-time API call to Supabase to verify stock levels Payment Processing — Secure transactions via Stripe API Quality Check — Human-in-the-loop approval before shipping Shipping & Tracking — Multi-carrier rate optimization through Easyship API Customer Notifications — Automated emails via Resend API Exception Handling — Out-of-stock, payment failures, and quality issues all have dedicated resolution paths The workflow intelligently routes orders through happy paths and exception paths, ensuring nothing falls through the cracks.
How we built it
- UiPath Maestro BPMN as the orchestration layer, modeling the entire flow with tasks, gateways, and events
- UiPath API Workflows for each integration (CheckInventory, ProcessPayment, ShipOrder, SendNotification)
- Supabase as the inventory database, queried via REST API
- Stripe API for payment processing with try/catch error handling
- Easyship API for real-time carrier rate comparison and shipment creation
- Resend API for transactional email delivery
- Human tasks embedded in the BPMN for quality approval and exception review
- UiPath Automation Cloud for deployment and execution
Challenges we ran into
- Integrating external APIs with BPMN — Mapping workflow inputs/outputs between Maestro BPMN tasks and API workflows required careful schema alignment.
- Inventory lookup patterns — We initially explored UiPath Queues for inventory checks, but realized a simple database query was the right tool for the job.
- Autopilot erased the whole workflow when asked to do small changes in a specific task. Hopefully, it didn't take much time to rebuild the whole workflow by adding inputs and outputs manually to avoid any setback.
Accomplishments that we're proud of
- A fully working, end-to-end workflow with real API integrations — not mocks or simulations
- Production-grade exception handling with dedicated paths for out-of-stock, payment failures, quality rejections, and delivery issues
- Shipping a solution that could realistically be deployed in a small-to-medium e-commerce operation.
What we learned
- BPMN is powerful for orchestration — it makes complex multi-actor flows visible and maintainable in a way that pure code cannot
- Not every task needs AI — inventory lookup is a database query, not an LLM call. Choosing the right tool matters more than using the trendiest one
- API integration is 80% of real automation — the orchestration layer is only as good as the systems it connects to
- Exception paths are where enterprise value lives — happy paths are easy; handling failures gracefully is what separates demos from production systems
- UiPath Autopilot is a valuable accelerator — it helped us rebuild a cleaner foundation when we got stuck in iteration loops.
What's next for O2D - Order-to-Delivery Automation Workflow
- Real-time inventory sync — Replace the Supabase query with event-driven updates from warehouse management systems
- Customer self-service portal — Expose order status and re-delivery scheduling to customers via a web interface
- ERP integration — Connect to SAP, Oracle, or NetSuite for enterprise-grade order and invoice management
Built With
- bpmn-2.0
- cloud
- easyship
- javascript
- json
- resend
- rest-api
- stripe
- supabase
- uipath
- uipath-agent-builder
- uipath-automation-cloud
- uipath-maestro

Log in or sign up for Devpost to join the conversation.