Legal
Copyright © 2016 Magento, Inc.; All Rights Reserved.
Magento® and its respective logos are trademarks, service marks, registered trademarks, or registered service marks of Magento, Inc. and its affiliates. Other trademarks or service marks contained in this presentation are the property of the respective companies with which they are associated.
This presentation is for informational and discussion purposes only and should not be construed as a commitment of Magento, Inc. or of any of its affiliates. While we attempt to ensure the accuracy, completeness and adequacy of this presentation, neither Magento, Inc. nor any of its affiliates are responsible for any errors or will be liable for the use of, or reliance upon, this presentation or any of the information contained in it. Unauthorized use, disclosure or dissemination of this information is expressly prohibited.
Magento Commerce
Order Management
Integration
Balance Internet
Aaron Chidley
Magento Chief Architect
Merchant Challenges are Increasing
•
Growth
– Merchants need a platform that can grow with them
–
In functionality
–
In extensibility
–
In performance / scalability
–
In reliability
•
Brand differentiation
– need to maintain/grow public brand identity
•
Cost efficiencies
– need to keep reducing costs
•
Systems are multiplying
– a constant demand to keep up
•
Multiple vendors
– need to interconnect multiple, diverse,
“Magento” has Grown
Magento
Digital
Commerce
Magento
Commerce
Order
Management
Magento
Cloud
Magento
Marketplace
Extend Deploy, Manage Magento Shared Service DefinitionsBut More is Needed
PIM
Warehouse
Management
Systems
Carrier
Integrations
ERP
Systems
Logistic
Systems
Tax
Gift Card
Providers
MDC vs MCOM – Different Extension Strategies
•
Public web stores need engaging, branded user experiences
–
Deep code integration
–
HTML, CSS, JavaScript, …
•
Backend order management systems do not – they need
integrations
–
Clearly defined data model and integration points
The Magento Vision
•
Replicating the openness of MDC with the MCOM SaaS model
•
Enablement via shared service definitions
–
Merchants – standardized solutions
–
Solution partners – simpler integration of different technologies
–
Extension developers – MCOM extensions via Magento Marketplace
Magento Shared Service Definitions
Open, extensible specifications
rather than
open, extensible code
Set of data structure definitions and
communication patterns for connecting COM,
RAP, and DC – default is JSON over AMQP
Extensible per installation or by marketplace
extension to cope with custom metadata
Extension Model
RabbitMQ
MDC (web store) MCOM extensions
Production Environment
Magento Commerce Order Management RAP Middleware
Store Connector Shipping Payments &Tax Warehouse Connector Orders 3rd Party SaaS Offering 3rd Party Warehouse Management System 3rd party Connector 3rd party Extension Core module Core module
Service Specifications
•
Extensible specification comprising of
•
Extensible data structures
•
Extensible service definitions
TODO: SHOW XML OF A SERVICE
AND DATA STRUCTURE
TODO: URL OF SITE
Magento Shared Service Definition Overview Service Specification Language Service Interaction Flows Core Transport Bindings
Message Based Interactions
Order Capture Web Store Native Mobile App Product Manager Catalog Search Loyalty New Product Created EVENT Create New Order COMMAND Catalog Lookup QUERY New Order Created EVENT
EVENT
Broadcast to all listeners (publisher/subscriber model)
COMMANDInstruction for action, with returned status information
Example Deployment
Magento Shared Service Definitions coverage
Web Store Native Mobile App
Product Manager Catalog Search Loyalty
New Product Created EVENT Create New Order COMMAND New Order Created EVENT
Magento Digital Commerce
Catalog Lookup QUERY Magento Commerce Order Management Order Capture Magento RAP 3rd Party
One product may implement
Switching a Service Implementation
Web Store Native Mobile App
Product Manager
Catalog Search Loyalty
New Product Created EVENT Create New Order COMMAND New Order Created EVENT
Magento Digital Commerce
Catalog Lookup QUERY Magento Commerce Order Management Order Capture Magento RAP
Akeneo Product Information Manager may start as
a Digital Commerce store but be spun out using a separate tool
3rd Party
Product Updater
Demonstration
Balance InternetMagento Imagine
Integration of Akeneo PIM with Magento
Suite using message broker
Evolving eCommerce environment and new
integration challenges
Major challenges
- Demand for real-time integration of many
information systems to increase
automation level and gain a competitive advantage
- Increased data volumes and
requirements for scalability of data processing
- Demand for decoupling of systems
across customer’s implementation to provide agility
Solutions
- SOA architecture; Asynchronous
processing of data and service calls
- Usage of reliable scalable messaging
systems for data exchange and as a transport for service calls
- Utilise benefits of message brokers
including persistency, transactions and routing
- Utilise Enterprise service bus, Business
process managers and other system integration solutions
Prototype overview
- Luma products are loaded into Akeneo
- Akeneo RabbitMQ export profile has been
implemented based on data schemas provided by Magento
- Routing in RabbitMQ has been configured to
populate product data to Magento Digital Commerce and MCOM
Lessons learned
• Usage of RabbitMQ as a transport for system integration is quite straightforward and
will allow achievement of major goals such as scalability and decoupling
• Messaging significantly improves transparency of data flows and allow for convenient
logging and debugging
• New approach with classic topology of integration of pairs of the systems brings
significant benefits and is quite simple for implementation
• New approach allows system decoupling and asynchronous service calls resulting in
an ability of building significantly more complex integrations. That, in turn, brings new challenges including more complex exception processing, data integrity tracking/
assurance/reconciliation and data recovery in any of the systems
Contact Details
Magento Commerce
www.magento.com msonier@magento.com
Magento Chief Architect /
Presenter:
•
Alan Kent @akent99
MCOM Product Management:
•
Michael Sonier
•
Rob Sweeney
.
Balance Internet, Australia
www.balanceinternet.com.au connect@balanceinternet.com.au