Cart

Carts are a straightforward way for a buyer user to interact with an order before submitting it. Unlike order endpoints, an order ID is not needed to interact with the cart. This simplifies workflows and eliminates the need to keep track of the order ID on the front end. Please note cart should be used as a distinct alternative to order endpoints for a buyer user during the shopping experience; combining the use of cart endpoints with order endpoints is not supported and may have unexpected results. Only available to buyer users.

Retrieve a cart

Request

If the ID of the Order returned is null, the cart has not yet been interacted with. Once an item is added, the Order.ID will be populated.

Security
OAuth2(Required scopes: FullAccessOrderContributorShopper)
curl -i -X GET \
  https://api.ordercloud.io/v1/cart \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

If the ID of the Order returned is null, the cart has not yet been interacted with. Once an item is added, the Order.ID will be populated.

Bodyapplication/json
IDstring, <= 100 characters
Example:""
FromUserobject(OrderUser)read-only

User placing the order.

Example:
{ "ID": "", "CompanyID": "", "Username": "", "Password": "", "FirstName": "", "LastName": "", "Email": "", "Phone": "", "TermsAccepted": "2018-01-01T00:00:00-06:00", "Active": false, "xp": {}, "AvailableRoles": [ "" ], "Locale": { "ID": "", "OwnerID": "", "Currency": "", "Language": "" }, "DateCreated": "2018-01-01T00:00:00-06:00", "LastActive": "2018-01-01T00:00:00-06:00", "PasswordLastSetDate": "2018-01-01T00:00:00-06:00" }
FromCompanyIDstring

ID of the Buyer placing the order, or the marketplace owner when an order is being forwarded. Mainly useful to the marketplace owner or supplier receiving it.

Example:""
ToCompanyIDstring

ID of the marketplace owner or supplier receiving the order, only writable on create. Mainly useful to the user placing it.

Example:""
FromUserIDstring

This property is only writable when creating an order on behalf of a buyer user.

Example:""
BillingAddressIDstring
Example:""
BillingAddressobject(Address)read-only
Example:
{ "ID": "", "DateCreated": "2018-01-01T00:00:00-06:00", "CompanyName": "", "FirstName": "", "LastName": "", "Street1": "", "Street2": "", "City": "", "State": "", "Zip": "", "Country": "", "Phone": "", "AddressName": "", "xp": {} }
ShippingAddressIDstring

ID of the ShippingAddress for all line items on the order. Null when there are multiple shipping addresses defined.

Example:""
Commentsstring, <= 2000 characters
Example:""
LineItemCountinteger, (int32)read-only
Example:0
Statusstring(OrderStatus)read-only
Enum:"Unsubmitted""AwaitingApproval""Declined""Open""Completed""Canceled"
Example:"Unsubmitted"
DateCreatedstring, (date-time)read-only
Example:"2018-01-01T00:00:00-06:00"
DateSubmittedstring, (date-time)read-only

Null until the order passes from the buyer to the marketplace owner, including when Status is PendingApproval.

Example:"2018-01-01T00:00:00-06:00"
DateApprovedstring, (date-time)read-only
Example:"2018-01-01T00:00:00-06:00"
DateDeclinedstring, (date-time)read-only
Example:"2018-01-01T00:00:00-06:00"
DateCanceledstring, (date-time)read-only
Example:"2018-01-01T00:00:00-06:00"
DateCompletedstring, (date-time)read-only

Populated when all items on an order have shipped, or the order is explicitly completed.

Example:"2018-01-01T00:00:00-06:00"
LastUpdatedstring, (date-time)read-only
Example:"2018-01-01T00:00:00-06:00"
Subtotalnumber, (float)read-only

Sum of all LineItem.LineSubtotals.

Example:0
ShippingCostnumber, (float)

Modifying requires OverrideShipping role.

Example:0
TaxCostnumber, (float)

Modifying requires TaxOverride role.

Example:0
Gratuitynumber, (float), >= 0
Default:0
Example:0
Feesnumber, (float), >= 0read-only

Fees associated with order or line items

Default:0
Example:0
BaseDiscountnumber, (float)read-only

Sum of all discount amounts from discount assignments applied to line items on this order.

Example:0
PromotionDiscountnumber, (float)read-only

Sum of all promotion amounts applied to the order.

Example:0
Currencystringread-only

Inherited from the user placing the order.

Example:""
Totalnumber, (float)read-only

Subtotal - BaseDiscount - PromotionDiscount + TaxCost + ShippingCost + Gratuity + Fees

Example:0
IsSubmittedbooleanread-only

True if this order has been passed from the Buyer to the marketplace owner or supplier.

Example:false
SubscriptionIDstringread-only

ID of the subscription used to create an order in an automated process.

Example:""
xpobject
Example:
{}
Response
{ "ID": "", "FromUser": { "ID": "", "CompanyID": "", "Username": "", "Password": "", "FirstName": "", "LastName": "", "Email": "", "Phone": "", "TermsAccepted": "2018-01-01T00:00:00-06:00", "Active": false, "xp": {}, "AvailableRoles": [ … ], "Locale": { … }, "DateCreated": "2018-01-01T00:00:00-06:00", "LastActive": "2018-01-01T00:00:00-06:00", "PasswordLastSetDate": "2018-01-01T00:00:00-06:00" }, "FromCompanyID": "", "ToCompanyID": "", "FromUserID": "", "BillingAddressID": "", "BillingAddress": { "ID": "", "DateCreated": "2018-01-01T00:00:00-06:00", "CompanyName": "", "FirstName": "", "LastName": "", "Street1": "", "Street2": "", "City": "", "State": "", "Zip": "", "Country": "", "Phone": "", "AddressName": "", "xp": {} }, "ShippingAddressID": "", "Comments": "", "LineItemCount": 0, "Status": "Unsubmitted", "DateCreated": "2018-01-01T00:00:00-06:00", "DateSubmitted": "2018-01-01T00:00:00-06:00", "DateApproved": "2018-01-01T00:00:00-06:00", "DateDeclined": "2018-01-01T00:00:00-06:00", "DateCanceled": "2018-01-01T00:00:00-06:00", "DateCompleted": "2018-01-01T00:00:00-06:00", "LastUpdated": "2018-01-01T00:00:00-06:00", "Subtotal": 0, "ShippingCost": 0, "TaxCost": 0, "Gratuity": 0, "Fees": 0, "BaseDiscount": 0, "PromotionDiscount": 0, "Currency": "", "Total": 0, "IsSubmitted": false, "SubscriptionID": "", "xp": {} }