Integrating with Spryker OMS
Edit on GitHubOrder Management System (OMS) in Spryker is a built-in workflow engine that manages the lifecycle of an order - from placement to delivery. It defines each step (for example payment, shipping, cancellation) as part of a process, with clear transitions and conditions.
For third-party integrations, you can primarily use OMS for event-driven and API-driven integrations.
Event-driven integration (OMS as the source)
- OMS can be used to publish events (for example Order.Paid, Order.Shipped) when an order transitions to a specific state.
- Your 3rd party integration can then subscribe to these events (for example via a message queue like RabbitMQ) to trigger actions in an external system (for example update ERP, notify logistics partner, send customer email).
API-driven integration (OMS as the target)
- You can expose Glue API endpoints that trigger specific OMS commands or state transitions (for example set order status to shipped, initiate return).
- This allows external systems (for example a Warehouse Management System, a Call Center application) to update the order status or trigger actions within Spryker’s OMS.
- You can also extend the OMS process with custom states and transitions specifically designed for your 3rd party’s workflow.
Further reading
Thank you!
For submitting the form