Documentation Norce [Storm] Connect Product Service (4.0)

The Product Service has Entities and Operations to create and update products and content in Norce Commerce.

Download OpenAPI description
Languages
Servers
https://customer-slug.api-se.norce.tech/commerce/connect/4.0/

Competitor

Operations

Product

Operations

Import on hand data

Request

Use this to import availability data separated from other product data. Availability information on products not yet created in Norce Commerce will be ignored.
Read more about the method here.

Headers
X-StormConnect-Headerstringrequired

Json serialized string

Bodyrequired

List of sku on hands to import.

Array [
LocationCodestringrequired

Location code. Used for SKU location matching in Norce Commerce.

PartNostringrequired

SKU part number.

WarehouseCodestringrequired

Warehouse code. Used for warehouse matching in Norce Commerce.

IncomingValuenumber

Quantity of items that is purchased from a supplier but not yet recevied to the warehouse.

InfosArray of objects(Info)(Info)

Additional on hand information defined by 3rd party and configured in Norce Commerce administration GUI.

IsActiveboolean

Sets warehouse SKU information to active or inactive.

LeadTimeDayCountinteger(int32)

Indication of time required for delivery from this warehouse for this product.

MaximumValuenumber

Target stock level (max value)

MinimumValuenumber

Reorder point (min value)

NextDeliveryDatestring(DateTime)

Determines when the next delivery of items to warehouse is expected to occur.

OnOrderValuenumber

Deprecated

OnhandValuenumber

Quantity of items on the shelf in the specified warehouse.

]
curl -i -X POST \
  https://customer-slug.api-se.norce.tech/commerce/connect/4.0/Product/ImportOnhands \
  -H 'Content-Type: application/json' \
  -H 'X-StormConnect-Header: string' \
  -d '[
    {
      "LocationCode": "string",
      "PartNo": "string",
      "WarehouseCode": "string",
      "IncomingValue": 0,
      "Infos": [
        {
          "Code": "string",
          "Value": "string"
        }
      ],
      "IsActive": true,
      "LeadTimeDayCount": 0,
      "MaximumValue": 0,
      "MinimumValue": 0,
      "NextDeliveryDate": "string",
      "OnOrderValue": 0,
      "OnhandValue": 0
    }
  ]'

Responses

Success

Body
StatusCodestring

Status of the job

Descriptionstring

Short message describing the job

JobIdstring(int32)

Norce interal id created for this job. Refer to this for future requests.

ValidationSummaryobject(ValidationSummary)(ValidationSummary)

Validation data for accepted payload

Response
{ "StatusCode": "string", "Description": "string", "JobId": "string", "ValidationSummary": { "NrOfItemsInTotal": 0, "NrOfValidationFailures": 0, "Messages": [] } }

Import products

Request

Use this to import whole product catalogs. To create products manufacturer code, manufacturer part no and your SKU part no is required. However, for updates either manufacturer code and manufacturer part no or SKU part no is needed. If Code is set in ProductFieldsThatAreSet it is mandatory for variant cluster creation and update, but otherwise it can be inferred from existing data. However, if fullfile is true code is mandatory as well to enable variant cluster management.
Only one price record is allowed per product. Use ImportSkuPriceList to add more prices. To import availability data use ImportOnhands.
Read more about the method here.

Headers
X-StormConnect-Headerstringrequired

Json serialized string

Bodyrequired

List of products to import.

Array [
Codestring

Product code. Used for product cluster matching in Norce Commerce.

ManufacturerCodestring

Manufacturer code. Required when creating products or as part of identifier of a product combined with ManufacturerPartNo on variant.

AdditionalImagesArray of objects(Image)(Image)

List of additional product images.

Aliasstring

Product alias.

AssortmentCodestring

Product assortment code. If set, assortment with this code will be associated to product.

CategoriesArray of objects(ProductCategory)(ProductCategory)

List of categories product shall be placed in.

CulturesArray of objects(ProductCulture)(ProductCulture)

List of translated product information fields.

Familyobject(ProductFamily)(ProductFamily)

Product family information. Families that can not be matched will not be created but give a warning in the logs.

MainImageobject(Image)(Image)

Product image information.

ManufacturerNamestring

Manufacturer name. If manufacturer doesn't exist this field is required to create a new manufacturer.

ProductFlagsArray of objects(Flag)(Flag)

List of flags applied to product.

ProductParametricsArray of objects(ParametricValue)(ParametricValue)

List of parametrics applied to product.

VariantDefinitionGroupobject(VariantDefinitionGroup)(VariantDefinitionGroup)

Variant definition information.

VariantsArray of objects(Variant)(Variant)

List of product variants.

]
curl -i -X POST \
  https://customer-slug.api-se.norce.tech/commerce/connect/4.0/Product/ImportProducts \
  -H 'Content-Type: application/json' \
  -H 'X-StormConnect-Header: string' \
  -d '[
    {
      "Code": "string",
      "ManufacturerCode": "string",
      "AdditionalImages": [
        {
          "ExternalCode": "string",
          "FileTypeName": "string",
          "Url": "http://example.com",
          "FileName": "string",
          "LastModified": "string"
        }
      ],
      "Alias": "string",
      "AssortmentCode": "string",
      "Categories": [
        {
          "Code": "string",
          "SortOrder": 0
        }
      ],
      "Cultures": [
        {
          "CultureCode": "string",
          "Description": "string",
          "DescriptionHeader": "string",
          "IsUniqueUrlNameManuallyMaintained": true,
          "MetaDescription": "string",
          "MetaTags": "string",
          "Name": "string",
          "SubDescription": "string",
          "SubHeader": "string",
          "Synonyms": "string",
          "Tags": "string",
          "Title": "string",
          "UniqueUrlName": "string"
        }
      ],
      "Family": {
        "Code": "string",
        "Name": "string"
      },
      "MainImage": {
        "ExternalCode": "string",
        "FileTypeName": "string",
        "Url": "http://example.com",
        "FileName": "string",
        "LastModified": "string"
      },
      "ManufacturerName": "string",
      "ProductFlags": [
        {
          "Code": "string",
          "IsSet": true,
          "IsCreateOnly": true,
          "IsLimitedUpdate": true,
          "StopDate": "string"
        }
      ],
      "ProductParametrics": [
        {
          "ParametricCode": "string",
          "Cultures": [
            {
              "CultureCode": "string",
              "ValueText": "string"
            }
          ],
          "MultipleValueList": [
            {
              "Code": "string",
              "Value": "string",
              "Description": "string",
              "Cultures": [
                {}
              ]
            }
          ],
          "ValueBoolean": true,
          "ValueDateTime": "string",
          "ValueDecimal": 0,
          "ValueInteger": 0,
          "ValueList": {
            "Code": "string",
            "Value": "string",
            "Description": "string",
            "Cultures": [
              {
                "CultureCode": "string",
                "Value": "string",
                "Description": "string"
              }
            ]
          }
        }
      ],
      "VariantDefinitionGroup": {
        "Code": "string",
        "Name": "string",
        "Types": [
          {
            "Code": "string",
            "Name": "string",
            "ParametricCode": "string",
            "SortOrder": 0
          }
        ]
      },
      "Variants": [
        {
          "ManufacturerPartNo": "string",
          "AdditionalImages": [
            {
              "ExternalCode": "string",
              "FileTypeName": "string",
              "Url": "http://example.com",
              "FileName": "string",
              "LastModified": "string"
            }
          ],
          "Cultures": [
            {
              "CultureCode": "string",
              "IsUniqueUrlNameManuallyMaintained": true,
              "Description": "string",
              "DescriptionHeader": "string",
              "MetaDescription": "string",
              "MetaTags": "string",
              "Name": "string",
              "SubDescription": "string",
              "SubHeader": "string",
              "Synonyms": "string",
              "Tags": "string",
              "Title": "string",
              "UniqueUrlName": "http://example.com"
            }
          ],
          "DeliveryMethods": [
            {
              "Code": "string",
              "IsActive": true,
              "PackagePercentage": 0
            }
          ],
          "IsDagerousGoods": true,
          "MainImage": {
            "ExternalCode": "string",
            "FileTypeName": "string",
            "Url": "http://example.com",
            "FileName": "string",
            "LastModified": "string"
          },
          "NonParametricVariantDefinitions": [
            {
              "TypeCode": "string",
              "Cultures": [
                {}
              ]
            }
          ],
          "Skus": [
            {
              "PartNo": "string",
              "ActualWeight": 0,
              "CommodityCode": "string",
              "Cultures": [
                {}
              ],
              "DiscountClass": "string",
              "EanCode": "string",
              "IntegrationPartNo": "string",
              "IsBuyable": true,
              "IsDropShipOnly": true,
              "IsRecommendedSalesQtyFixed": true,
              "LogisticDepth": 0,
              "LogisticHeight": 0,
              "LogisticWidth": 0,
              "RecommendedSalesQty": 0,
              "StandardPrice": {
                "PartNo": "string",
                "PriceListCode": "string",
                "CostPurchase": 0,
                "CostUnit": 0,
                "CurrencyCode": "string",
                "IsActive": true,
                "IsPriceDiscountable": true,
                "PriceCatalog": 0,
                "PricePrevious": 0,
                "PriceRecommended": 0,
                "PriceRule": 0,
                "PriceRuleValue": 0,
                "PriceSale": 0,
                "QuantityBreak": 0
              },
              "StartDate": "string",
              "Status": 0,
              "StopDate": "string",
              "StructureItems": [
                {
                  "AdditionalInfo": []
                }
              ],
              "TrackingCode": "string",
              "Type": 0,
              "UnitOfMeasurementCount": 0,
              "UnitOfMeasurementType": 0,
              "VatRates": [
                {}
              ],
              "VolumeWeight": 0
            }
          ],
          "SortOrderValue": 0,
          "StockDisplayBreakPoint": [
            {
              "Code": "string",
              "IsSet": true,
              "IsCreateOnly": true,
              "IsLimitedUpdate": true,
              "StopDate": "string"
            }
          ],
          "VariantFlags": [
            {
              "Code": "string",
              "IsSet": true,
              "IsCreateOnly": true,
              "IsLimitedUpdate": true,
              "StopDate": "string"
            }
          ],
          "VariantParametrics": [
            {
              "ParametricCode": "string",
              "Cultures": [
                {}
              ],
              "MultipleValueList": [
                {
                  "Cultures": []
                }
              ],
              "ValueBoolean": true,
              "ValueDateTime": "string",
              "ValueDecimal": 0,
              "ValueInteger": 0,
              "ValueList": {
                "Code": "string",
                "Value": "string",
                "Description": "string",
                "Cultures": [
                  null
                ]
              }
            }
          ]
        }
      ]
    }
  ]'

Responses

Success

Body
StatusCodestring

Status of the job

Descriptionstring

Short message describing the job

JobIdstring(int32)

Norce interal id created for this job. Refer to this for future requests.

ValidationSummaryobject(ValidationSummary)(ValidationSummary)

Validation data for accepted payload

Response
{ "StatusCode": "string", "Description": "string", "JobId": "string", "ValidationSummary": { "NrOfItemsInTotal": 0, "NrOfValidationFailures": 0, "Messages": [] } }

Import product relations

Request

Use this to import relations for the whole product catalog.

Headers
X-StormConnect-Headerstringrequired

Json serialized string

Bodyrequired

List of product relations to import.

Array [
PartNostringrequired

Part number for the SKU with relations.

RelatedPartNostringrequired

Part number for the related SKU.

RelationTypeCodestringrequired

Code for the desired client defined relation type.

CulturesArray of objects(RelationCulture)(RelationCulture)

List of cultures for the relation.

IsActiveboolean

Sets the relation to active or inactive.

IsRelatedVariantUniqueboolean

True if the related product is variant unique.

IsVariantUniqueboolean

True if the relation is variant unique.

SortOrderinteger(int32)

Sort order for this relation on the SKU.

]
curl -i -X POST \
  https://customer-slug.api-se.norce.tech/commerce/connect/4.0/Product/ImportRelations \
  -H 'Content-Type: application/json' \
  -H 'X-StormConnect-Header: string' \
  -d '[
    {
      "PartNo": "string",
      "RelatedPartNo": "string",
      "RelationTypeCode": "string",
      "Cultures": [
        {
          "CultureCode": "string",
          "Description": "string",
          "DescriptionHeader": "string",
          "Name": "string",
          "SubDescription": "string",
          "SubHeader": "string"
        }
      ],
      "IsActive": true,
      "IsRelatedVariantUnique": true,
      "IsVariantUnique": true,
      "SortOrder": 0
    }
  ]'

Responses

Success

Body
StatusCodestring

Status of the job

Descriptionstring

Short message describing the job

JobIdstring(int32)

Norce interal id created for this job. Refer to this for future requests.

ValidationSummaryobject(ValidationSummary)(ValidationSummary)

Validation data for accepted payload

Response
{ "StatusCode": "string", "Description": "string", "JobId": "string", "ValidationSummary": { "NrOfItemsInTotal": 0, "NrOfValidationFailures": 0, "Messages": [] } }

Import prices

Request

Use this to import price data on products, separated from other product data. Prices on products not yet created in Norce will be ignored. Prices on price lists not yet created in Norce Commerce will also be ignored.

Headers
X-StormConnect-Headerstringrequired

Json serialized string

Bodyrequired

List of SKU price lists to import. If Currency is different from the price list in Norce Commerce a conversion will occur to the currency of the price list with current exchange rates.

Array [
PartNostringrequired

SKU part number.

PriceListCodestringrequired

Agreement code on the price list. Used for matching in Norce Commerce.

CostPurchasenumber

Purchase cost from supplier.

CostUnitnumber

Unit cost.

CurrencyCodestring

Currency code in ISO 4217 format, e.g. "SEK", "EUR", "USD".

IsActiveboolean

Sets SKU price to active or inactive.

IsPriceDiscountableboolean

Determines if discounts can be applied to the price.

PriceCatalognumber

Catalog price.

PricePreviousnumber

Previous price. Can be used to show discounts.

PriceRecommendednumber

Recommended sale price.

PriceRuleinteger(int32)

Price rule for this SKU.
1 = CostPlus_PurchaseCost
2 = FixedPrice
3 = Margin_PurchaseCost
4 = UseRecommendedPrice
5 = CostPlus_UnitCost
6 = Margin_UnitCost
7 = UseStandardPrice_PctDiscount
8 = Competitive_PurchaseCost
9 = Competitive_UnitCost
10 = UseStandardPrice_FixedDiscount
11 = StructureCalculation
12 = UseCatalogPrice

PriceRuleValuenumber

Value to apply for selected Price Rule.

PriceSalenumber

Sale price.

QuantityBreakinteger(int32)

Threshold which determines minimum quantity of items required for specified price list to be applied.

]
curl -i -X POST \
  https://customer-slug.api-se.norce.tech/commerce/connect/4.0/Product/ImportSkuPriceLists \
  -H 'Content-Type: application/json' \
  -H 'X-StormConnect-Header: string' \
  -d '[
    {
      "PartNo": "string",
      "PriceListCode": "string",
      "CostPurchase": 0,
      "CostUnit": 0,
      "CurrencyCode": "string",
      "IsActive": true,
      "IsPriceDiscountable": true,
      "PriceCatalog": 0,
      "PricePrevious": 0,
      "PriceRecommended": 0,
      "PriceRule": 0,
      "PriceRuleValue": 0,
      "PriceSale": 0,
      "QuantityBreak": 0
    }
  ]'

Responses

Success

Body
StatusCodestring

Status of the job

Descriptionstring

Short message describing the job

JobIdstring(int32)

Norce interal id created for this job. Refer to this for future requests.

ValidationSummaryobject(ValidationSummary)(ValidationSummary)

Validation data for accepted payload

Response
{ "StatusCode": "string", "Description": "string", "JobId": "string", "ValidationSummary": { "NrOfItemsInTotal": 0, "NrOfValidationFailures": 0, "Messages": [] } }

Pricelist

Operations