# Shadcn Payment Failure

> Destructive alert with icon and action buttons

- Type: example, free and open source (MIT)
- Component: [Alert](https://reui.io/components/alert.md)
- Page: https://reui.io/components/alert/c-alert-4
- Docs (Base UI): https://reui.io/docs/components/base/alert.md
- Docs (Radix UI): https://reui.io/docs/components/radix/alert.md
- MCP: `get_example("c-alert-4")`
- Registry item: https://reui.io/r/styles/base-nova/c-alert-4.json
- Uses: Alert

## Best for

A destructive payment failure whose description holds a bulleted checklist of details to fix

## When not to use

- A short error message with no list of things to check: use [Error Variant](https://reui.io/components/alert/c-alert-8.md) (`get_example("c-alert-8")`)
- A payment failure the user must acknowledge before going on: use [Alert Dialog](https://reui.io/components/alert-dialog.md) (`get_component("alert-dialog")`)

## Install

```bash
npx shadcn@latest add @reui/c-alert-4
```

## About Shadcn Alert

### When to use

- Inline status messages in the page for success, info, warning and error outcomes
- Notices that offer a next step, such as a security update, a renewal reminder or a plan upgrade
- Status rows set inside a Frame panel, such as service health, deploy results and message notifications

### When not to use

- A yes or no decision that must be answered before the page goes on: use [Alert Dialog](https://reui.io/components/alert-dialog.md) (`get_component("alert-dialog")`)
- A brief confirmation that floats in a corner and disappears by itself: use [Sonner](https://reui.io/components/sonner.md) (`get_component("sonner")`)
- A complete modal task, such as a plan cancellation form that holds a warning banner: use the [Dialog blocks](https://reui.io/blocks/application/dialog.md)

### Agent notes

- Every `Alert` sets `role` alert, an assertive live region; pass `role` status for a notice that is not urgent
- `AlertTitle` carries a 1 line clamp by default, so copy longer than a heading goes in `AlertDescription`
- `Alert` has no open state or close part, so a Dismiss button must unmount it from state you own

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