Norce Commerce Customer v1.1 service (1.1)

The Customers namespace has Entities and Operations concerned with Customer and Company management.

Download OpenAPI description
Languages
Servers
Playground

https://{slug}.api-se.playground.norce.tech/commerce/

Stage

https://{slug}.api-se.stage.norce.tech/commerce/

Production

https://{slug}.api-se.norce.tech/commerce/

Accounts

Operations

Address

Contains endpoints for managing addresses on Customer and Company objects.

Operations

Companies

Contains endpoints for managing Company data and related information.

Operations

Customers

Contains endpoints for managing Customer data and related information.

Operations

Flags

Contains endpoints for viewing Customer and Company flags.

Operations

InfoTypes

Contains endpoints for viewing metadata about Customer and Company extended fields.

Operations

PriceLists

Contains endpoints for managing company connected price lists.

Operations

Get a pricelist item

Request

Gets a priceList item. Returns null if the PriceListItem does not exist. Prices are in the currency of the PriceList.

Query
partNostring

The PartNo of the PriceListItem to fetch.

pricelistIdinteger(int32)

The internal Id of the current PriceList for which the PriceListItem is fetched.

curl -i -X GET \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/GetPricelistItem \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
PartNostring or null

PartNo of the SKU for this price item.

PricelistIdinteger or null(int32)

The internal pricelist id.

Pricenumber or null(decimal)

The price. Read only. Currency is from the pricelist.

PriceRecommendednumber or null(decimal)

The price from inherited pricelist, if any.

IsActiveboolean or null

Specifies if the pricelist item is active or not. Ignored when inserting new pricelist items.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

Response
application/json
{ "PartNo": "string", "PricelistId": 0, "Price": 0, "PriceRecommended": 0, "IsActive": true, "PriceRule": { "RuleId": 0, "Value": 0 } }

Insert a pricelist item

Request

Inserts a new priceList item. If the PriceListItem already exists, an update is made.

Query
createdBystring

(Optional) The user or system account id that will show as updated by. If none is supplied, Norce Commerce user will be used.ll be used.

Bodyapplication/json

The PriceListItem to insert. Prices should be in the currency of the PriceList.

PartNostring or null

PartNo of the SKU for this price item.

PricelistIdinteger or null(int32)

The internal pricelist id.

Pricenumber or null(decimal)

The price. Read only. Currency is from the pricelist.

PriceRecommendednumber or null(decimal)

The price from inherited pricelist, if any.

IsActiveboolean or null

Specifies if the pricelist item is active or not. Ignored when inserting new pricelist items.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/InsertPricelistItem \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "PartNo": "string",
    "PricelistId": 0,
    "Price": 0,
    "PriceRecommended": 0,
    "IsActive": true,
    "PriceRule": {
      "RuleId": 0,
      "Value": 0
    }
  }'

Responses

OK

Bodyapplication/json
PartNostring or null

PartNo of the SKU for this price item.

PricelistIdinteger or null(int32)

The internal pricelist id.

Pricenumber or null(decimal)

The price. Read only. Currency is from the pricelist.

PriceRecommendednumber or null(decimal)

The price from inherited pricelist, if any.

IsActiveboolean or null

Specifies if the pricelist item is active or not. Ignored when inserting new pricelist items.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

Response
application/json
{ "PartNo": "string", "PricelistId": 0, "Price": 0, "PriceRecommended": 0, "IsActive": true, "PriceRule": { "RuleId": 0, "Value": 0 } }

Update a pricelist item

Request

Updates a priceList item.

Query
updatedBystring

(Optional) The user or system account id that will show as updated by. If none is supplied, Norce Commerce user will be used.ll be used.

Bodyapplication/json

The PriceListItem to update. Prices should be in the currency of the PriceList.

PartNostring or null

PartNo of the SKU for this price item.

PricelistIdinteger or null(int32)

The internal pricelist id.

Pricenumber or null(decimal)

The price. Read only. Currency is from the pricelist.

PriceRecommendednumber or null(decimal)

The price from inherited pricelist, if any.

IsActiveboolean or null

Specifies if the pricelist item is active or not. Ignored when inserting new pricelist items.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/UpdatePricelistItem \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "PartNo": "string",
    "PricelistId": 0,
    "Price": 0,
    "PriceRecommended": 0,
    "IsActive": true,
    "PriceRule": {
      "RuleId": 0,
      "Value": 0
    }
  }'

Responses

OK

Bodyapplication/json
PartNostring or null

PartNo of the SKU for this price item.

PricelistIdinteger or null(int32)

The internal pricelist id.

Pricenumber or null(decimal)

The price. Read only. Currency is from the pricelist.

PriceRecommendednumber or null(decimal)

The price from inherited pricelist, if any.

IsActiveboolean or null

Specifies if the pricelist item is active or not. Ignored when inserting new pricelist items.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

Response
application/json
{ "PartNo": "string", "PricelistId": 0, "Price": 0, "PriceRecommended": 0, "IsActive": true, "PriceRule": { "RuleId": 0, "Value": 0 } }

Get a pricelist for company

Request

Gets a CompanyPriceList for the specified Company. Returns null if the PriceList does not exist.

Query
companyIdinteger(int32)

The internal id of the Company for which the PriceList is fetched.

pricelistIdinteger(int32)

The internal id of the PriceList to fetch.

cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/GetCompanyPricelist \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

Response
application/json
{ "Id": 0, "ParentId": 0, "Name": "string", "Description": "string", "Agreement": "string", "Type": 0, "IsActive": true, "PriceRule": { "RuleId": 0, "Value": 0 }, "PopulationRules": [ { … } ], "CurrencyId": 0, "IsExclusive": true }

List all pricelists for a company

Request

Returns a list of PriceLists for the specified Company.

Query
companyIdinteger(int32)

The internal id of the Company for which the PriceLists are fetched.

cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/ListCompanyPricelists \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/jsonArray [
Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

]
Response
application/json
[ { "Id": 0, "ParentId": 0, "Name": "string", "Description": "string", "Agreement": "string", "Type": 0, "IsActive": true, "PriceRule": { … }, "PopulationRules": [ … ], "CurrencyId": 0, "IsExclusive": true } ]

Insert pricelist for company (v2)

Request

Inserts a new PriceList for the specified Company. If the PriceList is an existing PriceList it will be connected to the Company. Otherwise it will be created.

Query
companyIdinteger(int32)

The internal id of the Company.

createdBystring

(Optional) Account internal id of current user.

cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyapplication/json

The priceList to insert for the Company. The PriceRule for new PriceLists will be 'Use standard price (pct discount)' (id:7) if none is supplied.

Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/InsertCompanyPricelist2 \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "ParentId": 0,
    "Name": "string",
    "Description": "string",
    "Agreement": "string",
    "Type": 0,
    "IsActive": true,
    "PriceRule": {
      "RuleId": 0,
      "Value": 0
    },
    "PopulationRules": [
      {
        "RuleId": 0,
        "ManufacturerId": 0,
        "CategoryId": 0,
        "IsSupplierRequired": true,
        "IsInclusive": true
      }
    ],
    "CurrencyId": 0,
    "IsExclusive": true
  }'

Responses

OK

Bodyapplication/jsonArray [
Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

]
Response
application/json
[ { "Id": 0, "ParentId": 0, "Name": "string", "Description": "string", "Agreement": "string", "Type": 0, "IsActive": true, "PriceRule": { … }, "PopulationRules": [ … ], "CurrencyId": 0, "IsExclusive": true } ]

Update pricelist for company (v2)

Request

Updates a PriceList for the specified Company. If the PriceList is not an existingPriceList it will be created. Otherwise it will be updated. Note that only Reseller and Application specific priceLists can be updated. Any attempt to update an other priceList type will be ignored. If no PriceRule is specified, PriceRule 7, use standard price, with no discount will be used. To delete a Company PriceList use DeleteCompanyPricelist.

Query
companyIdinteger(int32)

The internal id of the Company.

updatedBystring

(Optional) Account internal id of current user.

cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyapplication/json

The priceList to update for the Company. The PriceRule for updated PriceLists will be 'Use standard price (pct discount)' (id:7) if none is supplied.

Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/UpdateCompanyPricelist2 \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "ParentId": 0,
    "Name": "string",
    "Description": "string",
    "Agreement": "string",
    "Type": 0,
    "IsActive": true,
    "PriceRule": {
      "RuleId": 0,
      "Value": 0
    },
    "PopulationRules": [
      {
        "RuleId": 0,
        "ManufacturerId": 0,
        "CategoryId": 0,
        "IsSupplierRequired": true,
        "IsInclusive": true
      }
    ],
    "CurrencyId": 0,
    "IsExclusive": true
  }'

Responses

OK

Bodyapplication/jsonArray [
Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

]
Response
application/json
[ { "Id": 0, "ParentId": 0, "Name": "string", "Description": "string", "Agreement": "string", "Type": 0, "IsActive": true, "PriceRule": { … }, "PopulationRules": [ … ], "CurrencyId": 0, "IsExclusive": true } ]

Delete pricelist from company

Request

Deletes a PriceList for the specified Company. If the PriceList is the last one on any company it will be inactivated. Note that only Reseller priceLists can be deleted. Any attempt to delete an other priceList type will render an Internal Server Error.

Query
companyIdinteger(int32)

The internal id of the Company.

pricelistIdinteger(int32)

The internal id of the priceList to delete for the Company.

updatedBystring

(Optional) Account internal id of current user.

cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/DeleteCompanyPricelist \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/jsonArray [
Idinteger or null(int32)

The internal pricelist id. Set to null when creating a new pricelist.

ParentIdinteger or null(int32)

The parent internal pricelist id. If any.

Namestring or null

The name of the pricelist.

Descriptionstring or null

The description of the pricelist.

Agreementstring or null

The agreement code of the pricelist. Can be an external id of the priceList.

Typeinteger or null(int32)

The type of the pricelist. 0 is default. Other values are application specific.

IsActiveboolean or null

Specifies if the pricelist is active or not. Set this to false before update if you want to delete the pricelist.

PriceRuleobject or null

Defines a price rule for a priceList in this namespace.

PopulationRulesArray of objects or null(PricelistPopulationRule)

A list of population rules for this pricelist.

CurrencyIdinteger or null(int32)

The currencyId for this pricelist.

IsExclusiveboolean or null

Indicates if the pricelist should be used exclusively for this Company, or not. Exclusive pricelists are not used with any standard pricelists and only exclusive pricelists will be in scope if the Company has any.

]
Response
application/json
[ { "Id": 0, "ParentId": 0, "Name": "string", "Description": "string", "Agreement": "string", "Type": 0, "IsActive": true, "PriceRule": { … }, "PopulationRules": [ … ], "CurrencyId": 0, "IsExclusive": true } ]

List price rules

Request

Lists the available price rules.

Query
cultureCodestring

(Optional) Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

curl -i -X GET \
  https://customer-slug.api-se.playground.norce.tech/commerce/customer/1.1/ListPriceRules \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/jsonArray [
Idinteger or null(int32)

The internal Id of the Entity.

Namestring or null

The Name of the Entity.

Descriptionstring or null

The Description of the Entity.

ImageKeystring or null(uuid)

A unique id for the image at our image server. Url for images are formed like http://[client specific CDN]/{ImageKey}. Preset, height and width can be sent as parameters.

Codestring or null

The Code of the Entity.

]
Response
application/json
[ { "Id": 0, "Name": "string", "Description": "string", "ImageKey": "9afa8b7e-ca15-438f-a9d6-f679c437e59c", "Code": "string" } ]

Schemas