Back to all projects
Order Management

About the project
Summary and purpose
This project implements an Order Management System using a microservices architecture in Go. It consists of five distinct microservices that communicate and work together to complete a user's order.
Microservice overview
How all pieces works together
Orders Service
• Validate Order Details → Talk with stock service
• CRUD of orders
• Initiates the Payment Flow → by sending an event
Stock Service
• Handle Stock
• Validates order quantities
• Return items as menu
Menu Service
• Store items as menu
Payment Service
• Initiates a payment with a 3rd part provider
• Produces an order paid/cancelled event to orders, stock and kitchen
Kitchen Service
• Long running process of a "Simulated kitchen staff"