Norce Commerce Shopping v1.1 service (1.1)

Entities and methods to handle baskets and payments. The Shopping service is used to create and manage baskets, and prepare them for the checkout process. Commonly the checkout process is handled by the Norce Checkout API, only the legacy checkout process is handled here. For product or pricing data, use the Product service. For order history, use the Order service. To change or manage promotions use the Management API.

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/

Basket

Contains endpoints for manage baskets and their lifecycle, see more information here.

Operations

Checkout

Contains endpoints for initialized the checkout process, read more about it here. There is also the old legacy purchase endpoints, still used by older solutions and Non-PSP purchases.

Operations

Update delivery method (v4)

Request

Updates the selected DeliveryMethod on a basket. The DeliveryMethod id should be taken from any valid DeliveryMethod in Checkout.DeliveryMethods.

Query
basketIdinteger(int32)

The internal id of the basket to update.

pricelistSeedstring

(Optional) A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

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

currencyIdstring

(Optional) Internal id that specifies in which currency to display prices. If none is supplied, value is resolved from Application.

Bodyapplication/json

The BasketDeliveryMethodUpdate to use when updating the DeliveryMethod for the basket.

Idinteger or null(int32)

The internal id of the DeliveryMethod.

Pricenumber or null(decimal)

The Price of the DeliveryMethod, excluding VAT. Prices set here will be handled as manual prices. If no prices are set the Price will be taken from Norce and be treated as a normal price.

PriceIncVatnumber or null(decimal)

The Price of the DeliveryMethod, including VAT. Prices set here will be handled as manual prices. If this is set it will override Price.

DropPointobject or null

The DropPoint entity represents a pickup place for deliveries. Only used for external or integrated DeliveryMethod providers.

Codestring or null

An external Code for the DeliveryMethod. This should not be set if the Code defined in Norce is to be used.

Carrierstring or null

The carrier providing the delivery method

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/shopping/1.1/UpdateDeliveryMethod4 \
  -H 'ApplicationId: YOUR_API_KEY_HERE' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "Price": 0,
    "PriceIncVat": 0,
    "DropPoint": {
      "Code": "string",
      "RoutingCode": "string",
      "Depot": "string",
      "Name1": "string",
      "Name2": "string",
      "Address1": "string",
      "Address2": "string",
      "PostalCode": "string",
      "City": "string",
      "CountryCode": "string",
      "Contact": "string",
      "Phone": "string",
      "Fax": "string",
      "Email": "string",
      "Latitude": 0.1,
      "Longitude": 0.1,
      "Distance": 0.1,
      "OpeningHours": [
        {
          "Day": 0,
          "Open": "string",
          "Close": "string"
        }
      ],
      "IsSelected": true
    },
    "Code": "string",
    "Carrier": "string"
  }'

Responses

Success

Bodyapplication/json
Basketobject or null

Represents a basket where you can add/remove/update items and information such as discountcodes and pass forward information types.

Buyerobject or null

Information about a Customer.

Payerobject or null

Information about a Customer.

ShipToobject or null

Information about a Customer.

PaymentMethodsArray of objects or null(PaymentMethod)

List of available payment methods for this checkout. May be changed depending on basket contents. Generated by Norce.

DeliveryMethodsArray of objects or null(DeliveryMethod)

List of available delivery methods for this checkout. May be changed depending on basket contents. Generated by Norce.

PaymentsArray of objects or null(Payment)

List of payment attemtps made for this checkout. Each payment method selected will create it's own entry in this list.

Response
application/json
{ "Basket": { "Id": 0, "CustomerId": 0, "CompanyId": 0, "SalesContactId": 0, "StatusId": 0, "CurrencyId": 0, "CurrencyCode": "str", "Comment": "string", "OrderReference": "string", "DiscountCode": "string", "ReferId": 0, "ReferUrl": "string", "ValidTo": "2019-08-24T14:15:22Z", "IsEditable": true, "Items": [], "Info": [], "Summary": {}, "AppliedPromotions": [], "IpAddress": "string", "AttestedBy": 0, "TypeId": 0, "DoHold": true, "IsBuyable": true, "InvoiceReference": "string", "PaymentMethodId": 0, "DeliveryMethodId": 0, "SalesAreaId": 0, "ExternalDiscountCode": "string" }, "Buyer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "Payer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "ShipTo": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "PaymentMethods": [ {} ], "DeliveryMethods": [ {} ], "Payments": [ {} ] }

Update payment method

Request

Updates the selected payment on a basket. The payment id should be taken from any valid PaymentMethod in Checkout.PaymentMethods.

Query
basketIdinteger(int32)

The internal id of the basket to update.

paymentMethodIdinteger(int32)

The internal id of the PaymentMethod to select.

pricelistSeedstring

(Optional) A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

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

currencyIdstring

(Optional) Internal id that specifies in which currency to display prices. If none is supplied, value is resolved from Application.

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

Responses

Success

Bodyapplication/json
Basketobject or null

Represents a basket where you can add/remove/update items and information such as discountcodes and pass forward information types.

Buyerobject or null

Information about a Customer.

Payerobject or null

Information about a Customer.

ShipToobject or null

Information about a Customer.

PaymentMethodsArray of objects or null(PaymentMethod)

List of available payment methods for this checkout. May be changed depending on basket contents. Generated by Norce.

DeliveryMethodsArray of objects or null(DeliveryMethod)

List of available delivery methods for this checkout. May be changed depending on basket contents. Generated by Norce.

PaymentsArray of objects or null(Payment)

List of payment attemtps made for this checkout. Each payment method selected will create it's own entry in this list.

Response
application/json
{ "Basket": { "Id": 0, "CustomerId": 0, "CompanyId": 0, "SalesContactId": 0, "StatusId": 0, "CurrencyId": 0, "CurrencyCode": "str", "Comment": "string", "OrderReference": "string", "DiscountCode": "string", "ReferId": 0, "ReferUrl": "string", "ValidTo": "2019-08-24T14:15:22Z", "IsEditable": true, "Items": [], "Info": [], "Summary": {}, "AppliedPromotions": [], "IpAddress": "string", "AttestedBy": 0, "TypeId": 0, "DoHold": true, "IsBuyable": true, "InvoiceReference": "string", "PaymentMethodId": 0, "DeliveryMethodId": 0, "SalesAreaId": 0, "ExternalDiscountCode": "string" }, "Buyer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "Payer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "ShipTo": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "PaymentMethods": [ {} ], "DeliveryMethods": [ {} ], "Payments": [ {} ] }

Update payment method (v2)

Request

Updates the selected payment on a basket. The payment id should be taken from any valid PaymentMethod in Checkout.PaymentMethods.

Query
basketIdinteger(int32)

The internal id of the basket to update.

paymentMethodIdinteger(int32)

The internal id of the PaymentMethod to select.

pricelistSeedstring

(Optional) A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

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

currencyIdstring

(Optional) Internal id that specifies in which currency to display prices. If none is supplied, value is resolved from Application.

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

Responses

Success

Bodyapplication/json
Basketobject or null

Represents a basket where you can add/remove/update items and information such as discountcodes and pass forward information types.

Buyerobject or null

Information about a Customer.

Payerobject or null

Information about a Customer.

ShipToobject or null

Information about a Customer.

PaymentMethodsArray of objects or null(PaymentMethod)

List of available payment methods for this checkout. May be changed depending on basket contents. Generated by Norce.

DeliveryMethodsArray of objects or null(DeliveryMethod)

List of available delivery methods for this checkout. May be changed depending on basket contents. Generated by Norce.

PaymentsArray of objects or null(Payment)

List of payment attemtps made for this checkout. Each payment method selected will create it's own entry in this list.

Response
application/json
{ "Basket": { "Id": 0, "CustomerId": 0, "CompanyId": 0, "SalesContactId": 0, "StatusId": 0, "CurrencyId": 0, "CurrencyCode": "str", "Comment": "string", "OrderReference": "string", "DiscountCode": "string", "ReferId": 0, "ReferUrl": "string", "ValidTo": "2019-08-24T14:15:22Z", "IsEditable": true, "Items": [], "Info": [], "Summary": {}, "AppliedPromotions": [], "IpAddress": "string", "AttestedBy": 0, "TypeId": 0, "DoHold": true, "IsBuyable": true, "InvoiceReference": "string", "PaymentMethodId": 0, "DeliveryMethodId": 0, "SalesAreaId": 0, "ExternalDiscountCode": "string" }, "Buyer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "Payer": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "ShipTo": { "Id": 0, "Key": "5eb041b0-19c9-4022-bd51-0e723885f5dd", "Code": "string", "Email": "string", "Ssn": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "PaymentMethods": [ {} ], "DeliveryMethods": [ {} ], "Payments": [ {} ] }

DeliveryMethods

Contains endpoints for viewing metadata about configured delivery methods, when using Norces internal shipping logic.

Operations

InfoTypes

Contains endpoints for viewing metadata for extended fields on the basket and basketitems.

Operations

OnHand

Contains endpoints for looking up availability on baskets.

Operations

OrderRequest

Contains endpoints for viewing orders snapshots.

Operations

Payments

Contains endpoints for legacy purchases, still used by older solutions and Non-PSP purchases.

Operations

Promotions

Contains endpoints for viewing more promotion information.

Operations

Schemas