# Create or update a cart

Creates or updates a cart.
As with many other endpoints, the payload is configurable and can contain additional data in the `extendedProperties` field.
To update a cart, use the same cartId as an existing cart.

Endpoint: POST /abandonedCarts
Version: 4.3.4
Security: api_key

## Request fields (application/json):

  - `cartId` (string, required)
    Unique identifier of cart
    Example: 934E2183-5004-45B0-8E75-A5178F1DEEF1

  - `cartUrl` (string)
    URL to customers cart
    Example: http://mywebshop.com/cart/934E2183-5004-45B0-8E75-A5178F1DEEF1

  - `contactId` (string, required)
    Customer identifer
    Example: F68438A9-800B-457D-81D5-952FCEB63D8C

  - `externalId` (string)
    External customer identifer
    Example: 100001111

  - `extendedProperties` (object)
    Additional properties depending on configuration

  - `extendedProperties.additionalProp1` (string)

  - `extendedProperties.additionalProp2` (string)

  - `extendedProperties.additionalProp3` (string)

  - `items` (array)
    List of products/items

  - `items.itemId` (string)
    Unique id of item
    Example: 1001

  - `items.quantity` (number)
    Number of items
    Example: 2

  - `items.productUrl` (string)
    URL to product
    Example: https://mywebshop.com/products/1001

  - `items.imageUrl` (string)
    URL to an image of the product
    Example: https://mywebshop.com/products/images/1001

  - `items.name` (string)
    Name of product
    Example: Product 1001

  - `items.price` (number)
    TODO
    Example: 799.9

  - `items.salePrice` (number)
    TODO
    Example: 499.5

  - `items.currency` (string)
    Example: NOK

