BLOG

Img
Mukesh Kumar Author's Perspective
img
5 Minutes read

Overview of Sitecore XC Engine Console Application

The Sitecore Experience Commerce release package (for on-premise solutions) includes the Sitecore.Commerce.Engine.SDK, the Sitecore Commerce Engine software development kit (SDK). The SDK contains artifacts that play a key role during the initial deployment of the Sitecore XC solution. The Sitecore.Commerce.Engine.SDK also contains sample source code, libraries and sample projects to help you get started with your Commerce customization or integration projects.

You use the Sitecore.Commerce.Engine.SDK to:

Below is the screen shot of Commerce Solution:

Sitecore Commerce also ships with Sitecore Commerce Connect, which is effectively the connector layer that can be used by developers to integrate storefronts with any commerce platform, including the Sitecore Commerce Engine. There are few features which Commerce Connect provides:

  1. Code API layer to access Commerce Engine’s functionality (REST services) for cart, pricing, catalog, inventory, and order subsystems
  2. Page events and goals
  3. Conditional commerce-specific rendering rules for personalization
  4. Engagement Analytics and Reporting of Commerce actions
  5. Marketing automation plans

To take advantage of this functionality, we want to always use the Sitecore Commerce Connect layer when interacting with Sitecore Commerce from a Sitecore XP solution, however, there are cases when it makes sense to call the Commerce Engine directly. This could be a result of extensive customizations in the engine, where the cost of extending Commerce Connect to support it cannot be justified, or this could be the only option, when connecting another platform to the engine like a mobile application. For cases like these, Sitecore created a sample console application to get you started.

Overview of Sitecore XC console application

Sitecore Experience Commerce software development kit comes with a console application “Sitecore.Commerce.Sample.Console” solution. The console application has a complete set for implementation, right from bootstrapping changes, pricing, promotion, inventory, fulfilment, order, entitlement, and search.

The Console application provides a library of examples for calling the Commerce Engine directly. Developers can use these examples to integrate the Commerce Engine with any third-party applications to build a full-fledged commerce application. The Console application provides examples of actions like adding different payment methods, placing order, and adding fulfilment methods to a cart. Additionally, when customizing the Commerce Engine, developers can add their custom API calling logic to the console application to test all the use cases before integrating it with the storefront, or use it for integration testing scenarios as part of a building process. All-in-all, organizations use the console app to:

  1. Grab samples of calling the Commerce Engine REST APIs directly
  2. Test Commerce Engine customizations
  3. Integration of test commerce user journeys

Different Scenarios in Console Application

Out of the box the Console application has a set of scenarios implemented with sample data. Below are few of them:

  1. Bootstrap: When console is started, Bootstrap is the first function which is executed. It will move all the changes made in the environment configuration file (JSON files) to Sitecore Commerce Global database.
  2. Catalogs: A catalog is a container for one or more categories or products in Sitecore Commerce. Catalog and CatalogUX classes in the console application allow working with the Catalog entities and allow developers to perform UX actions from the console app. Below is a sample list of Catalog-related actions that can be executed within the console app:
    • Getting all the Catalog associated with the Commerce Engine
    • Get the Catalog by Name
    • Get the Catalog with all languages
    • Get all Catalog with all languages
    • Add Catalog UX action
    • Delete Catalog UX action
    • Clone Catalog UX action
    • Import Catalog UX action
    • Export Catalog UX action
  3. Sellable Items: The term Sellable Item refers to a tangible or non-tangible item or product that users can “purchase” online. The Console application has Sellable and SellableUX classes that allow working with different scenarios related to Sellable item. Below is a sample list of Sellable Item-related actions that can be executed within the console app:
    • Get Sellable item with No Variants
    • Get Sellable item by Parent
    • Get Sellable item with Variants
    • Update List price of Sellable Item
    • Update List price of Variant
    • Remove List price of Sellable Item
    • Remove List price of Variant
    • Get Sellable Item all languages
    • Get Sellable Item summary
    • Add Category UX action
    • Add Sellable item to Catalog UX action
    • Add Sellable Variant to Catalog UX action
    • Associate Sellable Item to Catalog UX action
    • Disassociate Sellable Item to Catalog UX action
  4. Order: Order and OrderUX classes in the console application provide different functions related to the Order flow on the Sitecore Commerce. Below are the scenarios that are included in these classes:
    • Add Customer
    • Get Order
    • Create Order
    • Create and Validate Order
    • Run Pending Order Minion
    • Run Released Order Minion
    • Cancel Order
    • Set Order Status
    • Set Order Fulfillments UX action
    • Set Order Payments UX action
    • Hold Order UX action
    • Add Gift card UX action

There is much more in the console application and we encourage you to explore on your own and get familiar with what is available OOTB in the Console Application.

Running the Console Application

To get started with the Sitecore Commerce Console application, simply follow these steps:

  1. Download the Sitecore Commerce SDK from https://dev.sitecore.com.
  2. Extract the SDK from the archive.
  3. Open the Sitecore.Commerce.Sample.Console.sln files using Visual Studio.
  4. Update URLs of respective commerce engine instances and identity server in the App.config file.
  5. Update OData services in Sitecore.Commerce.ServiceProxy project (this step is optional and is only needed to capture any customizations done to the Commerce Engine RESTful services).
  6. Now, Run the Sitecore XC console solution to see the screen as depicted below and it shows you all the API execution on the screen.
LIVE WEBINAR

On- Demand Webinar

Sitecore Cognitive Commerce - Transforming the future of ecommerce

The Sitecore Commerce Console Application is a useful tool in any Sitecore Commerce Developer’s arsenal. We strongly recommend all Sitecore Experience Commerce technologists to familiarize themselves with this, as it can help save a lot of time and effort when interacting with Commerce Engine directly.

Natesh G
Mukesh Kumar Associate Technical Lead


Talk to our Experts

Talk to us about how we bring together 1:1 personalisation, deep Martech Expertise, CX & Demand Gen Strategy, Engagement Analytics & Cross-Channel Orchestration to drive award winning experiences that convert

Get in touch for a complimentary consultation or a demo today.

Expert Workshops

Free workshops, expert advice & demos- to help your realize value with Sitecore

Register

Session Presentations

  • Sitecore + SFMC= Marketing Success
  • Transforming The Future Of eCommerce
Meet Us

Giveaways:

Participate in our event survey , meet us at our booth , get free giveaways & a chance to win an iPhone 11

Let’s go
Close Button