Overview

An Inventory integration will allow you to configure Product price and inventory availability in Endless Aisle.

Endless Aisle Product Details

The table below lists where each component comes from and how to modify it, where possible:

Component Source Service How to Modify
Caitlin Mary Jane Shoe - Youth Product.Name Product Library  
Hero Shot Product.HeroShot Product Library  
$29.99 Pricing.OverridePrice or Pricing.RegularPrice Pricing See Pricing Rules
IN STOCK Availability.Quantity Availability See Availability Rules
Navy ColorDefinition.Name Product Library  

Pricing Rules

Endless Aisle displays Product price using the request Getting Product Pricing for a Retail Location and the following rules:

  1. If PricingTermId has value, get the PricingTerm and display term information
  2. Or, if OverridePrice has value, display it
  3. Otherwise, display RegularPrice

Pricing can be updated in three different ways:

Availability Rules

Endless Aisle displays the availability of a Product using the request Getting Availability For a Catalog Item By Location and the following rules:

  1. If Quantity is greater than 0, display IN STOCK
  2. If Quantity is 0, display OUT OF STOCK

Availability can be updated using Updating Availability.

Creating a Sale Price

Creating a sale price for a Product involves…

  1. Getting the Catalog Item Identifier
  2. Getting the Location Identifier
  3. Getting the Pricing Identifier
  4. Creating the Sale Price

Step 1 - Getting the Catalog Item Identifier

Before you can create a sale price, you must know the Catalog Item Identifier associated with the Product.

This value is not shown in Endless Aisle, so you will need to search your Catalog using Searching for Products.

For this example bb54cb25-e1df-4710-9e05-c2473192cc99 will be used.

Step 2 - Getting the Location Identifier

Before you can create a sale price, you have get the Identifier for the Location of the sale.

We can use Getting All Locations for a Company to look for a Location in Chicago called Atrium Mall.

Example Request
GET https://entitymanagerdemo.iqmetrix.net/v1/Companies(14146)/Locations
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json
Example Response

Response truncated for brevity.

HTTP 200 Content-Type: application/json
[  
   {  
      "Id": 14239,
      "Name": "Atrium Mall - Chicago",
      "Description": "",
      "Role": "Location",   
      "LocationType": null,
      "LocationSubType": null,
      "Address": {  
         "AddressLine1": "512 Broad Street",
         "AddressLine2": null,
         "City": "Chicago",
         "StateCode": "IL",
         "StateName": "Illinois",
         "CountryCode": "US",
         "CountryName": "United States",
         "Zip": null
      },
      "Contacts": [...],
      "StorePhoneNumbers": [...],
      "Area": null,
      "StoreHours": {...},
      "Geography": null,
      "TimeZone": null,
      "Roles": [...],
      "SortName": "atrium mall - chicago",
      "Attributes": {...},
      "Relationships": [...],
      "CreatedUtc": "2015-11-20T19:54:18.613Z",
      "LastModifiedUtc": "2016-04-19T19:12:29.19Z",
      "CorrelationId": null,
      "ClientEntityId": null,
      "TypeId": 95,
      "Logo": null,
      "Version": 1
   },   
   ...
]
Tip: From the response, Id will be used in the following steps.

Step 3 - Getting the Pricing Identifier

To create a sale price, the Product must have an existing Pricing, which you can find using Getting Product Pricing for a Retail Level, and the Identifiers from the previous two steps.

Example Request
GET https://pricingdemo.iqmetrix.net/v1/Companies(14146)/Entities(14239)/CatalogItems(bb54cb25-e1df-4710-9e05-c2473192cc99)/Pricing
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json

Example Response

HTTP 200 Content-Type: application/json
[
  {
      "Id": 16446,
      "CatalogItemId": "a183f1a9-c58f-426a-930a-9a6357db52ed",
      "CompanyId": 14146,
      "EntityId": 14239,
      "FloorPrice": 3.99,
      "IsDiscountable": false,
      "OriginalPrice": null,
      "OverridePrice": 3.99,
      "OverridePriceId": 512,
      "PricingTermId": 78,
      "RegularPrice": 10
  }
]
Tip: From the response, PricingTermId will be used in the following steps.

Step 4 - Creating the Sale Price

Now that you have a Pricing Pricing Identifier, you can put the Product on sale. For this example a one week period in January and a sale price of 29.99 will be used.

Example Request
POST https://pricingdemo.iqmetrix.net/v1/Companies(14146)/Pricing(16445)/SaleOverridePrices
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json
Content-Type: application/json
{
    "IsDefault": false,
    "SalePrice": 29.99,
    "StartDateUTC": "2016-01-03T00:00:00",
    "StopDateUTC": "2016-01-09T00:00:00"
}
Example Response
HTTP 201 Content-Type: application/json
{
    "Id": 1177,
    "CompanyId": 14146,
    "IsDefault": false,
    "PricingInformationId": 16445,
    "SalePrice": 29.99,
    "StartDateUTC": "2016-01-03T00:00:00",
    "StopDateUTC": "2016-01-09T00:00:00"
}

Updating Pricing at Location Level

Updating the price of a Product for one Locations in the Company involves…

  1. Getting the Catalog Item Identifier
  2. Getting the Location Identifier
  3. Updating the Pricing

Step 1 - Getting the Catalog Item Identifier

Before you can update Pricing, you must know the Catalog Item Identifier associated with the Product.

This value is not shown in Endless Aisle, so you will need to search your Catalog using Searching for Products.

For this example bb54cb25-e1df-4710-9e05-c2473192cc99 will be used.

Step 2 - Getting the Location Identifier

Before you can update a pricing for a Location, you must get its Identifier.

We can use Getting All Locations for a Company to look for a Location in Chicago called Atrium Mall.

An example of this request is already provided in Getting the Location Identifier.

For this example 14239 will be used.

Step 3 - Updating the Pricing

We can now update the Pricing using Creating or Updating Product Pricing at Location Level.

Note that the CompanyId and EntityId are different values.

Example Request
POST https://pricingdemo.iqmetrix.net/v1/Companies(14146)/Entities(14239)/CatalogItems(a183f1a9-c58f-426a-930a-9a6357db52ed)/Pricing
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json
Content-Type: application/json
{
    "CatalogItemId": "a183f1a9-c58f-426a-930a-9a6357db52ed",
    "CompanyId": 14146,
    "EntityId": 14239,
    "FloorPrice": 49.99,
    "IsDiscountable": false,
    "OriginalPrice": null,
    "PricingTermId": null,
    "RegularPrice": 39.99
}
Example Response
HTTP 201 Content-Type: application/json
{
    "Id": 16446,
    "CatalogItemId": "a183f1a9-c58f-426a-930a-9a6357db52ed",
    "CompanyId": 14146,
    "EntityId": 14239,
    "FloorPrice": 49.99,
    "IsDiscountable": false,
    "OriginalPrice": null,    
    "OverridePrice": null,
    "OverridePriceId": null,
    "PricingTermId": null,
    "RegularPrice": 39.99
}

Updating Pricing at Company Level

Updating the price of a Product for all Locations in the Company involves…

  1. Getting the Catalog Item Identifier
  2. Updating the Pricing

Step 1 - Getting the Catalog Item Identifier

Before you can update Pricing, you must know the Catalog Item Identifier associated with the Product.

This value is not shown in Endless Aisle, so you will need to search your Catalog using Searching for Products.

For this example bb54cb25-e1df-4710-9e05-c2473192cc99 will be used.

Step 2 - Updating the Pricing

We can now update the Pricing using Creating or Updating Product Pricing at Company Level.

Note that the CompanyId and EntityId are the same value.

Example Request
POST https://pricingdemo.iqmetrix.net/v1/Companies(14146)/Pricing
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json
Content-Type: application/json
{
    "CatalogItemId": "a183f1a9-c58f-426a-930a-9a6357db52ed",
    "CompanyId": 14146,
    "EntityId": 14146,
    "FloorPrice": 49.99,
    "IsDiscountable": false,
    "OriginalPrice": null,    
    "PricingTermId": null,
    "RegularPrice": 39.99
}
Example Response
HTTP 201 Content-Type: application/json
{
    "Id": 16445,
    "CatalogItemId": "a183f1a9-c58f-426a-930a-9a6357db52ed",
    "CompanyId": 14146,
    "EntityId": 14146,
    "FloorPrice": 49.99,
    "IsDiscountable": false,
    "OriginalPrice": null,    
    "OverridePrice": 3.99,
    "OverridePriceId": null,
    "PricingTermId": null,
    "RegularPrice": 39.99
}

Updating Availability

Updating the inventory availability of a Product involves…

  1. Getting the Catalog Item Identifier
  2. Getting the Location Identifier
  3. Updating Availability

Step 1 - Getting the Catalog Item Identifier

Before you can update availability, you must know the Catalog Item Identifier associated with the Product.

This value is not shown in Endless Aisle, so you will need to search your Catalog using Searching for Products.

For this example bb54cb25-e1df-4710-9e05-c2473192cc99 will be used.

Step 2 - Getting the Location Identifier

Before you can update availability for a Location, you must get its Identifier.

We can use Getting All Locations for a Company to look for a Location in Chicago called Atrium Mall.

An example of this request is already provided in Getting the Location Identifier.

For this example 14239 will be used.

Step 3 - Updating Availability

Finally, you can update availability using Configuring Availability and the Identifiers from the previous steps.

Example Request
POST https://availabilitydemo.iqmetrix.net/v1/Companies(14146)/CatalogItems
Authorization: Bearer b0k0dY70N3Vv9jR1b9oEdW9IeT5WIn85WCYFJRo6AiIKLEMBFwNbEQsfeCUeM3gdPA1gAAVxWTJacX8mJyBaGRcFVwQOEV49NgBz
Accept: application/json
Content-Type: application/json
{
    "Id": "bb54cb25-e1df-4710-9e05-c2473192cc99",
    "EntityId": 14239,
    "Quantity": 1,
    "IsDropShippable": false,
    "IsSerialized": false
}
Example Response
HTTP 201 Content-Type: application/json
{
    "Id": "bb54cb25-e1df-4710-9e05-c2473192cc99",
    "CompanyId": 14146,    
    "EntityId": 14239,
    "Quantity": 1,
    "IsDropShippable": false,
    "IsSerialized": false
}
Was this page helpful?