Last updated

Shopping Service schemas

Entities and methods to handle baskets and payments.

Basket

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.

BasketItem

Idinteger or null(int32)

Internal id of the basket item. Used to refer to this particular row in different methods.

LineNointeger or null(int32)

Line number of the item. Used to refer to this particular row in different methods.

ParentLineNointeger or null(int32)

If this item is part of a bundle, an attached item from promotion or such this property will refer to the associated line number.

ProductIdinteger or null(int32)

Internal product id of the product for this basket item.

PartNostring or null[ 0 .. 50 ] characters

The PartNo of this Item. Must be specified when adding items to a basket. MaxLength: 50

ManufacturerPartNostring or null[ 0 .. 50 ] characters

Manufacturer part number. Populated by Norce. MaxLength: 50

Namestring or null[ 0 .. 255 ] characters

Name of the product. Populated by Norce. MaxLength: 255

SubHeaderstring or null[ 0 .. 255 ] characters

Sub header of the product. Populated by Norce. MaxLength: 255

FlagIdSeedstring or null

A comma separated list of internal flag ids.

Typeinteger or null(int32)

The internal type id of the underlying product. See ListSkuTypes under Products.

PriceDisplaynumber or null(decimal)

This is the price, excluding VAT, after applying company discounts and promotions. It is what the customer is paying.

Pricenumber or null(decimal)

This is the snapshot value, excluding VAT, of PriceDisplay when the basket is bought. Should be null. Can be used to set a price from the application when updating or creating BasketItems. Then IsPriceManual must be set to true as well.

PriceOriginalnumber or null(decimal)

This is the original price of the SKU, excluding VAT.

Costnumber or null(decimal)

CostPurchase from Norce Admin, excluding VAT.

VatRatenumber or null(decimal)

A rate to multiply with price to get price inc VAT. 25% VAT equals a VatRate of 1.25.

Quantitynumber or null(decimal)

The Quantity of this Item. Must be specified when adding items to a basket.

Uomstring or null[ 0 .. 50 ] characters

MaxLength: 50

UomCountnumber or null(decimal)
Commentstring or null[ 0 .. 255 ] characters

Free text comment for this basket item. MaxLength: 255

PriceListIdinteger or null(int32)

The internal pricelist id of this Item. Must be specified when adding items to a basket. Use the PriceListId from Product or ProductItem.

ReferIdinteger or null(int32)

Used to tag a BasketItem with some external id.

ReferUrlstring or null[ 0 .. 255 ] characters

Used to tag a BasketItem with an incoming URL. MaxLength: 255

IsEditableboolean or null

Indicates if a basket item is editable or not. This can happen when the API splits rows in promotions. Can be checked to see if an item should be allowed for UpdateBasketItem.

IsDiscountableboolean or null

Whether promotions and company discounts may lower this item's price. Populated by Norce from IsDiscountableOverride when set, otherwise a manual price is not discountable and the price list row decides. Ignored on input.

InfoArray of objects or null(ExtraInfo)

List of information types and values associated with this particular basket item.

OptionalItemsArray of objects or null(BasketItem)

List of basket items. It is used in Basket.Items.

PromotionIdSeedstring or null

Internal ids of promotions applied on this product.

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.

ManufacturerNamestring or null[ 0 .. 100 ] characters

Name of the manufacturer of the product. Populated by Norce. MaxLength: 100

OnHandobject or null

Information about OnHand for a given SKU. There are generally three different types of OnHand in Norce. One for the Web, one for the chosen supplier and one for any specified Store.

OnHandSupplierobject or null

Information about OnHand for a given SKU. There are generally three different types of OnHand in Norce. One for the Web, one for the chosen supplier and one for any specified Store.

PriceRecommendednumber or null(decimal)

The rule based price, excluding VAT, from a priceList, if specified.

ManufacturerIdinteger or null(int32)

Internal manufacturer id for the product. Populated by Norce.

UniqueNamestring or null[ 0 .. 500 ] characters

A unique name that can be used in Urls and to get a Product. GetProduct and GetProductByUniqueName gets the same Product. MaxLength: 500

StatusIdinteger or null(int32)

The status of the underlying product. Lookup references in ListStatuses.

StockDisplayBreakPointinteger or null(int32)

A value that can be used for display logic regarding OnHand.

PriceCatalognumber or null(decimal)

The original price, excluding VAT, if specified.

IsBuyableboolean or null

Indicates if the item is buyable or not. Will always be false if the status is closed. An exception will be thrown if IsBuyable is false and an attempt to buy the item is made.

SubDescriptionstring or null

Sub description from Norce Admin.

CategoryIdSeedstring or null

A comma separated list of internal category ids ordered so the primary category is first.

RecommendedQuantitynumber or null(decimal)

Indicates the default value used as quantity when buying the product. If IsRecommendedQuantityFixed is true, only multiples of this quantity should be allowed.

IsRecommendedQuantityFixedboolean or null

If this is set to true only multiples of RecommendedQuantity should be allowed.

AppliedPromotionsArray of objects or null(AppliedPromotionOnItem)

Applied promotions for this item, if any. It will contain some info about what promotion was applied and amount applied.

RequirementPromotionIdSeedstring or null

A comma separated list of promotion internal ids for this item that are fulfilling the requirements.

IsSubscribableboolean or null

True if this item can be added to a Subscription. False otherwise. Can be used when copying BasketItems from one Basket to a TemplateBasket in a Subacription.

DescriptionHeaderstring or null[ 0 .. 255 ] characters

DescriptionHeader for the product as specified in Norce Admin. MaxLength: 255

IsPriceManualboolean or null

Used when setting price on a BasketItem from the application. Manual prices are not discountable when applying promotions or company discounts unless IsDiscountableOverride is set to true.

PriceStandardnumber or null(decimal)

The standard price, excluding VAT, if specified.

EanCodestring or null[ 0 .. 50 ] characters

SKU EAN code. MaxLength: 50

CostUnitnumber or null(decimal)

CostUnit, excluding VAT, from Norce Admin.

PriceDisplayIncVatnumber or null(decimal)

This is the price including VAT after applying company discounts and promotions. It is what the customer is paying.

PriceListLockedboolean or null

Set to true to exclude this item's price list from business logic when selecting cheapest price. Will be set to false if price list is unavailable.

PriceOriginalIncVatnumber or null(decimal)

This is the original price of the SKU, including VAT.

PriceRecommendedIncVatnumber or null(decimal)

The rule based price, including VAT, from a priceList, if specified.

PriceCatalogIncVatnumber or null(decimal)

The original price, including VAT, if specified.

PriceStandardIncVatnumber or null(decimal)

The standard price, including VAT, if specified.

Weightnumber or null(decimal)

The weight of a single item.

Heightnumber or null(decimal)

The height of a single item.

Widthnumber or null(decimal)

The width of a single item.

Lengthnumber or null(decimal)

The length of a single item.

IsDropShipOnlyboolean or null

Is item only sent through dropshipping.

ChildTypeIdinteger or null(int32)

Describes how a child item relates to its parent. 1 = ManagedStructureChild, 2 = PromotionAddedItem, 3 = Manual. Null for top level items. Populated by Norce.

IsDiscountableOverrideboolean or null

Set true or false to decide discountability explicitly, for a manual price as well as a price list price. Leave null to let Norce decide. Returned exactly as set.

ThumbnailImagestring or nullDeprecated
OnHandValuenumber or null(decimal)Deprecated
IncomingValuenumber or null(decimal)Deprecated
NextDeliveryDatestring or null(date-time)Deprecated
LeadtimeDayCountinteger or null(int32)Deprecated
CategoryIdinteger or null(int32)Deprecated

BasketPagedList

ItemCountinteger or null(int32)

Total number of baskets.

ItemsArray of objects or null(Basket)

List of baskets.

InsertItemsPostPurchaseData

Used as input to InsertItemsPostPurchase since WCF cannot take more than one complex type at once as parameter.

ItemsToAddArray of objects or null(BasketItem)

The items to add to the purchase. The items to insert must have its PartNo, Quantity and PriceListId set. ParentLineNo, Name, Comment, ReferId and ReferUrl can be used if other values than the default are wanted. All other properties will be populated from the system.

PaymentParametersArray of objects or null(NameValue)

Roundtrip of the parameters received in the original payment response.

SavedBasket

Idinteger or null(int32)

Internal id of the saved basket.

Namestring or null

Name given to this specific saved basket.

Createdstring or null(date-time)

Creation date.

CustomerIdinteger or null(int32)

Internal customer id of associated customer, if any.

ValidTostring or null(date-time)

Valid date, if any.

Summary

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

Itemsobject or null

The SummaryItem is the summary used for each item in Summary.

Freigtobject or null

The SummaryItem is the summary used for each item in Summary.

Feesobject or null

The SummaryItem is the summary used for each item in Summary.

Totalobject or null

The SummaryItem is the summary used for each item in Summary.

SummaryItem

The SummaryItem is the summary used for each item in Summary.

Amountnumber or null(decimal)

Total Amount exclusive VAT. PriceDisplay * Quantity.

Vatnumber or null(decimal)

The total VAT amount.

AmountIncVatnumber or null(decimal)

Total Amount including VAT. PriceDisplayIncVat * Quantity.

Checkout

Checkout

Used to connect a specific basket with customer information, payment and delivery options.

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.

Payment

Represents a single payment attempt for this basket.

PaymentCodeinteger or null(int32)

System generated id for this particular payment. Client specific.

Amountnumber or null(decimal)

Payment amount, including VAT.

CardNostring or null

Card number if payment has been made by credit card or gift card. Populated by PSP.

PaymentMethodIdinteger or null(int32)

Internal id of the payment method for this payment. Application specific.

PaymentServiceIdinteger or null(int32)

Internal id of the payment service for this payment. System specific. Indicates the PSP.

PurchaseEx2Data

Used as input to PurchaseEx2 since WCF cannot take more than one complex type at once as parameter.

Checkoutobject or null

Used to connect a specific basket with customer information, payment and delivery options.

PaymentParametersArray of objects or null(NameValue)

General: 'test'=true to enable tests. When 'test' is used no payments will be processed for real. Payments may interpret supplied values such as cardNumber or ssn to simulate failures. Not implemented. Klarna: 'sessionId'=id. Used to provide a sessionId to Klarna payments. Not implemented. Payex and Dibs. Supported values are 'returnUrl' and 'cancelUrl'. Values should point to where the payment service should go in case of success/failure.

DeliveryMethods

BasketDeliveryMethodUpdate

Used when updating the Checkout with a DeliveryMethod. See UpdateDeliveryMethod4 for more info.

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

DeliveryMethod

Represent a DeliveryMethod in Norce. DeliveryMethods can be specified in the Admin UI or fetch from integrated Delivery providers such as ShipAdvisor. Application specific.

Idinteger or null(int32)

The internal id of the DeliveryMethod.

Namestring or null

The Name of the DeliveryMethod.

TypeIdinteger or null(int32)

The internal type id of the DeliveryMethod. DeliveryMethodTypes are logical groupings of different types such as home delivery, pickup and such.

TypeNamestring or null

The TypeName of the DeliveryMethodType.

Descriptionstring or null

The Description of the DeliveryMethod.

PartNostring or null

The part number, if any, of the product representing the DeliveryMethod. Products setup for delivery methods must have a SkuType equal to Freight. These are handled by Norce and added and removed automatically.

Pricenumber or null(decimal)

The Price of the DeliveryMethod, excluding VAT.

VatRatenumber or null(decimal)

A rate to multiply with price to get price inc VAT. 25% VAT equals a VatRate of 1.25.

IsNotifiableboolean or null

Indicates if the DeliveryMethod has delivery notifications.

IsSelectedboolean or null

IsSelected is set to true for the currently selected DeliveryMethod on baskets. All other DeliveryMethods have this set to false. If no DeliveryMethod has been set all will have this value set to false.

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.

IsForCompanyOnlyboolean or null

Indicates if the DeliveryMethod has is for Companies only.

IsForPersonOnlyboolean or null

Indicates if the DeliveryMethod has is for Customers only.

Costnumber or null(decimal)

The Cost of the DeliveryMethod.

StoreIdinteger or null(int32)

The internal store id of any Store connected to this DeliveryMethod. Most often this will be set if ZipCode mappings exist in Norce.

WarehouseIdinteger or null(int32)

The internal warehouse id of any Warehouse connected to this DeliveryMethod. Most often this will be set if ZipCode mappings exist in Norce.

LocationIdinteger or null(int32)

The internal location id of any WarehouseLocation connected to this DeliveryMethod. Most often this will be set if ZipCode mappings exist in Norce.

DropPointsArray of objects or null(DropPoint)

A list of DropPoint, if any, for the DeliveryMethod. These are not kept in Norce but fetched from integrated DeliveryMethod providers such as ShipAdvisor.

Codestring or null

An external Code for the DeliveryMethod.

Carrierstring or null

Optional information about carrier

ImagePathstring or nullDeprecated

DropPoint

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

Codestring or null

Code is the external/integrated DeliveryMethod provider's code for the pickup store.

Name1string or null

The name of the place to pickup the goods.

Name2string or null

The name part 2 of the place to pickup the goods.

Address1string or null

The Address of the place to pickup the goods.

Address2string or null

The Address part 2 of the place to pickup the goods.

PostalCodestring or null

The ZipCode of the place to pickup the goods.

Citystring or null

The City of the place to pickup the goods.

CountryCodestring or null

The CountryCode of the place to pickup the goods.

Contactstring or null

The Contact of the place to pickup the goods.

Phonestring or null

The Phone to the place to pickup the goods.

Emailstring or null

The Email to the place to pickup the goods.

Latitudenumber or null(double)

The Latitude part of the location of the pickup. Can be used to calculate distances.

Longitudenumber or null(double)

The Longitude part of the location of the pickup. Can be used to calculate distances.

Distancenumber or null(double)

The Distance to the location of the pickup.

OpeningHoursArray of objects or null(OpeningHours)

A list of opening hours for the pickup.

IsSelectedboolean or null

Indicates if this is the selected DropPoint or not. Gets set by Norce.

RoutingCodestring or nullDeprecated
Depotstring or nullDeprecated
Faxstring or nullDeprecated

OpeningHours

Dayinteger or null(int32)
Enum0123456
Openstring or null
Closestring or null

InfoTypes

ExtraInfo

Information carrying entity to convey customer specific information from the basket to the order, PSP et.al.

TypeIdinteger or null(int32)

The internal id of type. This TypeId might be different in different tiers such as Stage and Production. Use Code if hard coding is required.

Valuestring or null

The Value of the Entity.

Codestring or null

The Code of the type, if existing. Use this value when hard coding is required.

OnHand

No entities. See ProductOnHand

OrderRequest

No entities. Returns raw xml. TODO!

PaymentMethods

PaymentMethod

Represents a specific payment method in Norce. A PSP may be represented with multiple payment methods. Application specific.

Idinteger or null(int32)

Internal id for this payment method.

Namestring or null

Descriptive name of the payment method.

TypeIdinteger or null(int32)

Internal type id for this payment method.

TypeNamestring or null

Clear text name of the type of this payment method.

Descriptionstring or null

Free text description of the payment method.

PartNostring or null

Part number for this payment method, if configured.

Pricenumber or null(decimal)

Price, excluding VAT, to use this payment method, if configured.

VatRatenumber or null(decimal)

A rate to multiply with price to get price inc VAT. 25% VAT equals a VatRate of 1.25.

IsSelectedboolean or null

Indicates if this is the currently selected payment method for the Checkout. Only one may have this flag set to true. Use UpdatePaymentMethod3 to set this property.

Serviceobject or null

Represents a way of payment. A client may have several payment methods using the same service. A PSP may offer several payment services.

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.

IsForCompanyOnlyboolean or null

Indicates if this payment method is only allowed for companies. Cannot be combined with IsForPersonOnly.

IsForPersonOnlyboolean or null

Indicates if this payment method is only allowed for persons. Cannot be combined with IsForCompanyOnly.

ImagePathstring or nullDeprecated

PaymentService

Represents a way of payment. A client may have several payment methods using the same service. A PSP may offer several payment services.

Idinteger or null(int32)

Internal id of this payment service.

Namestring or null

Descriptive name of this payment service.

Descriptionstring or null
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.

ImagePathstring or nullDeprecated

Payments

PaymentResponse

Response from payment service calls such as GetPaymentForm, Purchase, PurchaseEx.

Statusstring or null

String response. OK if successful, otherwise may have different values depending on PSP.

StatusDescriptionstring or null

Descriptive text for the status.

BasketIdinteger or null(int32)

Internal id of the associated basket.

OrderNostring or null

Order number if order's been created.

PaymentCodestring or null

Internal identifier of this specific payment attempt.

PaymentReferencestring or null

External identifier of this specific payment attempt, usually from the PSP.

HostedPaymentPagestring or null

Used when a payment should be finalized on a different platform, e.g. sending a link by SMS to customer.

RedirectUrlstring or null

Configurated redirection URL after successful payment.

RedirectParametersArray of objects or null(NameValue)

PSP specific data returned for the payment. See PSP documentation.

IsSyncronousboolean or null

Indicates if the payment attempt was synchronous or not.

PaymentServiceIdinteger or null(int32)

Internal id of the payment service used.

Promotions

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.

Promotion

The Promotion entity represents a promotion in Norce. It contains some meta data from the Promotion as well as applied total amount when applicable.

Idinteger or null(int32)

The internal id of the Promotion.

Namestring or null[ 0 .. 255 ] characters

The Name of the Promotion. MaxLength: 255

Headerstring or null[ 0 .. 255 ] characters

SubHeader from Norce. MaxLength: 255

ShortDescriptionstring or null[ 0 .. 255 ] characters

DescriptionHeader from Norce. MaxLength: 255

Description1string or null

Description from Norce.

Description2string or null

SubDescription from Norce.

StartDatestring or null(date-time)

The StartDate of the Promotion, if any. Only valid promotions will be returned.

EndDatestring or null(date-time)

The EndDate of the Promotion, if any. Only valid promotions will be returned.

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.

RequirementSeedstring or null

A comma separated list of fulfilled requirements for this promotion.

DiscountCodestring or null

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

IsExcludedFromPriceCalculationboolean or null

A value of true means the promotion was applied last an not included in any price calculations.

AllowProductListingboolean or null

This flag can be checked to see whether the promotion allows listing of products from requirements. Use Products.ListProductsByPromotionRequirement to list products. Note that if this property is true and no product requirements exists, no products will be listed.

ImagesArray of objects or null(File)

A list of additional images files uploaded for the promotion. Images can be differentiated by using different types. See ListPromotionImageTypes for available types.

ProductFiltersArray of objects or null(PromotionProductFilter)

A list of productFilters for the promotion. Can be used to filter or fetch promotions matched by Products. match the products properties against the filter values Each ProductFilter must match all existing values and if any ProductFilter matches the promotion will be valid for that product.

AppliedAmountnumber or null(decimal)

Applied discount amount, excluding VAT, if fetched on AppliedPromotions property on the basket. In that case it will be the sum of all applied amounts on all Basket.Items. This value is rounded to two decimals.

EffectSeedstring or null

A comma separated list of applicable effects for this promotion.

FreightDiscountPctnumber or null(decimal)

FreightDiscountPct can be used to calculate external freight prices. The value is given as percentage as 100.00 for 100% discount. Only used for FreightDiscounts.

IsStackableboolean or null

Promotion effect quantity or basket discount is multiplied with how many times requirement is fulfilled.

AppliedAmountIncVatnumber or null(decimal)

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

ExclusivityTypeinteger or null(int32)

ExclusivityType allows setting promotions as NotExclusive = 0, Exclusive = 1, or IgnoreExclusivity = 2.

ExternalCodestring or null[ 0 .. 255 ] characters

The external code of the Promotion. This is NOT the discount code. MaxLength: 255

PromotionProductFilter

PromotionProductFilter shows what any product in the requirement or effect is filtered by. Values should be AND:ed if used to filter products.

ManufacturerIdinteger or null(int32)

An optional Manufacturer internal id for filtered products.

CategorySeedstring or null

An optional CategorySeed for filtered products.

TypeIdinteger or null(int32)

An optional SKU Type internal id for filtered products.

ProductIdinteger or null(int32)

An optional Product internal id for filtered products.

VariantProductIdinteger or null(int32)

An optional VariantProduct internal id for filtered products. Equal to use PartNo.

PartNostring or null

An optional PartNo for filtered products. Equal to use VariantProductId.

PricelistIdinteger or null(int32)

An optional pricelist internal id for filtered products.

FlagIdinteger or null(int32)

An optional Flag internal id for filtered products. Only set if flagId is inclusive.

Subscriptions

Subscription

A Subscription is created by a user. A subscription is backed by a quotation acting as a template for creating orders at scheduled intervals.

Idinteger or null(int32)

A unique internal id for this Subscription. When creating new Subscription this should be left as null and will be ignored.

Namestring or null

The name of the Subscription. This will also be the name of the template basket. Can be used to distinguish Subscriptions from each other.

TemplateBasketobject or null

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

Typeobject or null

A SubscriptionType specified for the application. Used by Subscription. SubscriptionTypes are created in Norce Admin.

StatusIdinteger or null(int32)

The internal status id for this Subscription. When a Subscription is created the status will be 0 (Inactive) and ignored. To activate a Subscription it must pass through the Checkout process. See ListSubscriptionStatus for valid values. Can only be changed between Active and Paused. To delete a Subscription use DeleteSubscription.

HoldUntilDatestring or null(date-time)

A date used to temporarily pause the Subscription and automatically activate it again on the specified date. If no HoldFromDate is specified the pause will start immediately.

StartDatestring or null(date-time)

An optional start date for the Subscription. The Subscription can be activated but no orders will be processed before this date if specified. Can only be changed if a specified date has not passed or if the Subscription is still inactive. If no StartDate is specified when activating the Subscription this will be set to the activation date.

EndDatestring or null(date-time)

An optional end date for the Subscription. The Subscription will be deleted after this date if specified. See DeleteSubscription for details about deleting subscriptions.

SchedulesArray of objects or null(SubscriptionSchedule)

The schedules for this Subscription. Any Subscription must have at least one schedule when activated.

HoldFromDatestring or null(date-time)

A date used to temporarily pause the Subscription from the specified date and automatically activate it again on HoldUtilDate. If this is specified HoldUntilDate must also be specified.

NextRunstring or null(date-time)

Calculated date for next time an order will be created by this subscription

SubscriptionSchedule

A specific schedule for a Subscription. Schedules are used to determine when orders should be created from the template basket. The StartDate of the Subscription is used as start for the Schedule.

Idinteger or null(int32)

A unique internal id for this SubscriptionSchedule. When creating new schedules this should be left as null.

IsActiveboolean or null

Specifies if the schedule is active or not. Only active schedules are considered when creating orders.

Frequencyobject or null

An Entity used where Id and Value is needed. Mostly used for lookup data.

RecurValueinteger or null(int32)

Specifies how often the Frequency should be applied. If Frequency is 'Daily' and RecurValue is 2 then the schedule is every second day.

IsOnMondayboolean or null

Specifies if the schedule should be applied on a Monday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnTuesdayboolean or null

Specifies if the schedule should be applied on a Tuesday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnWednesdayboolean or null

Specifies if the schedule should be applied on a Wednesday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnThursdayboolean or null

Specifies if the schedule should be applied on a Thursday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnFridayboolean or null

Specifies if the schedule should be applied on a Friday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnSaturdayboolean or null

Specifies if the schedule should be applied on a Saturday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

IsOnSundayboolean or null

Specifies if the schedule should be applied on a Sunday. Only used when Frequency is 'Weekly'. At least one of the IsOnDay values must be specified.

MonthlyDayinteger or null(int32)

Specifies if the schedule should be applied on a specific day. Only used when Frequency is 'Monthly' and not any of the MonthlyInterval values are used.

MonthlyIntervalobject or null

An Entity used where Id and Value is needed. Mostly used for lookup data.

MonthlyIntervalValueobject or null

An Entity used where Id and Value is needed. Mostly used for lookup data.

TimeOfDaystring or null(date-span)

Specifies at what time the schedule should be applied. Just the Hours and Minutes parts are used. Formats 'hh:mm.ss' or 'hh:mm'.

SubscriptionScheduleData

General data for scheduling Subscriptions. Data can be used to populate drop lists with values needed when creating SubscriptionSchedules.

FrequenciesArray of objects or null(IdValue)

A list of frequencies. Defines how often should a Subscription should produce an order. See SubscriptionSchedule for usage.

MonthlyIntervalsArray of objects or null(IdValue)

A list of intervals used together with MonthlyIntervalValues. See SubscriptionSchedule for usage.

MonthlyIntervalValuesArray of objects or null(IdValue)

A list of interval values used together with MonthlyIntervals. See SubscriptionSchedule for usage.

SubscriptionType

A SubscriptionType specified for the application. Used by Subscription. SubscriptionTypes are created in the Admin UI.

Idinteger or null(int32)

A internal id for this type.

Codestring or null

An external code use to identify this type. Used when creating Subscription.

Namestring or null

The name of the type.

Descriptionstring or null

A description of the type.

EndDatestring or null(date-time)

An optional end date for the SubscriptionType. Subscriptions created for this SubscriptionType can not have an end date later than this.