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

StringStringKeyValuePair

Keystring or null
Valuestring or null
{ "Key": "string", "Value": "string" }

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

{ "Id": 0, "Name": "string", "TemplateBasket": { "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" }, "Type": { "Id": 0, "Code": "string", "Name": "string", "Description": "string", "EndDate": "2019-08-24T14:15:22Z" }, "StatusId": 0, "HoldUntilDate": "2019-08-24T14:15:22Z", "StartDate": "2019-08-24T14:15:22Z", "EndDate": "2019-08-24T14:15:22Z", "Schedules": [ {} ], "HoldFromDate": "2019-08-24T14:15:22Z", "NextRun": "2019-08-24T14:15:22Z" }

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.

TimeOfDayobject or null
{ "Id": 0, "IsActive": true, "Frequency": { "Id": 0, "Value": "string", "Code": "string" }, "RecurValue": 0, "IsOnMonday": true, "IsOnTuesday": true, "IsOnWednesday": true, "IsOnThursday": true, "IsOnFriday": true, "IsOnSaturday": true, "IsOnSunday": true, "MonthlyDay": 0, "MonthlyInterval": { "Id": 0, "Value": "string", "Code": "string" }, "MonthlyIntervalValue": { "Id": 0, "Value": "string", "Code": "string" }, "TimeOfDay": { "Ticks": 0, "Days": 0, "Hours": 0, "Milliseconds": 0, "Microseconds": 0, "Nanoseconds": 0, "Minutes": 0, "Seconds": 0, "TotalDays": 0.1, "TotalHours": 0.1, "TotalMilliseconds": 0.1, "TotalMicroseconds": 0.1, "TotalNanoseconds": 0.1, "TotalMinutes": 0.1, "TotalSeconds": 0.1 } }