---
title: "Service method pipelines"
slug: "service-method-pipelines"
abstract: "Overview of service method pipelines with descriptions of the associated cart data and properties."
---
# Service method pipelines

Each service method launches a pipeline with the same name. As part of the initial pipeline being executed, one or more additional or shared pipelines can be called and executed. For example, `SaveCart` or `SynchronizeProductArtifacts`.

In Sitecore, the default pipeline arguments contain `Request` and `Result` properties, which have Properties of type `dictionary`, and can contain arbitrary data to be used by pipeline processors.

Commerce Connect uses the `Request.Properties` dictionary to store data that you need to synchronize. There are processors that read and write the custom data.

Values that are stored in `Request.Properties`  are internal temporary data used to carry information between the processors in the pipeline. For example, the `CreateOrResumePipeline` includes the `FindCartInEAState` processor that stores the ID of the cart. This ID is then used in the `RunLoadCart` processor to specify the ID of the cart to be loaded.

Data read and stored in the `Request.Properties` dictionary is visible between processors within the pipeline.

The following table contains a description of the cart data related to the pipelines stored in the pipeline arguments `Request.Properties`:

| Pipeline | Property name | Data description |
| --- | --- | --- |
| `CreateOrResumeCart` | `CartId` | Holds the ID of the cart found in the writer processor and consumed by the reader processor in order to load the cart from the external system.<br><br>Writer processor:<br><br>`FindCartInEaState`<br><br>Reader processor:<br><br>`RunLoadCart` |
| `ResumeCart` | `CartSourceStateId` | Holds the ID of the cart state that the `MoveVisitorToInitialState` processor moves visitors from.<br><br>Writer processor:<br><br>`CheckCanBeResumed`<br><br>Reader processor:<br><br>`MoveVisitorToInitialState` |
|  | `CartDestinationStateId` | Holds the ID of the cart state that the `MoveVisitorToInitialState` processor moves visitors to.<br><br>Writer processor:<br><br>`CheckCanBeResumed`<br><br>Reader processor:<br><br>`MoveVisitorToInitialState` |

The following table contains the data of the product related pipelines:

| Pipeline | Property name | Custom data description |  |
| --- | --- | --- | --- |
| `GetSitecoreProductList` | `SitecoreProductIds` | Holds a list of the product IDs of Sitecore.<br><br>Writer processor<br><br>`GetSitecoreProductList`<br><br>Reader processor<br><br>`EvaluateProductListUnionToSynchronize` |  |
| `SynchronizeClassifications` | `SitecoreClassificationGroups` | Holds the classification groups in Sitecore to be synchronized.<br><br>Writer processor:<br><br>`ReadSitecoreClassifications`<br><br>Reader processor<br><br>`ResolveClassificationsChanges` |  |
|  | `ClassificationGroups` | Holds the classification groups in the external commerce system to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemClassifications`<br><br>Reader processors:<br><br><ul><li>`ResolveClassificationsChanges`</li><li>`SaveProductClassificationsToSitecore`</li></ul> |  |
| `SynchronizeClassificationsSpecifications` | `ProductClassificationGroups` | Holds the product classification groups to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemClassificationsSpecifications`<br><br>Reader processor:<br><br>`SaveClassificationsSpecificationsToSitecore` |  |
| `SynchronizeDivisions` | `SitecoreDivisions` | Holds product divisions in Sitecore to be synchronized.<br><br>Writer processor:<br><br>`ReadSitecoreDivisions`<br><br>Reader Processor:<br><br>`ResolveDivisionsChanges` |  |
|  | `Divisions` | Holds the product divisions in the external commerce system to be synchronized.<br><br>Writer processors:<br><br>`ResolveManufacturersChanges`<br><br>`ReadExternalCommerceSystemManufacturers`<br><br>Reader processor:<br><br>`ResolveDivisionsChanges` |  |
| `SynchronizeManufacturers` | `SitecoreManufacturers` | Holds the Sitecore manufacturer to be synchronized.<br><br>Writer processor:<br><br>`ReadSitecoreManufacturers`<br><br>Reader processor:<br><br>`ResolveManufacturersChanges` |  |
|  | `Manufacturer`s | Holds a list of the manufacturers in the external commerce system to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemManufacturers`<br><br>Reader processors:<br><br><ul><li>`ResolveManufacturersChanges`</li><li>`SaveManufacturersToSitecore`</li></ul> |  |
| `SynchronizeProductEntity` | `ProductFromSitecore` | Holds the products in Sitecore to be synchronized with the external commerce system.<br><br>Writer processor:<br><br>`ReadProductFromSitecore`<br><br>Reader processor:<br><br>`ResolveProductChanges` |  |
|  | `Product` | Holds a product from the external commerce system with Sitecore.<br><br>Writer processor:<br><br><ul><li>`ReadExternalCommerceSystemProduct`</li><li>`ResolveProductChanges`</li></ul><br><br>Reader processor:<br><br>`ResolveProductChanges` |  |
| `SynchronizeTypes` | `SitecoreProductTypes` | Holds the product types in Sitecore to be synchronized with the external commerce systems.<br><br>Writer processor:<br><br>`ReadSitecoreTypes`<br><br>Reader processor:<br><br>`ResolveTypesChanges` |  |
|  | `ProductTypes` | Holds the product types in the external commerce systems to be synchronized with Sitecore.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemTypes`<br><br>Reader processors:<br><br><ul><li>`ResolveTypesChanges`</li><li>`SaveTypesToSitecore`</li></ul> |  |
| `SynchronizeGlobalSpecifications` | `Specifications` | Holds the product specifications to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemGlobalSpecifications`<br><br>Reader processor:<br><br>`SaveGlobalSpecificationsToSitecore` |  |
| `SynchronizeProductDivisions` | `DivisionIds` | Holds the division IDs to be synchronized.<br><br>Write processor:<br><br>`ReadExternalCommerceSystemProductDivisions`<br><br>Reader processor:<br><br>`SaveProductDivisionsToSitecore` |  |
| `SynchronizeProductManufacturers` | `ManufacturerIds` | Holds the manufacturer IDs to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemProductManufacturers`<br><br>Reader processor:<br><br>`SaveProductManufacturersToSitecore` |  |
| `SynchronizeProductResources` | `ProductResources` | Holds the product resources to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemProductResourceBase`<br><br>Reader processor:<br><br>`SaveProductResourcesToSitecore` |  |
| `SynchronizeProducts` | `ExternalCommerceSystemProductIds` | Holds the product IDs in the external commerce systems to be synchronized.<br><br>Writer processor:<br><br>`GetExternalCommerceSystemProductList (pipeline: GetExternalCommerceSystemProductList)`<br><br>Reader processor:<br><br>`EvaluateProductListUnionToSynchronize` |  |
| `SynchronizeProductTypes` | `ProductTypeIds` | Holds the product type IDs to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemProductTypes`<br><br>Reader processor:<br><br>`SaveProductTypesToSitecore` |  |
| `SynchronizeResources` | `Resources` | Holds the product resources to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemResources`<br><br>Reader processor:<br><br>`SaveResourcesToSitecore` |  |
| `SynchronizeProductRelations` | `RelatedProducts` | Holds the related products to be synchronized.<br><br>Writer processor:<br><br>`ReadExternalCommerceSystemProductRelationsBase`<br><br>Reader processor:<br><br>`SaveProductRelationsToSitecore` |  |
| `SynchronizeTypeSpecifications` | `SpecificationCollection` | Holds the specification collection to be synchronized.<br><br>Writer processor:<br><br>`ReadSitecoreTypeSpecifications`<br><br>Reader processor:<br><br>`SaveTypeSpecificationsToExternalCommerceSystem` |  |