Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Multi Source Inventory (MSI) in Magento 2

7,186 views

Published on

Multi Source Inventory (MSI) community project for Magento 2 made on MagentoLive UK 2017

MSI project - https://github.com/magento-engcom/msi
MSI project wiki - https://github.com/magento-engcom/msi/wiki
MSI project board - https://github.com/magento-engcom/msi/projects/1

Published in: Engineering
  • Be the first to comment

Multi Source Inventory (MSI) in Magento 2

  1. 1. Page | 2© 2017 Magento, Inc. Multi-Source Inventory
  2. 2. Page | 3© 2017 Magento, Inc. Igor Miniailo Magento Architect, Multi Source Inventory Community Engineering Team Eugene Tulika Magento Architect, Community Engineering Team
  3. 3. Omnichannel
  4. 4. Page | 5© 2017 Magento, Inc. Source: https://www.sparkpay.com/blog/What-is-omni-channel-retail
  5. 5. Page | 6© 2017 Magento, Inc. It’s impossible to build Omnichannel without Global Inventory
  6. 6. Page | 7© 2017 Magento, Inc. Split the inventory between the sources within one Magento installation. One Magento Installation
  7. 7. Inventory Architecture
  8. 8. Page | 9© 2017 Magento, Inc. Command/Query Responsibility Segregation (CQRS)
  9. 9. Page | 10© 2017 Magento, Inc.
  10. 10. Page | 11© 2017 Magento, Inc. Source Stock Sales Channels relation
  11. 11. Page | 12© 2017 Magento, Inc.
  12. 12. Inventory Source Selection During Checkout
  13. 13. Page | 14© 2017 Magento, Inc. Single Inventory Source Checkout Request items Ship items Shipping Address Source
  14. 14. Page | 15© 2017 Magento, Inc. Multiple Inventory Sources Checkout Source n Source 1 OrderItems 2 1 4 3 2 1 Shipping Address…
  15. 15. Page | 16© 2017 Magento, Inc. Selection of Inventory Sources • Match products to the Inventory Sources in the optimal way • Extensible and customizable – Different strategies possible for optimization 2 1 4 3 2 1 Source 1 Source n Source 2 …
  16. 16. Possible Strategies • Use first Inventory Source which has enough inventory to ship all order items • Use Inventory Source which is cheapest way for the customer and/or for the merchant • Use Inventory Source which will balance the load between sources, improve warehouse utilization • etc First by Priority Cheapest Warehouse Utilization etc
  17. 17. Inventory Source Selection Interfaces
  18. 18. Page | 19© 2017 Magento, Inc. Shipping Rate Calculations • Every source linked to the carriers. • Shipping Method available on checkout are determined based on the source carriers • If there are more than one shipping method needed to ship all items, the price of the shipping is a sum of all shipping methods • It is possible to use with the flat rate shipment 2 1 4 3 2 1
  19. 19. Page | 20© 2017 Magento, Inc. Order Fulfillment With Multiple Sources
  20. 20. Building Feature With the Community
  21. 21. Page | 22© 2017 Magento, Inc. Community Collaboration . Kanban board and Wiki are on the GitHub
  22. 22. Page | 23© 2017 Magento, Inc. Write a note to engcom@magento.com to join #msi slack channel Slack to Exchange ideas
  23. 23. Page | 24© 2017 Magento, Inc. • Decomposing the large feature into small stories – Investigation of the needed APIs – Documentation on the integration points and needed refactoring – Clarification of the requirements with PO and architecture council – Continuous work with the team on tasks and stories • Guiding Developers: – Onboarding on the project – Continuous discussions in the slack and web conferences – Weekly meetings – Status updates Community Engineering Architects Decomposing Stories, guiding Developers
  24. 24. Page | 25© 2017 Magento, Inc. • Fun work with the core platform team • Feature requested by number of clients • Different tasks: – some are small enough to do in couple days – some are big enough to be significant feature by itself • Footprint in the Magento Core Get engaged: engcom@magento.com Participating in Community Project
  25. 25. Page | 26© 2017 Magento, Inc. 2 pull requests with the new features for MSI #MLUK17 Contribution Day @davidselo David Selo davidselo @anna_styczen Anna Styczen astyczen @kieronmthomas Kieron Thomas kieronthomas @jonfres Jose Antonio de la Cruz jonfres
  26. 26. Page | 27© 2017 Magento, Inc. Challenges • Build CQRS architecture which will segregate Virtual Stocks from Physical ones. • Efficient Source Selection Algorithms. Algorithm which assigns the particular inventory to the order item. “Minimal Delivery Cost” should not impact checkout performance drastically. • Performance. Sync vs Async – Algorithm – Synchronization with PIM and ERP • Magento as a global inventory control system. Reservation API.
  27. 27. Community Engineering Team: Igor Miniailo @iminyaylo iminiailo@magento.com Eugene Tulika @vrann etulika@magento.com Thanks y’all!

×