34 votes
Accepted

How to start development with Sitecore Commerce 9 / Sitecore Commerce 9 Learning Resources

1. Sitecore Commerce Documention Great resource is Sitecore official documentation which contains: Developer's Guide -> http://commercesdn.sitecore.net/SitecoreXC_9.0/Developers-Guide/Sitecore-XC-...
8 votes
Accepted

How to refer to types declared in other plugins

The minion project lives inside of your Engine solution so you would not use a proxy. The proxy is mainly for projects which live outside of the Engine environment to communicate with the engine. You ...
user avatar
  • 2,343
7 votes

Products need USD price to be added to cart

OOTB Sitecore Commerce 9 uses USD currency as a default currency. If you want to use different currency you need to do: Navigate to your Home item and check Control Panel Configuration in Storefront ...
user avatar
6 votes
Accepted

Basic understanding of the authoring.json file

The json files actually contain serialized .NET classes so what you see in the $type field is the namespace of a class, followed by the name of the assembly. When this information is deserialized, ...
user avatar
  • 334
5 votes

How can I unit test a sitecore commerce engine plugin?

Most services are, as you say, provided as interfaces so it's mostly down to mocking them for your purposes. Having said that, some things are harder to mock than they first appear. Here's what I use ...
user avatar
5 votes

Updating stock balance in the inventory catalog

There's no simple "Set product X to inventory Y" command or pipeline, but here's how we've done it. I've included stubs for handling variants, but not the code that actually loads the variant. I ...
user avatar
5 votes
Accepted

Getting "Status Code: 401; Unauthorized" when bootstraping Sitecore Commerce 9

When you trigger GetToken command you should get SitecoreIdToken set to your global variables. This is done on 'Tests' tab via the following command postman.setGlobalVariable("SitecoreIdToken", "...
user avatar
  • 741
5 votes
Accepted

Unable to resolve service for type 'IPipelineConfiguration' while attempting to activate 'CustomPipeline'

The short answer is that the custom pipeline needs to accept the argument as IPipelineConfiguration<ICustomPipelineInterface> When you configure a pipeline via pipelines.AddPipeline<T,K> ...
user avatar
5 votes
Accepted

Add localization to entity

You will need to save category first and then provide localizations for it. Let's say you already have Category categoryEntity. You then need to do the following steps: // getting localization entity ...
user avatar
  • 741
5 votes

Add localization to entity

There are some changes in Experience Commerce 9.2, copied below from one of the related support ticket: In previous versions of Sitecore Commerce, the LocalizedEntityComponent was used to know which ...
user avatar
  • 51
5 votes

How do I configure my commerce engine XC9 (running in the Shops API) to write logs locally?

If you're running with the default local installation that XC sets up for a developer machine then all communication runs to the authoring engine role for both the Sitecore Admin tools and the ...
user avatar
4 votes
Accepted

Unintentional parallel minions

Update 2019-04 - Commerce 9.1 resolves the reentrancy problems, just override Minion.Execute instead of Minion.Run. For a deep dive into the changes, I've written up an article Reentrancy improvements ...
user avatar
4 votes
Accepted

InitializeEnvironment Postman script always returned the status as "WaitingForActivation"

You need to run the CleanEnvironment command first. You cannot run the InitializeEnvironment twice without running the CleanEnvironment command, because it will try to import the same entities.
user avatar
4 votes
Accepted

Failed to persist profile to underlying stores

Looks like your profile and/or encryption might not be set up properly. Please check and optionally re-run these steps from the Sitecore Commerce 8.2.1 Deployment Guide. ` ProfileKeyManager.exe /kn ...
user avatar
  • 24.3k
4 votes
Accepted

Sitecore Experience Commerce XC 9.0.2 installation error (at Get Token From Sitecore.IdentityServer)

I also faced this error and below are the steps I did to fix it. Added the ConnectionString in appsettings.json (C:\inetpub\wwwroot\SitecoreIdentityServer\wwwroot) with "User Id", "Password" and ...
user avatar
  • 1,036
4 votes
Accepted

How do I create a custom managed list?

Managed lists are just strings, they're not registered anywhere. You can add an order to a custom one by adding it to the Orders ListMembershipComponent or TransientListMembershipComponent (tl;dr the ...
user avatar
3 votes

Activation error occured while trying to get instance of type ICacheManager

probably it is too late to answer this, but as a reference for other which encountered the same problem. After installation i have got the same error, the reason for me was, i forgot to merge the ...
user avatar
3 votes
Accepted

Get / Delete parent category relationships of SellableItem

As written before, there is a IDeleteRelationshipPipeline to remove the relation, but you are most probably struggling with getting the Category ids, that the SellableItem relates to, to remove the ...
user avatar
3 votes
Accepted

Sitecore Experience Commerce 9.0 installation error on Installing module: Sitecore Commerce ExperienceAnalytics Core

On my machine, i have some problem with xConnect client certificates and i got the same error.Even after making sure xConnect site works, i got the same error. The root cause of error is saving "/...
user avatar
3 votes
Accepted

Add category into a catalog programatically

I got this error because of Version parameter which I add it into Body call. { "Name": "Version", "Policies": [], "DisplayName": "Version", "Value": "...
user avatar
  • 17.7k
3 votes
Accepted

Cart always has 0 total

It turns out that this was another issue caused by critical pipeline code being defined in a sample plugin that I outlined in this question. Basically, the cart plugin itself only registers two ...
user avatar
3 votes
Accepted

Reset-ItemField failing silently

I had something similar just a couple of weeks ago. I ended up solving it like this: $contentItems = Get-ChildItem master:\content -Recurse ForEach($item in $contentItems) { $item.Editing....
user avatar
  • 24.3k
3 votes
Accepted

Checkbox showing on Bizfx but not in Sitecore

You have to change property type from bool? to bool: public bool PropertyDetailsInOffer { get; set; } bool values will be rendered as checkboxes for supported UI Hints, otherwise rendering as a ...
user avatar
2 votes
Accepted

GetPolicy<T>() returning null, causing NullReferenceException in OOTB functionality

This happens when you create a CommerceContext without assigning it's Environment property (which has no associated constructor argument). Since policies are resolved from the environment, it will ...
user avatar
2 votes
Accepted

How to Debug Default Sitecore Commerce Engine Plugin?

I don't have experience debugging them with reflector. However, I have been able to successfully debug them with dotpeek as a symbol server: https://www.jetbrains.com/help/decompiler/...
user avatar
2 votes
Accepted

How to create a new InventorySku?

It seem my problem was that I were using CommercePipelineExecutionContext and Sitecore.Commerce.Plugin.Inventory.InventorySku when I should have used CommerceServer.Core.Inventory....
user avatar
2 votes
Accepted

Sitecore Commerce - Transactions are not going through when using remote server

You have three options here how to resolve this problem: If you are not using Azure SQL, Sitecore recommends to turn on MSDTC on all servers. See option a) below. If you are using Azure SQL, you can ...
user avatar
2 votes
Accepted

How to import data from Commerce server to Sitecore Commerce 9.0?

You can implement your custom plugin and use Commerce Server Api for get products/inventory and create entities for products/categories/catalogs/inventory and relationships in XC9. For more details, ...
user avatar
2 votes

How to import data from Commerce server to Sitecore Commerce 9.0?

Currently there is no out of the box way of doing this. You will have to create your own plugin that reads the commerce server 11.0 catalog xml file and creates the corresponding entities. In the pre-...
user avatar
2 votes

Sitecore Experience Commerce XC 9.0.2 installation error (at Get Token From Sitecore.IdentityServer)

Answer by Amitabh didn't work initially. I went to C:\inetpub\wwwroot\SitecoreIdentityServer\wwwroot\logs to view the latest log. It said: Unhandled exception: "System.Data.SqlClient.SqlException (...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible