> For the complete documentation index, see [llms.txt](https://developer.esw.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.esw.com/adobe-commerce-magento/additional-features/mixed-cart-support.md).

# Mixed Cart Support

Mixed Cart Support lets shoppers purchase physical and digital products in a single ESW checkout flow.

This feature supports carts that contain any combination of:

* physical products
* virtual products
* downloadable products

### Digital product types

Adobe Commerce supports two built-in digital product types:

* **Virtual products:** Intangible items such as memberships, subscriptions, or services
* **Downloadable products:** Digital items such as ebooks, music, or software downloads

Both product types:

* have no shipping weight
* are not shippable

With Mixed Cart Support enabled:

* digital products are included in catalog exports to ESW
* physical and digital products can be added to the same cart
* ESW checkout can process mixed carts correctly

### How the feature works

Mixed Cart Support changes both catalog export behavior and checkout behavior for digital products.

#### Catalog sync behavior

When catalog sync runs, Adobe Commerce includes supported digital products in the export sent to ESW.

For digital products:

* the `category` field is set to `Digital` in the ESW payload
* the rest of the required catalog fields follow the standard catalog export rules

For required catalog fields, refer to the detailed catalog API documentation.

#### Configure a downloadable product

To configure a product as downloadable in Adobe Commerce:

1. Go to **Catalog → Products**.
2. Open the product you want to edit.
3. Set the product attribute set to **Downloadable**.
4. Set the product weight to **This item has no weight**.
5. In the downloadable information section, enable **Is this downloadable product**.
6. Configure the downloadable links and maximum download limit.

{% hint style="info" %}
The downloadable product settings are only available when the product is configured as non-shippable.
{% endhint %}

### Checkout behavior

Shoppers can create any of these cart combinations:

* physical products only
* digital products only
* a mixed cart with both physical and digital products

During checkout:

* ESW identifies digital products by the `Digital` category value
* digital products do not contribute to shipping charges
* digital products skip shipping-specific handling
* shoppers see a message that downloadable items will be available after purchase

### Expected result

After setup is complete:

* digital products are exported correctly to ESW
* mixed carts can be processed in a single checkout
* shipping logic applies only to physical products
* shoppers can purchase downloadable and physical products together without checkout issues


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.esw.com/adobe-commerce-magento/additional-features/mixed-cart-support.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
