Commerce needs to be experience driven and make every moment shoppable. This is one of five digital trends for 2018 that can drive the future of AEM and more. We are seeing some solid progress. As part of the big initiative, Adobe announced enabling experience-driven commerce, a brand new Adobe Cloud Commerce Integration Framework (CCIF) is underway and being actively developed by Adobe. Recently, I got a chance to work with the teams at Perficient Digital and Adobe to preview, test and provide feedback on the new CCIF and the integration with IBM Commerce and Magento. In this blog series, I am going to share the basics of Adobe Commerce Integration Framework (CIF) Cloud, how it works, what you need to implement, the resources to help you get started, and an integration POC developed by Perficient using this new framework.
The Adobe Commerce Integration Framework (CIF) Cloud is currently on closed beta. It’s expected to be in beta this June. It’s supposed to roll out a connector with AEM sites and integration with Commerce tools first. Then more connectors (i.e. assets, Livefyre, Target, Campaign) and integrations (i.e. Hybris, Magento, IBM) will be added later this year. The new framework is currently targeted for AMS customers, on-premises support will be added later, and it’s supported for AEM 6.3 and above.
Challenges with current CIF On Premises
- It was not designed for omnichannel marketing, hard to adapt to changing customer needs.
- Each commerce integration needs a connector.
- Each implementation takes a long time and a lot of heavy lifting, components often need to be customized.
- Heavy reliance on IT.
- Performance can be very slow and costly with large data sets and operations like product synchronization.
- This integration framework is stale and lack of update.
- Full catalog and product data is imported and stored in JCR, created maintenance difficulty and mixed responsibility of a content system with commerce engine or Product Information Management (PIM) system.
How can CIF Cloud help?
- One commerce connector. This framework integrates Adobe Experience Cloud with any commerce solution, based on standardized APIs and Experience Data Model (XDM) compatible data.
- Separate content from commerce.
- Hosted on the cloud. It has events and edges to make it fast to deliver to customer endpoints.
- It leverages the concept of microservice to fulfills modern commerce agility.
- It eliminates technology and data silos and delivers consistent and personalized content to shoppers wherever they may be.
- It integrates with Adobe Cloud Data Platform and Sensei, so it’s powered by data and AI, and able to get real-time insights and optimized personalization on the fly.
- It’s fast to deploy microservices. Developers don’t need to set up a server.
- Enjoy high availability, scalability, security and open source technology with Adobe I/O.
- API-first approach to address the complex realities of omnichannel.
- Production ready code can be shared as packages and Adobe will provide some.
- Catalog/product data cache for performance.
- Commerce information and data can be consumed by multiple clients (AEM, Target, Campaign, native app…).
What is CIF Cloud?
Adobe CIF Cloud is the new commerce integration framework Adobe developed to integrate client applications like AEM with commerce engines like Commercetools, IBM commerce, and Magento, over the cloud, Adobe I/O runtime specifically.
Adobe continues to embrace open source technology. Adobe I/O runtime builds on top of Apache OpenWhisk. OpenWhisk is a serverless open source cloud platform sponsored by Apache Incubator, and Adobe is actively contributing to this platform. The CIF Cloud is not tied to any commerce implementation itself, but provide the framework needed to communicate among client applications, Adobe I/O runtime and commerce engines or Adobe cloud solutions. As part of the CIF Cloud, there’ll be a connector that connects AEM with CCIF, APIs for commerce, a CIF common package, and an integration with Commercetools. The CCIF AEM connector extends from existing commerce API to provide backward compatibility to existing components. The framework makes an HTTP request to Adobe I/O gateway, the gateway translates and forwards the HTTP request to the corresponding web action. Commerce implementer will develop sequence, web actions and optionally create code packages under a specific namespace. The web actions will communicate to different Adobe cloud services or commerce engines over the internet and send a unified XDM back to the client.
As the CIF Cloud architecture diagram depicts, CCIF leverages Adobe’s serverless platform, Adobe I/O runtime, and follows REST architecture. Everything is through HTTP call over the internet. Adobe I/O gateway acts as intermediary or gatekeeper between client applications and Adobe I/O runtime platform to access the APIs. It adds functionalities like events, service registry etc.
In Adobe I/O runtime, you will have your own namespace (most outer border) for your microservices. Each microservice contains a certain sequence of (web) actions. Actions can be bound into different packages (box with orange background) based on functionality. And the charm of packages is that you can share packages, for example, Adobe can share production ready packages for the customer to bootstrap their implementation, they can be plugged in and ready to integrate with your microservices. In your sequence of actions, you can call any combinations of your private/public package’s actions and public package from another namespace, like prebuilt actions from Adobe.
AEM Commerce Integration Patterns
As the AEM Commerce integration patterns table depicts, Adobe CIF Cloud achieves the experience-driven commerce integration pattern, where AEM owns the site, content and customer experience, and it makes microservice calls to commerce over the cloud to get the necessary data from commerce engine. Initial integration could be large, and that’s what Adobe is working on to enrich the microservices and help customer reduce initial integration efforts. But before that’s done, you may see a hybrid integration pattern, where CIF Cloud is used where possible (like catalog, product detail page), and complex commerce process like payment may be hosted in commerce.
Adobe Cloud Platform: the overall umbrella platform on the cloud that acts as enterprise experience system of record. It includes Adobe I/O, Adobe Sensei, and PaaS platforms: content platform and data platform.
Adobe I/O Console: or Adobe I/O Gateway. It’s the central place to provide access to APIs, SDKs and developer tools. It also provides scalability, security and unification for developers.
Adobe I/O Runtime: runtime is serverless platform developed on top of Apache OpenWhisk. This is the place where developers and implementers deploy and run code.
CCIF AEM Connector: an Adobe CIF Cloud connector to AEM. It extends from existing CIF API and provides commerce provider implementation based on CIF Cloud architecture.
Edge: Geographically distributed network of decision-making nodes that help reduce communication bandwidth between consumer touch points and central data center.
Microservice: a small modular service that provides a specific business function. It should be easy to develop, enabled for customization and fast to deploy, in order to support rapidly changing market conditions and consumer needs.
Packages: packages are used to group and manage a set of actions. They can be private or shared and live inside a namespace in the platform. A package is usually a representation of a “microservice domain”, for example, you can have a package for products, one for cart and one for common functionality etc.
Sequence: two or more actions chained together in a declarative fashion.
Web Actions: a modular functionality that encapsulates code – written in any supported language by implementing a single method signature – to be executed in response to a trigger.
XDM: Experience Data Model, an unified data model, in JSON Schema, for different experience data. In this case, XDM for commerce can include product, order etc, the full list can be seen here (in the models section).
What is next?
I hope you find some of the information useful and help you prepare for the new Adobe CIF Cloud. For my next blog posts, I am planning to have a technical deep dive into the CIF Cloud APIs, Adobe I/O Runtime development, and depends on availability, the CCIF AEM connector, and POC our team did for the IBM commerce and Magento integration using CIF Cloud.
Perficient and Adobe are actively looking for your feedback on the CIF Cloud features, APIs, standardized commerce data models, your commerce integration and implementation needs. Feel free to leave a comment here, get in touch with us, and contribute to Adobe CIF Cloud here.