Virto Commerce Shopping Cart API

Shopping cart / checkout functionality

OpenAPI Specification

virto-commerce-shopping-cart-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: VirtoCommerce.Cart Catalog Shopping Cart API
  version: v1
  description: Easily manage your products, categories, variations, and properties
tags:
- name: Shopping Cart
  description: Shopping cart / checkout functionality
paths:
  /api/carts/{storeId}/{customerId}/{cartName}/{currency}/{cultureName}/current:
    get:
      tags:
      - Shopping Cart
      operationId: CartModule_GetCart
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: string
      - name: customerId
        in: path
        required: true
        schema:
          type: string
      - name: cartName
        in: path
        required: true
        schema:
          type: string
      - name: currency
        in: path
        required: true
        schema:
          type: string
      - name: cultureName
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/itemscount:
    get:
      tags:
      - Shopping Cart
      operationId: CartModule_GetCartItemsCount
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: integer
                format: int32
            application/json:
              schema:
                type: integer
                format: int32
            text/json:
              schema:
                type: integer
                format: int32
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/items:
    post:
      tags:
      - Shopping Cart
      operationId: CartModule_AddItemToCart
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartLineItem'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartLineItem'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartLineItem'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
    put:
      tags:
      - Shopping Cart
      operationId: CartModule_ChangeCartItem
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      - name: lineItemId
        in: query
        schema:
          type: string
      - name: quantity
        in: query
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
    delete:
      tags:
      - Shopping Cart
      operationId: CartModule_ClearCart
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/items/{lineItemId}:
    delete:
      tags:
      - Shopping Cart
      operationId: CartModule_RemoveCartItem
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      - name: lineItemId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: integer
                format: int32
            application/json:
              schema:
                type: integer
                format: int32
            text/json:
              schema:
                type: integer
                format: int32
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}:
    patch:
      tags:
      - Shopping Cart
      operationId: CartModule_MergeWithCart
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
    get:
      tags:
      - Shopping Cart
      summary: Get shopping cart by id
      operationId: CartModule_GetCartById
      parameters:
      - name: cartId
        in: path
        description: Shopping cart id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/availshippingrates:
    get:
      tags:
      - Shopping Cart
      operationId: CartModule_GetAvailableShippingRates
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/availshippingrates:
    post:
      tags:
      - Shopping Cart
      operationId: CartModule_GetAvailableShippingRatesByContext
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShippingEvaluationContext'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShippingEvaluationContext'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShippingEvaluationContext'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShippingRate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/availpaymentmethods:
    get:
      tags:
      - Shopping Cart
      operationId: CartModule_GetAvailablePaymentMethods
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentMethod'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentMethod'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentMethod'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/coupons/{couponCode}:
    post:
      tags:
      - Shopping Cart
      operationId: CartModule_AddCartCoupon
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      - name: couponCode
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
    delete:
      tags:
      - Shopping Cart
      operationId: CartModule_RemoveCartCoupon
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      - name: couponCode
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/shipments:
    post:
      tags:
      - Shopping Cart
      operationId: CartModule_AddOrUpdateCartShipment
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartShipment'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartShipment'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/CartShipment'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/{cartId}/payments:
    post:
      tags:
      - Shopping Cart
      operationId: CartModule_AddOrUpdateCartPayment
      parameters:
      - name: cartId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Payment'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Payment'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Payment'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/search:
    post:
      tags:
      - Shopping Cart
      summary: Search shopping carts by given criteria
      operationId: CartModule_SearchShoppingCart
      requestBody:
        description: Shopping cart search criteria
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCartSearchCriteria'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCartSearchCriteria'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCartSearchCriteria'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCartSearchResult'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCartSearchResult'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCartSearchResult'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:read
      - api_key:
        - cart:read
      - api_key_header:
        - cart:read
      - http-signature:
        - cart:read
      - basic:
        - cart:read
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts:
    post:
      tags:
      - Shopping Cart
      summary: Create shopping cart
      operationId: CartModule_Create
      requestBody:
        description: Shopping cart model
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:create
      - api_key:
        - cart:create
      - api_key_header:
        - cart:create
      - http-signature:
        - cart:create
      - basic:
        - cart:create
      x-virtocommerce-module-id: VirtoCommerce.Cart
    put:
      tags:
      - Shopping Cart
      summary: Update shopping cart
      operationId: CartModule_UpdateShoppingCart
      requestBody:
        description: Shopping cart model
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:update
      - api_key:
        - cart:update
      - api_key_header:
        - cart:update
      - http-signature:
        - cart:update
      - basic:
        - cart:update
      x-virtocommerce-module-id: VirtoCommerce.Cart
    delete:
      tags:
      - Shopping Cart
      summary: Delete shopping carts by ids
      operationId: CartModule_DeleteCarts
      parameters:
      - name: ids
        in: query
        description: Array of shopping cart ids
        schema:
          type: array
          items:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:delete
      - api_key:
        - cart:delete
      - api_key_header:
        - cart:delete
      - http-signature:
        - cart:delete
      - basic:
        - cart:delete
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/recalculate:
    post:
      tags:
      - Shopping Cart
      summary: Calculates totals for cart.
      operationId: CartModule_RecalculateTotals
      requestBody:
        description: Shopping cart model
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ShoppingCart'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            application/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
            text/json:
              schema:
                $ref: '#/components/schemas/ShoppingCart'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/patch/{id}:
    patch:
      tags:
      - Shopping Cart
      summary: Partial update for the specified ShoppingCart by id
      operationId: CartModule_PatchCart
      parameters:
      - name: id
        in: path
        description: ShoppingCart id
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatchDocument object with fields to update
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:update
      - api_key:
        - cart:update
      - api_key_header:
        - cart:update
      - http-signature:
        - cart:update
      - basic:
        - cart:update
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/patch/{cartId}/items/{lineItemId}:
    patch:
      tags:
      - Shopping Cart
      summary: Partial update for the specified ShoppingCart LineItem by id
      operationId: CartModule_PatchCartItem
      parameters:
      - name: cartId
        in: path
        description: ShoppingCart id
        required: true
        schema:
          type: string
      - name: lineItemId
        in: path
        description: LineItem id
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatchDocument object with fields to update
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:update
      - api_key:
        - cart:update
      - api_key_header:
        - cart:update
      - http-signature:
        - cart:update
      - basic:
        - cart:update
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/patch/{cartId}/shipments/{shipmentId}:
    patch:
      tags:
      - Shopping Cart
      summary: Partial update for the specified ShoppingCart Shipment by id
      operationId: CartModule_PatchCartShipment
      parameters:
      - name: cartId
        in: path
        description: ShoppingCart id
        required: true
        schema:
          type: string
      - name: shipmentId
        in: path
        description: Shipment id
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatchDocument object with fields to update
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:update
      - api_key:
        - cart:update
      - api_key_header:
        - cart:update
      - http-signature:
        - cart:update
      - basic:
        - cart:update
      x-virtocommerce-module-id: VirtoCommerce.Cart
  /api/carts/patch/{cartId}/payments/{paymentId}:
    patch:
      tags:
      - Shopping Cart
      summary: Partial update for the specified ShoppingCart Payment by id
      operationId: CartModule_PatchCartPayment
      parameters:
      - name: cartId
        in: path
        description: ShoppingCart id
        required: true
        schema:
          type: string
      - name: paymentId
        in: path
        description: Payment id
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatchDocument object with fields to update
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - cart:update
      - api_key:
        - cart:update
      - api_key_header:
        - cart:update
      - http-signature:
        - cart:update
      - basic:
        - cart:update
      x-virtocommerce-module-id: VirtoCommerce.Cart
components:
  schemas:
    CartConfigurationItemFile:
      type: object
      properties:
        name:
          type: string
          nullable: true
        url:
          type: string
          nullable: true
        contentType:
          type: string
          nullable: true
        size:
          type: integer
          format: int64
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type: string
          format: date-time
          nullable: true
        createdBy:
          maxLength: 64
          minLength: 0
          type: string
          nullable: true
        modifiedBy:
          maxLength: 64
          minLength: 0
          type: string
          nullable: true
        id:
          type: string
          nullable: true
      additionalProperties: false
    CartShipmentItem:
      type: object
      properties:
        lineItemId:
          type: string
          nullable: true
        lineItem:
          allOf:
          - $ref: '#/components/schemas/CartLineItem'
          nullable: true
        barCode:
          type: string
          nullable: true
        quantity:
          type: integer
          format: int32
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type: string
          format: date-time
          nullable: true
        createdBy:
          maxLength: 64
          minLength: 0
          type: string
          nullable: true
        modifiedBy:
          maxLength: 64
          minLength: 0
          type: string
          nullable: true
        id:
          type: string
          nullable: true
      additionalProperties: false
    DynamicPropertyValueType:
      enum:
      - Undefined
      - ShortText
      - LongText
      - Integer
      - Decimal
      - DateTime
      - Boolean
      - Html
      - Image
      type: string
    CartLineItem:
      type: object
      properties:
        productId:
          type: string
          nullable: true
        catalogId:
          type: string
          nullable: true
        categoryId:
          type: string
          nullable: true
        sku:
          type: string
          nullable: true
        productType:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
        productOuterId:
          type: string
          nullable: true
        quantity:
          type: integer
          format: int32
        fulfillmentCenterId:
          type: string
          nullable: true
        fulfillmentCenterName:
          type: string
          nullable: true
        fulfillmentLocationCode:
          type: string
          nullable: true
        shipmentMethodCode:
          type: string
          nullable: true
        requiredShipping:
          type: boolean
        thumbnailImageUrl:
          type: string
          nullable: true
        imageUrl:
          type: string
          nullable: true
        isGift:
          type: boolean
        isRejected:
          type: boolean
        currency:
          type: string
          nullable: true
        languageCode:
          type: string
          nullable: true
        note:
          type: string
          nullable: true
        isReccuring:
          type: boolean
        taxIncluded:
          type: boolean
        isConfigured:
          type: boolean
        volumetricWeight:
          type: number
          format: double
          nullable: true
        weightUnit:
          type: string
          nullable: true
        weight:
          type: number
          format: double
          nullable: true
        measureUnit:
          type: string
          nullable: true
        height:
          type: number
          format: double
          nullable: true
        length:
          type: number
          format: double
          nullable: true
        width:
          type: number
          format: double
          nullable: true
        validationType:
          type: string
          nullable: true
        isReadOnly:
          type: boolean
        priceId:
          type: string
          nullable: true
        listPrice:
          type: number
          format: double
        listPriceWithTax:
          type: number
          format: double
        listTotal:
          type: number
          format: double
        listTotalWithTax:
          type: number
          format: double
        salePrice:
          type: number
          format: double
        salePriceWithTax:
          type: number
          format: double
        placedPrice:
          type: number
          format: double
        placedPriceWithTax:
          type: number
          format: double
        extendedPrice:
          type: number
          format: double
        extendedPriceWithTax:
          type: number
          format: double
        discountAmount:
          type: number
          format: double
        isDiscountAmountRounded:
          type: boolean
        discountAmountWithTax:
          type: number
          format: double
        discountTotal:
          type: number
          format: double
        discountTotalWithTax:
          type: number
          format: double
        fee:
          type: number
          format: double
        feeWithTax:
          type: number
          format: double
        vendorId:
          type: string
          nullable: true
        selectedForCheckout:
          type: boolean
        discounts:
          type: array
          items:
            $ref: '#/components/schemas/Discount'
          nullable: true
        taxType:
          type: string
          nullable: true
        taxTotal:
          type: number
          format: double
        taxPercentRate:
          type: number
          format: double
        taxDetails:
          type: array
     

# --- truncated at 32 KB (61 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/virto-commerce/refs/heads/main/openapi/virto-commerce-shopping-cart-api-openapi.yml