# Save-for-Later Cart block

> Shopping Cart Review With Item List, Free-Shipping Progress, Promo Code, and Order Summary Sidebar

Pre-checkout cart page: item rows with quantity steppers, save and remove, plus free-shipping progress, promo field, and an Order Summary sidebar (subtotal, tax, discount, checkout). ReUI Badge, shadcn Progress, InputGroup. Ecommerce basket review.

- Type: Pro block
- Category: [Shopping Cart](https://web.dev.reui.io/blocks/ecommerce/shopping-cart.md)
- Page: https://web.dev.reui.io/blocks/ecommerce/shopping-cart/shopping-cart-1
- MCP: `get_block("shopping-cart-1")`
- Built with: Badge, Button, Button Group, Empty, Field, Input Group, Item, Progress, Separator, Tooltip
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

Save for later with a saved count, stock and arrival on each line, and payment marks under the checkout button

## Agent notes

- `handleSaveForLater` removes the line and only adds its quantity to `savedItemCount`; keep the saved line in your store for a real list
- `getOrderSummary` hardcodes shipping at 8 and tax at 0.0875, and the promo starts applied with a flat `PROMO_DISCOUNT`; compute these on your server
- The Proceed To Checkout button in `OrderSummary` has no handler and Continue Shopping has no `onClick`; wire both to your routes

## When not to use

- A basket that opens as a side panel over a store page right after an add: use [Add-to-Cart Drawer](https://web.dev.reui.io/blocks/ecommerce/shopping-cart/shopping-cart-7.md) (`get_block("shopping-cart-7")`)
- Collecting contact, shipping address and card details to place the order: use the [Checkout blocks](https://web.dev.reui.io/blocks/ecommerce/checkout.md)

## Install

```bash
npx shadcn@latest add @reui/shopping-cart-1
```

## About Shopping Cart blocks

### When to use

- A cart page where shoppers change quantities, remove lines and see the totals before paying
- A mini cart that drops from a header Cart button or slides in from the side after an add

### When not to use

- Rows of funds, coins, transactions or integrations, with no quantities or order total: use the [List blocks](https://web.dev.reui.io/blocks/application/list.md)
- A side panel over an app page for a record, a form or an assistant, with no prices: use the [Sheet blocks](https://web.dev.reui.io/blocks/application/sheet.md)
- Taking contact, shipping address and card details to place and pay for the order: use the [Checkout blocks](https://web.dev.reui.io/blocks/ecommerce/checkout.md)

### Agent notes

- Lines live in local `useState` seeded from `CART_ITEMS` or `CART_LINES` in data.tsx; read them from your cart store and write each quantity change back
- The empty state's Restore Sample Cart button reloads the demo lines through `handleRestoreCart` or `handleRestore`; point it at your catalog
- Each priced file declares its own `formatCurrency` fixed to en-US and USD; change every copy to show another currency or locale

Every ReUI item has a twin like this one; the index is https://web.dev.reui.io/llms.txt. Agents with the ReUI MCP (https://web.dev.reui.io/docs/mcp) get the same guidance from the getters named above.
