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

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

Address

Information about an address. Addresses appear as InvoiceAddress or DeliveryAddresses or when ever an Address is needed

Idinteger or null(int32)

The internal Id of the Address. When creating a new Address leave this blank as Norce will generate the Id.

CareOfstring or null[ 0 .. 100 ] characters

The CareOf of the Address. MaxLength: 100

Line1string or null[ 0 .. 255 ] characters

The first address line of the Address. MaxLength: 255

Line2string or null[ 0 .. 255 ] characters

The second address line of the Address. MaxLength: 255

Zipstring or null[ 0 .. 50 ] characters

The zip code of the Address. MaxLength: 50

Citystring or null[ 0 .. 50 ] characters

The City of the Address. MaxLength: 50

CountryIdinteger or null(int32)

The internal Id for the country associated to the Address. When creating or updating Country on an Address either specify the CountryId or just the Country string. If Id is specified it will be used to resolve the Name. If none is specified the default for the Application will be used.

Countrystring or null[ 0 .. 50 ] characters

The country name of the Address. When creating or updating Country on an Address either specify the CountryId or just the Country string. If Name is specified it will be used to resolve the Name and Id. Name should then be specified as Country.Code since Names are culture specific. If none is specified the default for the Application will be used. MaxLength: 50

Regionstring or null[ 0 .. 50 ] characters

The Region of the Address. MaxLength: 50

IsValidatedboolean or null

Indicates if the address had been validated. It is up to the Application to validate addresses. Use normal address-methods to update this value.

GlobalLocationNostring or null[ 0 .. 50 ] characters

The Global Location Number (GLN) is part of the GS1 systems of standards. It is a simple tool used to identify a location and can identify locations uniquely where required. This is only used for invoice addresses. MaxLength: 50

ShippingPhoneNumberstring or null[ 0 .. 50 ] characters

Phone number for shipping address. Only applicable in shipping addresses. MaxLength: 50

Codestring or null

An external Code of the Address identifying this addess to external address.

{ "Id": 0, "CareOf": "string", "Line1": "string", "Line2": "string", "Zip": "string", "City": "string", "CountryId": 0, "Country": "string", "Region": "string", "IsValidated": true, "GlobalLocationNo": "string", "ShippingPhoneNumber": "string", "Code": "string" }

AppliedPromotionOnItem

AppliedPromotionOnItem entity represents promotions applied on Basket.Items. Only Basket.Items with any promotions applied will have any.

Idinteger or null(int32)

The internal id of the Promotion.

Namestring or null

The Name of the Promotion.

DiscountCodestring or null

Will contain the discountCode if the promotion has a discountCode requirement.

AppliedAmountnumber or null(decimal)

Applied discount amount, excluding VAT, for this Promotion on this BasketItem.

AppliedAmountIncVatnumber or null(decimal)

Applied discount amount, including VAT, for this Promotion on this BasketItem.

{ "Id": 0, "Name": "string", "DiscountCode": "string", "AppliedAmount": 0, "AppliedAmountIncVat": 0 }

Basket

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

Idinteger or null(int32)

The internal id of the basket. Used to get a specific basket. Ignored in CreateBasket.

CustomerIdinteger or null(int32)

The customer internal id for a specific customer associated with this basket. This can be set in CreateBasket if the user is logged in. Otherwise use UpdateBuyer to set customer.

CompanyIdinteger or null(int32)

The company internal id for a specific company associated with this basket. This can be set in CreateBasket if the user is logged in with a company. Otherwise use UpdateBuyer to set customer and company.

SalesContactIdinteger or null(int32)
StatusIdinteger or null(int32)

Internal id for the current status of the basket. See ListBasketStatuses.

CurrencyIdinteger or null(int32)

The currency internal id of the basket. This defines the currency used when processing payments. Can be set when creating a Basket or change later with UpdateBasket. Use either CurrencyId or CurrencyCode. If not specified, the default for the Application will be used.

CurrencyCodestring or null[ 0 .. 3 ] characters

The CurrencyCode of the basket. This defines the currency used when processing payments. Can be set when creating a Basket or change later with UpdateBasket. Use either CurrencyId or CurrencyCode. If not specified, the default for the Application will be used. MaxLength: 3

Commentstring or null[ 0 .. 250 ] characters

Free text comment that will be propagated to the order. MaxLength: 250

OrderReferencestring or null[ 0 .. 50 ] characters

An OrderReference which will be tagged on the order. Can be set in CreateBasket or updated in UpdateBasket. MaxLength: 50

DiscountCodestring or null

A comma separated list of used discount codes. To clear the value set it to null or String.Empty an call UpdateBasket.

ReferIdinteger or null(int32)
ReferUrlstring or null[ 0 .. 255 ] characters

MaxLength: 255

ValidTostring or null(date-time)
IsEditableboolean or null

Specifies if the basket is editable. If not, any method that changes the basket will throw Exceptions (Bad Request). It will be false when the basket is no longer a basket. That is when it's paid for or cancelled.

ItemsArray of objects or null(BasketItem)

List of the items in the basket.

InfoArray of objects or null(ExtraInfo)

List of information types with values that may be propagated on the order.

Summaryobject or null

The Summary is a grouping of BasketItem totals. This can be used to display summaries for a Basket.

AppliedPromotionsArray of objects or null(Promotion)

Contains all Promotions valid for a Basket, whether or not they are applied. If any promotions are applied more info about them are added to the corresponding Basket.Items.

IpAddressstring or null[ 0 .. 50 ] characters

The user's IpAddress when the basket was created. The value should be fetched from the user request to the application. MaxLength: 50

AttestedByinteger or null(int32)
TypeIdinteger or null(int32)

The internal type id of the Basket. Can be 1 = Basket, 2 = Saved Basket, 3 = Template Basket for Subscriptions.

DoHoldboolean or null

DoHold specifies if the resulting order should be on hold until all items on the order can be shipped or not. Default is false. This can be set in the Checkout with UpdateBasket if the Customer does not want part deliveries.

IsBuyableboolean or null

IsBuyable is a rule based property indicating if the Basket's status allows the basket to be purchased. It should be regarded as readonly.

InvoiceReferencestring or null[ 0 .. 50 ] characters

An InvoiceReference which will be tagged on the order. Can be set in CreateBasket or updated in UpdateBasket. MaxLength: 50

PaymentMethodIdinteger or null(int32)

The PaymentMethodId from Norce. Can be set in CreateBasket or updated in UpdatePaymentMethod.

DeliveryMethodIdinteger or null(int32)

The DeliveryMethodId from Norce. Can be set in CreateBasket or updated in UpdateDeliveryMethod.

SalesAreaIdinteger or null(int32)

The SalesArea internal id of the basket. This defines the default VAT-rate used. Can be set when creating a Basket or change later with UpdateBasket. If not specified, the default for the Application will be used.

ExternalDiscountCodestring or null

A comma separated list of used external discount codes. To clear the value set it to null or String.Empty and call UpdateBasket.

{ "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": { "Items": {}, "Freigt": {}, "Fees": {}, "Total": {} }, "AppliedPromotions": [ {} ], "IpAddress": "string", "AttestedBy": 0, "TypeId": 0, "DoHold": true, "IsBuyable": true, "InvoiceReference": "string", "PaymentMethodId": 0, "DeliveryMethodId": 0, "SalesAreaId": 0, "ExternalDiscountCode": "string" }