About the eCommerce Abandoned Checkouts API

An abandoned checkout is created when:

  • A customer begins an eCommerce Checkout process but doesn't complete it (for example, after closing their browser tab before putting in their payment details and making a payment).

  • A customer who is also a site member creates a cart and closes their browser tab before proceeding to the checkout page. (Wix eCommerce creates an abandoned checkout entity with the cart details).

The Abandoned Checkouts API allows an app developer to help a customer recover their abandoned checkout. When a customer completes their checkout and makes a purchase, the checkout becomes an order.

An abandoned checkout contains buyer details, prices, reference to the initial cart or checkout, a URL for accessing the abandoned checkout, and more.

The eCommerce Abandoned Checkouts API provides functionality for getting information about an abandoned checkout and retrieving a list of abandoned checkouts. You can also listen for events when an abandoned checkout is created and recovered.

To assist in migration from the Stores to eCommerce APIs, please refer to the Stores Cart to eCommerce Checkout Conversion Table.

Terminology

  • Recovered: When a customer returns to their abandoned checkout and completes the checkout.

  • Activities: This property is only relevant if the site owner set up automations in the Dashboard. The activities property is a list of all automation activities performed by Wix Automations regarding the abandoned checkout. Wix Automations updates the activities field for each actvity in the automation flow. For example, if a site owner set up an automation to send a notification to a site visitor an hour after their abandoned checkout is created, Wix automations does the following:

    • Updates the activities field to SCHEDULED when the abandoned checkout is created.
    • Updates the activities field to NOTIFICATION_SENT after an hour, when the notification is sent to the site visitor.

    Other actvities include:

    • EMAIL_SENT
    • EMAIL_NOT_SENT
    • TASK_CREATED
Was this helpful?
Yes
No

Abandoned Checkouts: Sample Use Case & Flow

This article shares some possible use cases your app could support, as well as an example flow that could support each use case. You're certainly not limited to these use cases, but they can be a helpful jumping off point as you plan your app's implementation.

Redirect a site visitor with an abandoned checkout back to their checkout page

If a site visitor starts a checkout but doesn't complete it, you can redirect them to their checkout page. You can also check whether the site visitor has recovered their abandoned checkout and completed the purchase.

To redirect the site visitor to their checkout page:

  1. Using the Abandoned Checkout Created Webhook, listen for an event when an abandoned checkout is created (a checkout was not completed).

  2. Save the newly created abandoned checkout's ID (entityId field) and checkoutUrl from the above webhook's payload. Then send a marketing campaign with the checkoutURL to your site visitor, redirecting them to their checkout page.

  3. After the marketing campaign, call Get Abandoned Checkout with the abandoned checkout's ID. Then check the status field in the response to see if the abandoned checkout has been recovered.

Was this helpful?
Yes
No

Abandoned Checkouts: Supported Filters and Sorting

The table below shows field support for filters and sorting for the base set of abandoned checkout properties.

FieldSupported FiltersSortable
id$eq, $ne, $in, $exists
createdDate$eq, $ne, $gt, $lt, $gte, $lteSortable
updatedDate$eq, $ne, $gt, $lt, $gte, $lteSortable
status$eqSortable
buyerInfo.email$eq
totalPrice.amount$eq, $gt, $lt, $gte, $lteSortable
totalPrice.convertedAmount$eq, $gt, $lt, $gte, $lteSortable
Was this helpful?
Yes
No

Abandoned Checkout Object

Properties
idstringformat GUID
Abandoned checkout ID.

createdDatestringformat date-time
Date and time the abandoned checkout was created.

updatedDatestringformat date-time
Date and time the abandoned checkout was updated.

checkoutIdstringformat GUID
The associated checkout ID.

cartIdstringformat GUID
The associated cart ID.

statusstring
2 enum supported values:
ABANDONEDRECOVERED

buyerLanguagestring
Language for communication with the buyer. Defaults to the site language. For a site that supports multiple languages, this is the language the buyer selected.

buyerInfoobject
Buyer information.

contactDetailsobject
Contact details.

currencystringformat CURRENCY
The store's currency.

conversionCurrencystringformat CURRENCY
Currency the buyer used in checkout.

totalPriceobject
Total price after discounts, gift cards, and tax.

activitiesArray <Activity>
List of all automation activities performed by Wix Automations regarding the abandoned checkout. Wix Automations updates the activities field for each actvity in the automation flow. Only relevant if the site owner set up automations in the Dashboard. Read more about activities in the introduction.

checkoutRecoveredDatestringformat date-time
Date and time the abandoned checkout was recovered.

checkoutUrlstringformat URI
Checkout URL.

subtotalPriceobject
Subtotal price of all line items, before discounts and before tax.
Was this helpful?
Yes
No

GetGet Abandoned Checkout

Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Retrieves an abandoned checkout.

Permission Scopes

For app development, you must have one of the following permission scopes:
Read eCommerce - all read permissions
Manage Orders
Read Orders
Learn more about permission scopes.
Endpoint
GET
https://www.wixapis.com/ecom/v1/abandoned-checkout/{abandonedCheckoutId}

Was this helpful?
Yes
No

PostQuery Abandoned Checkouts

Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Retrieves a list of abandoned checkouts, given the provided paging, filtering, and sorting. Up to 100 abandoned checkouts can be returned per request.

For a detailed list of supported operations, see filtering and sorting for abandoned checkout properties. To learn how to query abandoned checkouts, see API Query Language.

Permission Scopes

For app development, you must have one of the following permission scopes:
Read eCommerce - all read permissions
Manage Orders
Read Orders
Learn more about permission scopes.
Endpoint
POST
https://www.wixapis.com/ecom/v1/abandoned-checkout/query

Was this helpful?
Yes
No

Abandoned Checkout Created

Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Triggered when an abandoned checkout is created.

Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring
Unique event ID. Allows clients to ignore duplicate webhooks.

entityFqdnstring
Fully qualified domain name of the entity associated with the event. Expected wix.ecom.v1.abandoned_checkout.

slugstring
Event name. Expected created.

entityIdstring
ID of the entity associated with the event.

eventTimestringformat date-time
Event timestamp.

triggeredByAnonymizeRequestboolean
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).

originatedFromstring
If present, indicates the action that triggered the event.

createdEventobject
Event information.
Was this helpful?
Yes
No

Abandoned Checkout Recovered

Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Triggered when an abandoned checkout is recovered (the customer completes the checkout).

Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring
Unique event ID. Allows clients to ignore duplicate webhooks.

entityFqdnstring
Fully qualified domain name of the entity associated with the event. Expected wix.ecom.v1.abandoned_checkout.

slugstring
Event name. Expected recovered.

entityIdstring
ID of the entity associated with the event.

eventTimestringformat date-time
Event timestamp.

triggeredByAnonymizeRequestboolean
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).

originatedFromstring
If present, indicates the action that triggered the event.

actionEventobject
Event information.
Was this helpful?
Yes
No