---
schema_version: "1"
id: 8dac68669895d3099791a7d2765036f63450c8a1cf84ded07dc23286479459f2
title: ConnectApi.PromotionCartItemInput
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/apexref/apex_connectapi_input_promotion_cart_item.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_input_promotion_cart_item.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 6c6fe260c1de51d034dafc01ec75010958d50f313a0f8628b2913cebd452f2ac
description: Item in a cart during promotion evaluation.
---
# ConnectApi.PromotionCartItemInput

Item in a cart during promotion evaluation.

<table class="featureTable sort_table" summary="">




          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader vertical-align-top " id="d705763e46">Property</th>

              <th class="featureTableHeader vertical-align-top " id="d705763e49">Type</th>

              <th class="featureTableHeader vertical-align-top " id="d705763e52">Description</th>

              <th class="featureTableHeader vertical-align-top " id="d705763e55">Required or Optional</th>

              <th class="featureTableHeader vertical-align-top " id="d705763e58">Available Version</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">cartDelivery​GroupId</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">ID of the cart delivery group.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required when evaluating shipping promotions</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">cartId</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">ID of the cart.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">id</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">ID of the cart item. Must be unique across all items in the cart.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">itemDescription</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Description of the cart item.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">itemName</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Name of the cart item.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">listPrice</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">List price of the cart item.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">product2Id</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Product ID of the cart item.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required if <samp class="codeph apex_code">sku</samp> isn’t specified</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">quantity</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Number of items in the cart.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">salesPrice</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Sales price of the cart item. This is the price per quantity and the value used to compute the discount. If <samp class="codeph nolang">salesPrice</samp> and <samp class="codeph nolang">totalLineBaseAmount</samp> are specified, <samp class="codeph nolang">totalLineBaseAmount</samp> is used.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required if <samp class="codeph apex_code">totalLineBaseAmount</samp> isn’t
                specified</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">sku</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Stock keeping unit (SKU) of the cart item.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required if <samp class="codeph apex_code">product2Id</samp> isn’t
                specified</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph nolang">subType</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type"><samp class="codeph apex_code">ConnectApi.​CartItemSubType</samp></td>

              <td class="entry" headers="d705763e52" data-title="Description">Subtype of item in a cart.Possible values are: <ul class="ul bulletList">
                  <li class="li">
                    <samp class="codeph apex_code">Bonus</samp>—A bonus product.
                  </li>
                  <li class="li">
                    <samp class="codeph apex_code">Gift</samp>—A gift product.
                  </li>
                </ul>
              </td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">64.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">totalLineBase​Amount</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Total amount for the cart item, equal to sales price multiplied by quantity. This value is used to compute the discount. If <samp class="codeph nolang">salesPrice</samp> and <samp class="codeph nolang">totalLineBaseAmount</samp> are specified, <samp class="codeph nolang">totalLineBaseAmount</samp> is used.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required if <samp class="codeph apex_code">salesPrice</samp> isn’t
                specified</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">totalListBase​Amount</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type">String</td>

              <td class="entry" headers="d705763e52" data-title="Description">Total amount for the cart item based on list price and quantity.</td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Optional</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d705763e46 d705763e58" data-title="Property"><samp class="codeph apex_code">type</samp></td>

              <td class="entry" headers="d705763e49" data-title="Type"><samp class="codeph apex_code"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/connectAPI_enums.htm#cartItemTypeEnum">ConnectApi.​CartItemType</a></samp></td>

              <td class="entry" headers="d705763e52" data-title="Description"> Values are:<ul class="ul bulletList">
                  <li class="li"><samp class="codeph apex_code">DeliveryCharge</samp></li>
                  <li class="li"><samp class="codeph apex_code">Product</samp></li>
                </ul>
              </td>

              <td class="entry" headers="d705763e55" data-title="Required or Optional">Required when evaluating shipping promotions</td>

              <td class="entry" headers="d705763e46 d705763e58" data-title="Property">57.0</td>

            </tr>

          </tbody>

        </table>

#### See Also

- [ConnectApi.PromotionCartInput](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_input_promotion_cart.htm "Cart during promotion evaluation.")
- [ConnectApi.PromotionEvaluateInput](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_input_promotion_evaluate.htm "Find promotions that the customer is eligible for and compute their discounts.")
- [evaluate(salesTransaction)](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_ConnectAPI_CommercePromotions_static_methods.htm#apex_ConnectAPI_CommercePromotions_evaluate_1 "Determine which promotions the customer is eligible for based on the store and buyer group, and compute the applicable price adjustments based on the coupons and the items in the cart. This API evaluates only the first 50 active manual promotions and first 50 active automatic promotions, based on priority. This API computes and returns applicable price adjustments, but it does not apply those adjustments to the webcart record. If you want to enable promotions based on shipping, contact Salesforce Customer Support.")