Backend API

Fields
idobjectId

Unique identifier for the cart.

abandonedboolean

Indicates the cart was abandoned after 3 hours of inactivity. After being marked as abandoned, this field is automatically set back to false after an update to items, billing, or shipping info.

abandoned_notificationsint

Number of abandoned cart notifications sent to the customer.

accountAccount

Expandable link to the customer's account.

account_credit_amountcurrency

Amount of customer's account credit applied for initial payment, if applicable.

account_credit_appliedboolean

Indicates the customer's account credit is applied to the initial payment.

account_idobjectId

ID of the customer's account.

account_info_savedboolean

Indicates the customer chose to save shipping and billing information to their account when submitting the order.

account_logged_inboolean

Indicates the customer was logged into their account when placing the order.

date_last_accesseddate

Date the cart was last accessed by the customer.

activeboolean

Indicates the cart has been updated by a customer within the last 3 hours.

billingobject

The customer's billing details. Defaults to account.billing. Updating billing will also update the corresponding account billing object.

checkout_idstring

Customer-facing unique identifier for the cart used in URLs and for abandoned cart recovery.

checkout_urlstring

URL to checkout for the cart, set automatically when the cart has at least items, shipping, or billing details set. Can also be set explicitly when creating or updating the cart for custom checkouts.

commentsstring

Customer notes provided when placing the order, if any.

couponCoupon

Expandable link to the coupon applied to the cart.

authorized_payment_idstring

The ID of an authorized payment.

authorized_paymentPayment

Expandable link to an authorized payment.

coupon_codestring

Coupon code applied to the cart.

coupon_idobjectId

ID of the coupon applied to the cart.

currencystring

Three-letter ISO currency code in uppercase. Defaults to the store's base currency.

currency_ratefloat

Currency percentage used in calculating the fixed amount.

locationstring

Location to purchase products from, when using multi-location inventory.

date_abandoneddate

Date the cart was or will be marked as abandoned.

date_abandoned_nextdate

Next date the cart will be marked as abandoned when using a series of abandoned cart recovery notices (advanced cart recovery).

conversion_addboolean

Indicates an item was added to the cart, used for conversion tracking.

conversion_checkoutboolean

Indicates the cart reached checkout, used for conversion tracking.

date_createddateauto

Date and time the cart was created.

date_updateddateauto

Date and time the cart was last updated.

date_webhook_first_faileddate

Date the order webhook first failed, if applicable. Value is unset after an order webhook is successfully returned for the record.

date_webhook_last_succeededdate

Date the order webhook last succeeded, if applicable. Value is unset after an order webhook fails to return for the record.

discount_totalcurrency

Total discount amount.

discountsarray of object

List of discounts applied to the cart.

display_currencystring

Three-letter ISO currency code representing the user's preferred display currency, if applicable.

display_localestring

Locale code representing the user's preferred display locale, if applicable.

draftboolean

Indicates the cart is a draft. The Swell dashboard uses draft carts to designate entries in the Draft orders section of the dashboard.

draft_subscriptionboolean

Indicates the cart is a draft used to create a subscription.

giftboolean

Indicates the order is intended as a gift for the recipient.

gift_messagestring

Optional message to include with the order when shipping to the recipient.

giftcard_deliveryboolean

Indicates the cart has at least one line item with delivery=giftcard.

giftcard_totalcurrencyauto

Total payment amount applied to the order from giftcards.

giftcardsarray of object

List of gift cards applied to the cart.

grand_totalcurrencyauto

Grand total including items, shipping, and taxes.

trial_grand_totalcurrency

Grand total of items with a trial period, charged when their trials end.

trial_auth_totalcurrency

Total amount that may be authorized for items with a trial period.

auth_totalcurrency

Total amount to be authorized on the payment method, rather than captured immediately.

capture_totalcurrency

Total amount to be captured on the payment method.

guestboolean

Indicates the customer was not logged in when placing the order.

item_discountcurrency

Total discount applied to line items.

item_quantityintauto

Total quantity of all line items.

item_shipment_weightfloatauto

Total shipping weight of all line items.

item_taxcurrencyauto

Total taxes applied to line items.

trial_item_discountcurrency

Total discount applied to items with a trial period.

trial_item_taxcurrency

Total tax applied to items with a trial period.

item_tax_includedboolean

Indicates line item prices include taxes.

itemsarray of object

List of line items describing the products ordered.

When adding an item to the cart, only product_id is required. All other properties such as variant_id, quantity and options may be specified if relevant to the product.

If applicable, variant_id is automatically resolved from options, however you may pass variant_id if the value is known by the application.

Gift card items support special option values to indicate that the gift card fulfillment email should be sent to a different recipient containing the newly generated gift card code.

Gift card options:

  • id=send_email: Specify a different email to receive the gift card.
  • id=send_note: Specify an optional note added to the gift card fulfillment email.

Example:

"options": [{ "id": "send_email", "value": "recipient@example.com" }]

metadataobject

Arbitrary data, typically set in a checkout flow to store custom values. See Frontend API for more details.

notesstring

Internal admin notes. These are not visible to the customer.

numberstringauto

Unique incremental cart number, assigned automatically using a format configured in general settings.

orderOrder

Expandable link to the converted order, if applicable.

order_idobjectId

ID of the the converted order, if applicable.

promotion_idsarray of child_scalar

List of promotion IDs applied to the cart.

promotionsPromotion

Expandable list of promotions applied to the cart.

purchase_link_idsarray of string

Unique identifiers for the purchase links.

purchase_linksPurchase Link

Expandable links to the purchase links added to the cart.

purchase_links_errorsarray of object

List of purchase link errors applied to the cart. Added when clicking on the purchase link, if any resources are blocking the creation of the cart.

recoveredboolean

Indicates the cart was recovered and converted to an order after being abandoned.

trialboolean

Indicates the cart contains at least one item with a trial period.

scheduleobject

Schedule for a recurring order.

shipment_deliveryboolean

Indicates the cart has at least one line item with delivery=shipment.

shipment_discountcurrency

Shipping discount applied by coupons, promotions, or custom logic.

shipment_pricecurrency

Total shipping price before discounts.

shipment_ratingobject

Object describing the shipping services and rates available for the cart. Shipping country must be set before retrieving shipping rates.

shipment_taxcurrency

Shipping tax amount, if applicable.

shipment_tax_includedboolean

Indicates shipping total includes taxes, if applicable.

shipment_totalcurrency

Total shipping price after discounts.

shippingobject

The customer's shipping details. Defaults to account.shipping. Updating shipping will also update the corresponding account shipping object.

statusenumauto

Current status of the cart. Can be active, converted, abandoned, or recovered.

Possible enum values:

convertedrecoveredabandonedactive
sub_totalcurrency

Sum of all line items before discounts, taxes and shipping.

trial_sub_totalcurrency

Subtotal of items with a trial period, charged when their trials end.

subscriptionSubscription

Expandable link to the subscription that spawned the order, if applicable.

subscription_deliveryboolean

Indicates the cart has at least one line item with delivery=subscription.

subscription_idobjectId

ID of the subscription that spawned the order, if applicable.

target_orderOrder

Expands into the order that the cart was converted into.

target_order_idobjectId

When a cart is converted to an order, this field represents the corresponding order_id.

tax_included_totalcurrency

Total with shipping and item taxes included. Allows for an alternate display style, as normally sub_total and tax_total are shown separately.

trial_tax_included_totalcurrency

Total of items with a trial period including taxes, if applicable.

tax_totalcurrency

Total tax amount applied to the cart including line items and shipping.

taxesarray of object

List of taxes applied to the cart.

taxes_fixedboolean

Indicates the order is tax-exempt. Taxes will not be calculated or applied when true.

webhook_attempts_failedint

Number of failed order webhook attempts, if applicable. Value is unset after an order webhook is successfully returned for the record.

webhook_responsestring

Text response of the last failed order webhook attempt, if applicable. Value is unset after an order webhook is successfully returned for the record.

webhook_statusint

HTTP response status of the last failed order webhook attempt, if applicable. Value is unset after an order webhook is successfully returned for the record.

The cart model
{
  "id": "60f199509111e7000000000e",
  "abandoned": false,
  "account_id": "60f199509111e7000000000f",
  "account_info_saved": true,
  "account_logged_in": true,
  "billing": {
    "name": "Uriel Septim VII",
    "first_name": "Uriel",
    "last_name": "Septim",
    "address1": "Imperial City Palace",
    "city": "Imperial City",
    "state": "NY",
    "zip": 11201,
    "country": "US",
    "phone": "(555) 555-5555",
    "method": "card",
    "card": {
      "token": "card_1Ds1K7E30PFlZWil6Q7bJ1PD",
      "test": true,
      "last4": "4242",
      "brand": "Visa",
      "address_check": "unchecked",
      "zip_check": "unchecked",
      "cvc_check": "unchecked",
      "exp_month": 1,
      "exp_year": 2029,
      "fingerprints": "3e63991847bbdaafdbc5c8f110ad803f"
    },
    "account_card_id": "5c3ac9870b3b171a7dfaf089"
  },
  "checkout_id": "e785b5ac4355ceef41ae2fd1c47df4bc",
  "checkout_url": "https://example.swell.store/checkout/e785b5ac4355ceef41ae2fd1c47df4bc",
  "comments": null,
  "coupon_code": "DREAMS",
  "coupon_id": "60f199509111e70000000010",
  "currency": "USD",
  "date_created": "2021-07-16T14:36:00.057Z",
  "date_updated": "2021-07-16T14:36:00.057Z",
  "date_webhook_first_failed": null,
  "discount_total": 5,
  "discounts": [
    {
      "id": "coupon-0",
      "type": "coupon",
      "amount": 5,
      "rule": {
        "type": "product",
        "value_type": "fixed",
        "value_amount": 2.5,
        "product_id": "5c524166f4e8f3446a10331b"
      }
    }
  ],
  "gift_message": null,
  "giftcards": [
    {
      "id": "5841c5691c64c63e75d29e43",
      "amount": 25,
      "code": "B6UQY3DHRCM4BQYU",
      "code_formatted": "B6UQ Y3DH RCM4 BQYU",
      "last4": "BQYU"
    }
  ],
  "gift": true,
  "giftcard_total": 25,
  "grand_total": 41.98,
  "guest": false,
  "item_discount": 5,
  "item_quantity": 2,
  "item_shipment_weight": 2,
  "item_tax": 2,
  "items": [
    {
      "id": "5ca537326a0ec32a521139dd",
      "product_id": "5c524166f4e8f3446a10331b",
      "variant_id": "5c524166f4e8f3446a10331f",
      "quantity": 2,
      "price": 19.99,
      "price_total": 38.98,
      "orig_price": 19.99,
      "delivery": "shipment",
      "shipment_weight": 1,
      "options": [
        {
          "id": "5becb84fac207653a4816ee5",
          "name": "Size",
          "value": "Small",
          "variant": true
        },
        {
          "id": "5becb84fac207653a4816ee6",
          "name": "Color",
          "value": "Yellow",
          "variant": true
        }
      ],
      "discounts": [
        {
          "id": "coupon-0",
          "amount": 5
        }
      ],
      "discount_each": 2.5,
      "discount_total": 5,
      "taxes": [
        {
          "id": "sales-tax",
          "amount": 2
        }
      ],
      "tax_each": 1,
      "tax_total": 2
    }
  ],
  "notes": null,
  "number": 2039476,
  "order_id": "60f199509111e70000000011",
  "promotion_ids": null,
  "shipment_delivery": true,
  "shipment_discount": 0,
  "shipment_price": 5,
  "shipment_rating": {
    "fingerprint": "71e03117e684192f4f33569dab1c74ee",
    "services": [
      {
        "id": "standard",
        "name": "Standard Shipping",
        "price": 5
      },
      {
        "id": "express",
        "name": "Express Shipping",
        "price": 10
      },
      {
        "id": "next_day",
        "name": "Next Day Shipping",
        "price": 20
      }
    ],
    "errors": null
  },
  "shipment_tax": 0,
  "shipment_tax_included_total": 5,
  "shipment_total": 5,
  "shipping": {
    "name": "Uriel Septim VII",
    "first_name": "Uriel",
    "last_name": "Septim",
    "address1": "Imperial City Palace",
    "city": "Imperial City",
    "zip": 11201,
    "country": "US",
    "phone": "(555) 555-5555",
    "price": 5,
    "service": "standard",
    "service_name": "Standard",
    "account_address_id": "5c12c5fdfcd74b34e19cf659"
  },
  "status": "converted",
  "sub_total": 38.98,
  "tax_included_total": 2,
  "tax_total": 2,
  "taxes": [
    {
      "id": "sales-tax",
      "name": "Sales tax",
      "priority": 1,
      "rate": 0.1,
      "amount": 2
    }
  ],
  "webhook_attempts_failed": null,
  "webhook_response": null,
  "webhook_status": 200
}