{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api.shopware.com/schemas/cart", "title": "Shopware Cart", "description": "Represents a customer shopping cart in the Shopware Store API.", "type": "object", "properties": { "name": { "type": "string", "description": "Cart name, e.g. 'guest-cart'" }, "token": { "type": "string", "description": "Context token identifying this cart and the user session" }, "price": { "$ref": "#/$defs/CalculatedPrice" }, "lineItems": { "type": "array", "items": { "$ref": "#/$defs/LineItem" }, "description": "All items within the cart" }, "errors": { "type": "object", "description": "Cart errors keyed by error key (e.g. insufficient stock, invalid vouchers)", "additionalProperties": { "type": "object", "properties": { "code": { "type": "number" }, "key": { "type": "string" }, "level": { "type": "number", "description": "0 = notice, 10 = warning, 20 = error" }, "message": { "type": "string" }, "messageKey": { "type": "string" } }, "required": ["code", "key", "level", "message", "messageKey"] } }, "deliveries": { "type": "array", "items": { "$ref": "#/$defs/CartDelivery" } }, "transactions": { "type": "array", "items": { "type": "object", "properties": { "paymentMethodId": { "type": "string" }, "amount": { "$ref": "#/$defs/CalculatedPrice" } } } }, "modified": { "type": "boolean", "description": "True if the cart was modified since last read" }, "customerComment": { "oneOf": [{ "type": "string" }, { "type": "null" }], "description": "Optional customer comment attached to the order" }, "affiliateCode": { "oneOf": [{ "type": "string" }, { "type": "null" }], "description": "Affiliate tracking code" }, "campaignCode": { "oneOf": [{ "type": "string" }, { "type": "null" }], "description": "Campaign tracking code" } }, "$defs": { "CalculatedPrice": { "type": "object", "properties": { "unitPrice": { "type": "number" }, "totalPrice": { "type": "number" }, "quantity": { "type": "integer" }, "calculatedTaxes": { "type": "array", "items": { "type": "object", "properties": { "tax": { "type": "number" }, "taxRate": { "type": "number" }, "price": { "type": "number" } } } }, "taxRules": { "type": "array", "items": { "type": "object", "properties": { "taxRate": { "type": "number" }, "percentage": { "type": "number" } } } }, "referencePrice": { "oneOf": [ { "type": "object", "properties": { "price": { "type": "number" }, "purchaseUnit": { "type": "number" }, "referenceUnit": { "type": "number" }, "unitName": { "type": "string" } } }, { "type": "null" } ] }, "listPrice": { "oneOf": [ { "type": "object", "properties": { "price": { "type": "number" }, "discount": { "type": "number" }, "percentage": { "type": "number" } } }, { "type": "null" } ] } } }, "LineItem": { "type": "object", "properties": { "id": { "type": "string" }, "referencedId": { "oneOf": [{ "type": "string" }, { "type": "null" }], "description": "ID of the referenced product or promotion" }, "label": { "type": "string" }, "quantity": { "type": "integer", "minimum": 1 }, "type": { "type": "string", "enum": ["product", "promotion", "credit", "custom", "container"] }, "price": { "$ref": "#/$defs/CalculatedPrice" }, "priceDefinition": { "type": "object" }, "payload": { "type": "object", "description": "Entity-specific payload (product ID, name, options for variants, etc.)" }, "deliveryInformation": { "type": "object" }, "children": { "type": "array", "items": { "$ref": "#/$defs/LineItem" } }, "good": { "type": "boolean" }, "description": { "oneOf": [{ "type": "string" }, { "type": "null" }] }, "cover": { "type": ["object", "null"], "properties": { "url": { "type": "string", "format": "uri" }, "alt": { "type": ["string", "null"] }, "title": { "type": ["string", "null"] } } }, "removable": { "type": "boolean" }, "stackable": { "type": "boolean" }, "modified": { "type": "boolean" } } }, "CartDelivery": { "type": "object", "properties": { "deliveryDate": { "type": "object" }, "shippingMethod": { "type": "object" }, "shippingOrderAddress": { "type": "object" }, "trackingCodes": { "type": "array", "items": { "type": "string" } }, "positions": { "type": "array", "items": { "type": "object" } }, "shippingCosts": { "$ref": "#/$defs/CalculatedPrice" } } } } }