--- title: >- New discount fields in the Storefront API's cart types - Shopify developer changelog description: >- Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities. source_url: html: >- https://shopify.dev/changelog/new-discount-fields-in-the-storefront-cart-graphql-api md: >- https://shopify.dev/changelog/new-discount-fields-in-the-storefront-cart-graphql-api.md metadata: effectiveApiVersion: 2026-07 affectedApi: - displayName: Storefront GraphQL API handle: storefront-graphql primaryTag: displayName: API handle: api secondaryTag: displayName: Deprecation Announcement handle: deprecation indicatesActionRequired: false createdAt: '2026-02-09T13:49:40-05:00' postedAt: '2026-04-10T15:00:00-04:00' updatedAt: '2026-04-08T09:31:26-04:00' effectiveAt: '2026-03-06T12:00:00-05:00' --- April 10, 2026 Tags: * Storefront GraphQL API * 2026-07 # New discount fields in the Storefront API's cart types As of API version 2026-07, several changes have been introduced to the discount fields and amounts in the [Storefront API](https://shopify.dev/docs/api/storefront/latest). ## What's changed **Deprecated Fields**: * The [`cart.discountAllocations`](https://shopify.dev/docs/api/storefront/2026-07/objects/Cart#field-discountAllocations) field is deprecated. Use `cart.lines[].discountAllocations(lineLevelOnly: false)` and `cart.deliveryGroups[].discountAllocations` instead. * The [`cartDiscountAllocation.discountApplication`](https://shopify.dev/docs/api/storefront/2026-07/interfaces/CartDiscountAllocation#field-discountApplication) field is deprecated. Use `sourceDiscountApplication` instead. Note: the `value` field on `discountApplication` incorrectly returns the per-line allocated amount rather than the configured discount amount (for example, a $10 fixed discount allocated as $4 to one line shows `value: $4`). The new `sourceDiscountApplication` field returns the correct value. **New Fields**: * [`cart.discountApplications`](https://shopify.dev/docs/api/storefront/2026-07/objects/Cart#field-discountApplications): Lists all discounts (for example, product, shipping, and order) currently applied to the cart. * [`cartDiscountAllocation.sourceDiscountApplication`](https://shopify.dev/docs/api/storefront/2026-07/interfaces/CartDiscountAllocation#field-sourceDiscountApplication): Returns the discount application with the correct configured discount value and concrete type information. For example, a $10 fixed discount will show `value: $10` regardless of how it's allocated across lines. Access type-specific fields using GraphQL fragments, for example `sourceDiscountApplication { … on CartCodeDiscountApplication { code } }`. * [`baseCartDiscountApplication.totalAllocatedAmount`](https://shopify.dev/docs/api/storefront/2026-07/interfaces/BaseCartDiscountApplication#field-totalAllocatedAmount): Shows the total discount amount allocated across the entire cart. For instance, if a 10% discount splits as $4 on line A and $6 on line B, both lines will show `totalAllocatedAmount: $10`. * [`cart.deliveryGroups[].discountAllocations`](https://shopify.dev/docs/api/storefront/2026-07/objects/CartDeliveryGroup#field-discountAllocations): Displays the discounts allocated to the delivery group. **New Argument**: * [`cart.lines[].discountAllocations(lineLevelOnly: Boolean)`](https://shopify.dev/docs/api/storefront/2026-07/objects/CartLine#field-discountAllocations): The `lineLevelOnly` argument lets you request either only product-level discounts or all discounts allocated to the cart line. It defaults to `true` for backward compatibility. ## What you need to do * Update queries to use `cart.discountApplications` instead of `cart.discountAllocations` for reading all discount applications on a cart. * Replace `cartDiscountAllocation.discountApplication` with `sourceDiscountApplication` for accurate discount values and type-specific fields. * Move product allocation queries to `cart.lines[].discountAllocations(lineLevelOnly: false)`. * Move shipping allocation queries to `cart.deliveryGroups[].discountAllocations`. * Test your discount calculations with percentage, fixed amount, and free shipping discounts.