In API version 2024-04, Checkout APIs on the REST Admin and Storefront API are deprecated, with the exception of the REST Admin API's [Abandoned checkouts](/docs/api/admin-rest/latest/resources/abandoned-checkouts) resource. In version 2025-04, the Checkout APIs will be sunset and no longer function. To maintain continuity and unlock new capabilities, you need to migrate your app to one of the following technologies:

- [Storefront Cart API](/docs/storefronts/headless/building-with-the-storefront-api/cart/manage)
- [Checkout Sheet Kit](https://www.shopify.com/ca/partners/blog/mobile-checkout-sdks-for-ios-and-android) for Native Mobile Apps

This guide will help you migrate from the Checkout API to the Storefront API's Cart. We strongly recommend that you plan your migration and begin the process as soon as possible to avoid any disruptions.

## Key benefits of the Storefront Cart API

Migrating from Shopify's Checkout APIs to the Storefront API's [`Cart`](/docs/api/storefront/latest/objects/Cart) object and related types brings a host of benefits and new features that can enhance your application.

The following table outlines some of the key benefits of using the Cart API:

<table>
  <tr>
    <th scope="col">Benefit</th>
    <th scope="col">Description</th>
  </tr>
  <tr>
    <td>Query optimization</td>
    <td>The Storefront Cart API is offered exclusively in GraphQL, which is a powerful query language that enables more efficient data fetching than can be done in REST.</td>
  </tr>
  <tr>
    <td>Cross-platform compatibility</td>
    <td>The Storefront Cart API functions on both the client-side and server-side, which provides more flexibility in what experiences you can build.</td>
  </tr>
  <tr>
    <td>Unlimited access and bot protection</td>
    <td>The Storefront Cart API has no rate limits for legitimate traffic, and it comes with built-in bot protection to help safeguard your app.</td>
  </tr>
  <tr>
    <td>Comprehensive feature access</td>
    <td>The Storefront Cart API gives you access to a full suite of Shopify features, including contextual pricing, discounts, product bundles, subscriptions, and more.</td>
  </tr>
  <tr>
    <td>Unified functionality</td>
    <td>The Storefront Cart API redirects to Shopify's Web Checkout, which enables seamless integration with Shopify Functions and UI extensions.</td>
  </tr>
  <tr>
    <td>Enhanced promotions</td>
    <td>The Storefront Cart API supports stackable discount codes, which provides more options for promotional campaigns. <a href="/docs/storefronts/headless/building-with-the-storefront-api/cart/migrate-to-cart-api/migrate-your-app#new-storefront-cart-apis-cartdiscountcodesupdate">Refer to an example.</a></td>
  </tr>
  <tr>
    <td>Shopify Functions execution</td>
    <td>Shopify Functions such as Validation and Cart Transform execute on the Storefront Cart API.</td>
  </tr>
</table>

[Learn more](/docs/storefronts/headless/building-with-the-storefront-api/cart) about the benefits of building with the Storefront Cart API, and how you can extend a cart's functionality.

## Get started

<div class="resource-card-grid">
  <div>
  <a class="resource-card" href="/docs/storefronts/headless/building-with-the-storefront-api/cart/migrate-to-cart-api/migrate-your-app" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/growth"
     data-alt-src="/assets/resource-cards/growth-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Get started migrating to the Storefront Cart API
    </h3>
    <p class="resource-card__description">Compare requests and responses for common use cases so you can learn how to migrate your app&#39;s API calls.</p>
  </a>
</div>
</div>


## Developer tools and resources

Refer to the following developer tools and resources to familiarize yourself with GraphQL, the Storefront API, and building experiences using Cart:

### Introduction to GraphQL

When you begin using GraphQL after using REST, you need to change how you think about retrieving and working with data. This section includes guides and resources to help you familiarize yourself with GraphQL. The following resources describe some of the key considerations when migrating from REST to GraphQL. It's meant for app developers who are primarily using REST in their apps.

<div class="resource-card-grid">
  <div>
  <a class="resource-card" href="/docs/apps/build/graphql/migrate/learn-how" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/growth"
     data-alt-src="/assets/resource-cards/growth-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Migrate to GraphQL from REST
    </h3>
    <p class="resource-card__description">Learn about the things that you need to consider when migrating your app from REST to GraphQL.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="/docs/apps/build/graphql" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/graphql"
     data-alt-src="/assets/resource-cards/graphql-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Explore GraphQL basics
    </h3>
    <p class="resource-card__description">Learn about the fundamentals of GraphQL.</p>
  </a>
</div>
</div>



### Introduction to the Storefront Cart API

Learn more about building with the Storefront Cart API and the benefits of migration:



<div class="resource-card-grid">
  <div>
  <a class="resource-card" href="/docs/api/storefront/latests/objects/cart" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/graphql"
     data-alt-src="/assets/resource-cards/graphql-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Cart API reference
    </h3>
    <p class="resource-card__description">Consult the Storefront API reference documentation to learn more about the Cart object.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="https://mock.shop/ai" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/star"
     data-alt-src="/assets/resource-cards/star-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      mock.shop
    </h3>
    <p class="resource-card__description">Use the Storefront API&#39;s LLM-powered operations generator.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="https://www.shopify.com/ca/partners/blog/mobile-checkout-sdks-for-ios-and-android" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/tool"
     data-alt-src="/assets/resource-cards/tool-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Checkout Sheet Kit
    </h3>
    <p class="resource-card__description">Learn about Checkout Sheet Kit and how you can use it to build experiences for mobile.</p>
  </a>
</div>
</div>





### Storefront API

Explore the following developer tools and resources to learn more about the Storefront API:



<div class="resource-card-grid">
  <div>
  <a class="resource-card" href="/docs/api/storefront" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/graphql"
     data-alt-src="/assets/resource-cards/graphql-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      GraphQL Storefront API reference
    </h3>
    <p class="resource-card__description">Consult the complete reference for Shopify’s GraphQL Storefront API.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="/docs/storefronts/headless/building-with-the-storefront-api/api-exploration/graphiql-storefront-api" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/storefront"
     data-alt-src="/assets/resource-cards/storefront-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Shopify Storefront API GraphiQL explorer
    </h3>
    <p class="resource-card__description">Browse Shopify’s Storefront API schema and documentation.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="https://shopify-graphiql-app.shopifycloud.com/" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/app"
     data-alt-src="/assets/resource-cards/app-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Shopify GraphiQL app
    </h3>
    <p class="resource-card__description">Explore your store&#39;s data, and test queries and mutations, using the Storefront API.</p>
  </a>
</div>
</div>




## Important notes

- No webhooks are fired for `cart/create` or `cart/update` for the Storefront Cart API.
- The Storefront Cart API doesn't currently support appending a gift card to the cart or querying for Carrier Calculated Shipping rates. Refer to the [product roadmap](/docs/storefronts/headless/building-with-the-storefront-api/cart#product-roadmap) for more information on when we plan to deliver these features.
- Completed carts are deleted upon order creation. Unlike the Checkout API, you can't query a completed cart for order information or completion status. You can subscribe to [webhooks to receive information](/docs/apps/build/webhooks) about the created order.