12

Cq e commerce

Embed Size (px)

Citation preview

Page 1: Cq e commerce
Page 2: Cq e commerce

eCommerce Integration FrameworkCQ 5.6.1 provides a new Commerce Framework to build Experience Driven Commerce websites on top of a 3rd party Commerce Platform

Page 3: Cq e commerce

Architecture of the Commerce FrameworkIntegration framework provides the APIs, connectors and a range of Components

Page 4: Cq e commerce

Commerce Framework RolesAEM eCommerce caters for the following roles to maintain the data

Product Information Management (PIM) User who maintains: Product information. Taxonomy, categorization, approval. Interacts with digital asset management. Pricing - often this comes from an ERP system and is not explicitly maintained in the commerce

system.

Author / Marketing Manager who maintains:

Marketing content for all channels. Promotions. Vouchers. Campaigns.

Surfer / Shopper who:

Views your product information. Places items into the shopping cart. Checks out their orders. Expect order fulfillment.

Page 5: Cq e commerce

Commerce Framework ImplementationsThere are two flavors of eCommerce implementations with AEM

Native Hybris

Page 6: Cq e commerce

Developing for AEM native eCommerceThe integration framework includes an integration layer with an API. This allows you to build AEM components for eCommerce capabilities (independent of your specific eCommerce engine). It also allows you to use the internal CRX database or to plug in an eCommerce system and pull product data into AEM.

A number of out-of-the-box AEM components are provided to use the integration layer. Currently these are:

• A product display component• A shopping cart• Promotions and vouchers• Catalog and section blueprints• Check-out• Search

Page 7: Cq e commerce
Page 8: Cq e commerce

eCommerce EngineThe eCommerce framework can be used with any eCommerce solution, the engine being used needs to be identified by AEM - even when using the AEM native engine:

eCommerce Engines are OSGi services supporting the CommerceService interface– Engines can be distinguished by a commerceProvider service property

AEM supports Resource.adaptTo() for CommerceService and Product– The adaptTo implementation looks for a cq:commerceProvider property in

the resource's hierarchy:― If found, the value is used to filter the commerce service lookup.― If not found, the highest-ranked commerce service is used.

– A cq:Commerce mixin is used so the cq:commerceProvider can be added to strongly-typed resources.

The cq:commerceProvider property is also used to reference the appropriate commerce factory definition.– For example, a cq:commerceProvider property with the value geometrixx will

correlate to the OSGi configuration for Day CQ Commerce Factory for Geometrixx-Outdoors (com.adobe.cq.commerce.hybris.impl.GeoCommerceServiceFactory) - where the parameter commerceProvider also has the value geometrixx.

– Here further properties can be configured (when appropriate and available).

Page 9: Cq e commerce

PIM data is located under /etc

Product references under /content.

Page 10: Cq e commerce

For Example :

Page 11: Cq e commerce

Product

General Storage Mechanism• Product nodes are nt:unstructured.• A product node can be either:

• A reference, with the product data stored elsewhere:•Product references contain a productData

property, which points to the product data (typically under /etc/commerce/products).• The product data is hierarchical; product

attributes are inherited from a product data node's ancestors.

• Product references can also contain local properties, which override those specified in their product data.

• A product itself:• Without a productData property.• A product node which holds all properties

locally (and does not contain a productData property) inherits product attributes directly from its own ancestors.

AEM-native Product Structure• Each variant must have its own leaf node.• The product interface represents both products and variants,

but the related repository node is specific about which it is.• The product node describes the product attributes and

variant axes.