# Cart

Source: <https://docs.ictsviluppo.example/dossier/sections/main-cart/>

Cart is the main section of the cart page: the items the customer added, on one side, and a summary with the totals and the checkout button on the other. It is used on the cart template, the page at `/cart`, above a row of products. The [Cart drawer](https://docs.ictsviluppo.example/dossier/sections/a-cart-drawer) that slides in from the side has its own settings and blocks.

## Build the cart summary

The summary is made only of blocks, in the order you choose: **Totals**, **Free shipping progress**, **Checkout button**, **Discount code**, **Delivery estimate**, **Cart note**, **Product suggestions**, **Invoice request**, **Terms and conditions** and **Text**. Apps that support it can add their own blocks too. A block in the summary is a feature turned on: to remove the discount field, for example, remove the **Discount code** block.

- Keep the **Totals** and **Checkout button** blocks: customers need them to buy, and Shopify expects every cart to show them. If one is missing, a notice at the bottom of the summary tells you in the theme editor.
- Each block works once per cart, except **Text**, which you can add as many times as you like. A second copy of any other block is hidden in your store and marked in the theme editor.

The template ships with totals, discount code, delivery estimate, product suggestions, cart note, a text about returns and the checkout button.

## Show accelerated checkout buttons

**Show accelerated checkout buttons** in the **Checkout button** block adds buttons such as Shop Pay, PayPal or Apple Pay below “Check out”. They depend on the payment methods you turned on in **Settings > Payments**.

These buttons skip the cart’s own checks, so they’re hidden, with a sentence that says why, while the terms checkbox is unchecked and when the customer requests an invoice.

## Show progress toward free shipping

The **Free shipping progress** block shows how much is left to spend for free shipping, with a bar. The theme doesn’t read your shipping rates: in **Free shipping minimum order**, write the same amount as your free shipping rate in **Settings > Shipping and delivery**, as a plain number such as 150. Without an amount the block shows nothing.

If you sell in several currencies, **Show only in your store currency** hides the bar for customers paying in another currency. To use a different amount in a market, adapt the setting in the Translate & Adapt app, then turn the option off. The bar is hidden when nothing in the cart needs shipping.

## Let customers add a discount code or a note

**Discount code** adds a field where customers apply a code and see the codes already applied, each with a button to remove it. **Cart note** adds a text area for instructions; the note is saved automatically when the customer leaves the field, and shows in the order.

## Suggest products in the cart

**Product suggestions** shows a few products to add, with a **Heading** of your choice. Under **Products**, choose **Complementary to the cart** to use the complementary products you set in the Search & Discovery app, or **From a collection** to show products from the **Collection** you pick. Products already in the cart are left out, and when nothing is left the block doesn’t appear.

## Ask customers to accept your terms

**Terms and conditions** adds a checkbox that customers must check before checking out, with a link to your terms of service. Write the policy first in **Settings > Policies**: without it the block shows nothing. While the box is unchecked, accelerated checkout buttons in the cart stay hidden. Accelerated checkout buttons on product pages don’t ask for it.

## Collect invoice details

**Invoice request** lets customers ask for an invoice and fill in the details for an Italian invoice. Choose which customer types are offered: **Show individual**, **Show company** and **Show nonprofit organization**. **Show Italian e-invoicing fields** adds the recipient code (SDI) and certified email (PEC).

The details are saved with the cart and appear in the order. Accelerated checkout buttons are hidden when an invoice is requested, because they don’t carry those details.

## Show the delivery estimate

The **Delivery estimate** block shows the same date range as the product page. Set the cutoff time and the processing and shipping days in [Theme settings](https://docs.ictsviluppo.example/dossier/theme-settings) > **Delivery estimate**. It’s hidden when nothing in the cart needs shipping.

## What customers can do with their items

Customers change quantities and remove items right in the list, and the totals update without reloading the page. After removing an item, an “Undo” link puts it back, with the same variant and quantity; it stays until the next change in the cart. Turn on **Show vendor** to show the brand on each item.

When the cart is empty, customers see a “Continue shopping” link and, if customer accounts are on and they aren’t logged in, a link to log in. The cart also works when JavaScript is off: an “Update cart” button saves the quantities.

## Settings

| Setting | Type | Default | Options |
| - | - | - | - |
| **Show vendor** | Checkbox | Off | — |
| **Color scheme** | Color scheme | scheme-1 | — |

## Blocks

### Totals

This block has no settings.

### Free shipping progress

| Setting | Type | Default | Options |
| - | - | - | - |
| The theme doesn’t read your shipping rates: use the same amount as your free shipping rate in Settings > Shipping and delivery. | | | |
| **Free shipping minimum order** — Amount only, for example 150, in your store’s currency. To use another amount for a market, adapt this setting in the Translate & Adapt app. | Text | — | — |
| **Show only in your store currency** — Hides the bar when customers shop in another currency. Turn off if you adapted the minimum for each market: market-specific content shows only on plans that include it. | Checkbox | On | — |

### Checkout button

| Setting | Type | Default | Options |
| - | - | - | - |
| **Show accelerated checkout buttons** — Buttons depend on the payment methods you’ve turned on. | Checkbox | On | — |

### Discount code

This block has no settings.

### Delivery estimate

Set the cutoff time and shipping days in Theme settings > Delivery estimate. Hidden when nothing in the cart needs shipping.

This block has no settings.

### Cart note

This block has no settings.

### Product suggestions

| Setting | Type | Default | Options |
| - | - | - | - |
| **Heading** | Text | You may also need | — |
| **Products** — Complementary products are set in the Search & Discovery app. Without them, suggestions don’t show. Products already in the cart are left out. | Drop-down | Complementary to the cart | Complementary to the cart, From a collection |
| **Collection** — Used when Products is set to From a collection. | Collection | — | — |
| **Maximum products to show** | Slider | 3 | 1–6, step 1 |

### Invoice request

| Setting | Type | Default | Options |
| - | - | - | - |
| Invoice details are saved as cart attributes and appear in the order. Accelerated checkout buttons hide when an invoice is requested, because they don’t carry cart attributes. | | | |
| **Show individual** | Checkbox | On | — |
| **Show company** | Checkbox | On | — |
| **Show nonprofit organization** | Checkbox | On | — |
| **Show Italian e-invoicing fields** — Recipient code (SDI) and certified email (PEC). | Checkbox | Off | — |

### Terms and conditions

Links to your terms of service policy in Settings > Policies. Accelerated checkout buttons in the cart show after customers agree. Buttons on product pages skip this checkbox.

This block has no settings.

### Text

| Setting | Type | Default | Options |
| - | - | - | - |
| **Text** | Rich text | Share shipping, returns or payment details. | — |

This section also accepts app blocks.
