--- title: BaseCartLine - Storefront API description: > Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](/docs/api/storefront/2025-07/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](/docs/api/storefront/2025-07/objects/ComponentizableCartLine) for grouped merchandise like bundles. Each implementation includes the merchandise being purchased, quantity, cost breakdown, applied discounts, custom attributes, and any associated [`SellingPlan`](/docs/api/storefront/2025-07/objects/SellingPlan). api_version: 2025-07 api_name: storefront type: interface api_type: graphql source_url: html: 'https://shopify.dev/docs/api/storefront/2025-07/interfaces/BaseCartLine' md: 'https://shopify.dev/docs/api/storefront/2025-07/interfaces/BaseCartLine.md' --- # Base​Cart​Line interface Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](https://shopify.dev/docs/api/storefront/2025-07/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](https://shopify.dev/docs/api/storefront/2025-07/objects/ComponentizableCartLine) for grouped merchandise like bundles. Each implementation includes the merchandise being purchased, quantity, cost breakdown, applied discounts, custom attributes, and any associated [`SellingPlan`](https://shopify.dev/docs/api/storefront/2025-07/objects/SellingPlan). ## Fields * attribute [Attribute](https://shopify.dev/docs/api/storefront/2025-07/objects/Attribute) An attribute associated with the cart line. * key [String!](https://shopify.dev/docs/api/storefront/2025-07/scalars/String) required ### Arguments The key of the attribute. *** * attributes [\[Attribute!\]!](https://shopify.dev/docs/api/storefront/2025-07/objects/Attribute) non-null The attributes associated with the cart line. Attributes are represented as key-value pairs. * cost [Cart​Line​Cost!](https://shopify.dev/docs/api/storefront/2025-07/objects/CartLineCost) non-null The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout. * discount​Allocations [\[Cart​Discount​Allocation!\]!](https://shopify.dev/docs/api/storefront/2025-07/interfaces/CartDiscountAllocation) non-null The discounts that have been applied to the cart line. * id [ID!](https://shopify.dev/docs/api/storefront/2025-07/scalars/ID) non-null A globally-unique ID. * merchandise [Merchandise!](https://shopify.dev/docs/api/storefront/2025-07/unions/Merchandise) non-null The merchandise that the buyer intends to purchase. * quantity [Int!](https://shopify.dev/docs/api/storefront/2025-07/scalars/Int) non-null The quantity of the merchandise that the customer intends to purchase. * selling​Plan​Allocation [Selling​Plan​Allocation](https://shopify.dev/docs/api/storefront/2025-07/objects/SellingPlanAllocation) The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. * estimated​Cost [Cart​Line​Estimated​Cost!](https://shopify.dev/docs/api/storefront/2025-07/objects/CartLineEstimatedCost) non-nullDeprecated *** ##### Variables ```json { "attribute": { "key": "" }, "attributes": "", "cost": "", "discountAllocations": "", "estimatedCost": "", "id": "", "merchandise": "", "quantity": "", "sellingPlanAllocation": "" } ``` ##### Schema ```graphql interface BaseCartLine { attribute: Attribute attributes: [Attribute!]! cost: CartLineCost! discountAllocations: [CartDiscountAllocation!]! estimatedCost: CartLineEstimatedCost! id: ID! merchandise: Merchandise! quantity: Int! sellingPlanAllocation: SellingPlanAllocation } ```