The shoppingCart represents customer shopping cart for which a payment is triggered.
Example:
<shoppingCart>
  <items>
    <item>
      <product>
        <id>123</id>
        <name>Jeans</name>
        <description>stonewashed</description>
        <unitPrice>
          <grossAmount>40</grossAmount>
          <taxAmount rate="20" name="VAT">6.67</taxAmount>
        </unitPrice>
        <type>Physical</type>
      </product>
      <quantity>1</quantity>
      <totalPrice>
        <grossAmount>30</grossAmount>
        <taxAmount rate="20" name="VAT">5</taxAmount>
      </totalPrice>
      <discount>
        <name>Jeans-Promotion</name>
        <grossAmount>-10</grossAmount>
        <taxAmount rate="20" name="VAT">-1.67</taxAmount>
      </discount>
    </item>
    <item>
      <product>
        <id>456</id>
        <name>CD Rom</name>
        <description>CD Rom</description>
        <unitPrice>
          <grossAmount>50</grossAmount>
          <taxAmount rate="10" name="VAT">4.54</taxAmount>
        </unitPrice>
      <type>Digital</type>
      </product>
      <quantity>2</quantity>
      <totalPrice>
        <grossAmount>80</grossAmount>
        <taxAmount rate="10" name="MwSt">7.27</taxAmount>
      </totalPrice>
      <discount>
        <name>Spring-Promotion</name>
        <grossAmount>-20</grossAmount>
        <taxAmount rate="10" name="VAT">-1.82</taxAmount>
      </discount>
    </item>
	 <item>
      <product>
        <id>789</id>
        <name>Gift Card</name>
        <description>Gift Card Purchase</description>
        <unitPrice>
          <grossAmount>15</grossAmount>
          <taxAmount rate="20" name="VAT">2.5</taxAmount>
        </unitPrice>
        <type>GiftCard</type>
      </product>
      <quantity>1</quantity>
      <totalPrice>
        <grossAmount>15</grossAmount>
        <taxAmount rate="20" name="VAT">2.5</taxAmount>
      </totalPrice>
     </item>
  </items>
  <subTotalAmount>125</subTotalAmount>
  <shippingCost>
    <name>Express</name>
    <grossAmount>30</grossAmount>
    <taxAmount rate="20" name="VAT">5</taxAmount>
  </shippingCost>
  <discounts>
    <discount>
      <name>Sales-Discount</name>
      <grossAmount>-10</grossAmount>
      <taxAmount rate="20" name="VAT">-1.67</taxAmount>
      <type>Discount</type>
    </discount>
  </discounts>
  <amountsByTax>
    <amountByTax taxName="VAT" taxRate="10">
      <grossAmount>80</grossAmount>
      <taxAmount>7.27</taxAmount>
    </amountByTax>
    <amountByTax taxName="VAT" taxRate="20">
      <grossAmount>45</grossAmount>
      <taxAmount>7.5</taxAmount>
    </amountByTax>
  </amountsByTax>
  <totalAmount>145</totalAmount>
  <totalTaxAmount>18.1</totalTaxAmount>
</shoppingCart>Fields:
| field (type, required) | description | 
|---|---|
| items (arrayOfItem, required) | The shopping cart items | 
| items.item (item, required) | One item of the shopping cart | 
| items.item.product (product, required) | Product | 
| items.item.product.id (string, required) | Product ID | 
| items.item.product.name (string, required) | Product Name Example: "Jeans" | 
| items.item.product.description (string) | Product Description Example: "Stonewashed Size L" | 
| items.item.product.unitPrice (amountWithTax, required) | Price of the Product Item (per unit) including tax if applicable | 
| items.item.product.type (itemType) | The type of the product Needed for specific payment methods, e.g. Klarna Deposit The allowed values for this field can be found on the relevant payment method documentation page. | 
| items.item.quantity (positiveInt, required) | Number of items | 
| items.item.totalPrice (amountWithTax, required) | Total price considering numbers of item and unit price including tax if applicable Calculation: (unitPrice - discount per unit) x quantity = totalPrice or unitPrice x quantity - total discount per item = totalPrice | 
| items.item.discount (amountWithTaxAndName) | Total discount per item with tax (if applicable) and discount name (name is mandatory). Calculation: discount per unit x quantity | 
| subTotalAmount (decimal) | Sub total amount of the shopping cart. This amount does not include potential shipping costs or discounts on shopping cart level | 
| shippingCost (amountWithTaxAndName) | Shipping Costs with Tax (if applicable) and Name (name is mandatory) | 
| discounts (array of type amountWithTaxAndNameAndType) | Discount(s) on shopping cart level. Collection of discount (max 100 items) | 
| amountsByTax (array of type amountByTax) | Collection of amountByTax (max 100 items) | 
| amountsByTax.amountByTax (amountByTax) | List of grouped amounts per tax category | 
| amountsByTax.amountByTax.taxName (amountByTax, attribute) | Name/description of the Tax type Example: "VAT" | 
| amountsByTax.amountByTax.taxRate (amountByTax, attribute) | Tax rate (percentage) Example: "10" | 
| amountsByTax.amountByTax.grossAmount (amountByTax) | Gross Amount of tax category group (sum of totalPrice of all items with the same tax rate), grouped per tax rate | 
| amountsByTax.amountByTax.taxAmount (amountByTax) | Tax amount of tax category group (sum of totalPrice of all items with the same tax rate), grouped per tax rate | 
| totalAmount (decimal) | Total amount of the shopping cart. This amount also includes potential shipping costs or discounts on shopping cart level | 
| totalTaxAmount (decimal) | Total tax amount of the shopping cart (if applicable). This amount also includes the tax of potential shipping costs or discounts on shopping cart level | 
Please note that the total amount of the shopping cart is not part of the shoppingCart element, but is to be found in getRedirectDataRequest.redirectParameters.grossAmount or initiatePayment.amount.
XML Schema:
<s:complexType name="shoppingCart">
  <s:sequence>
    <s:element minOccurs="1" maxOccurs="1" name="items">
      <s:complexType>
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="100" name="item" >
            <s:complexType>
              <s:sequence>
                <s:element minOccurs="1" maxOccurs="1" name="product">
                  <s:complexType>
                    <s:sequence>
                      <s:element minOccurs="1" maxOccurs="1" name="id" type="lengthRestrictedString" />
                      <s:element minOccurs="1" maxOccurs="1" name="name" type="lengthRestrictedString" />
                      <s:element minOccurs="0" maxOccurs="1" name="description" type="lengthRestrictedString" />
                      <s:element minOccurs="1" maxOccurs="1" name="unitPrice" type="amountWithTax" />
                      <s:element minOccurs="0" maxOccurs="1" name="type" type="itemType" />                    
                    </s:sequence>   
                  </s:complexType>
                </s:element>
                <s:element minOccurs="1" maxOccurs="1" name="quantity" type="positiveInt" />
                <s:element minOccurs="1" maxOccurs="1" name="totalPrice" type="amountWithTax" />
                <s:element minOccurs="0" maxOccurs="1" name="discount" type="amountWithTaxAndName" />
              </s:sequence> 
            </s:complexType>
          </s:element>   
        </s:sequence>
      </s:complexType>									
    </s:element>                                                                                                                    
    <s:element minOccurs="0" maxOccurs="1" name="subTotalAmount" type="s:decimal" />
    <s:element minOccurs="0" maxOccurs="1" name="shippingCost" type="amountWithTaxAndName" />
    <s:element minOccurs="0" maxOccurs="1" name="discounts" nillable="true">
      <s:complexType>
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="100" name="discount" type="amountWithTaxAndNameAndType" />
        </s:sequence>
      </s:complexType>
    </s:element>
    <s:element minOccurs="0" maxOccurs="1" name="amountsByTax" nillable="true">
      <s:complexType>
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="100" name="amountByTax" type="amountByTax"></s:element>
        </s:sequence>
      </s:complexType>
    </s:element>
  </s:sequence>
  <s:element minOccurs="0" maxOccurs="1" name="totalAmount" type="s:decimal" />
  <s:element minOccurs="0" maxOccurs="1" name="totalTaxAmount" type="s:decimal" />
</s:complexType>