- Success Criterion 3.3.4
- Conformance level AA
Permanent Data Deletion With No Confirmation or Undo
3.3.4 — Error Prevention (Legal, Financial, Data)
Scenario
Setting
A grocery delivery app's shopping cart
What’s wrong
Deleting user-controllable data permanently with no confirmation and no recovery.
Example
function clearCart() {
cart.items = []; // wipes the saved cart instantly, no confirmation, no recovery
saveCart(cart);
} Why it matters
A shopper who taps 'Clear cart' by mistake loses 30 items they'd carefully picked for the week, with no way to restore them.
How to test
Delete user-controllable data: if there's no confirmation prompt and no way to recover afterward, it fails.
How to fix
State the item count in the confirmation and require an explicit yes before an irreversible wipe.
function clearCart() {
showConfirmDialog({
message: 'Remove all 30 items from your cart? This cannot be undone.',
onConfirm: () => { cart.items = []; saveCart(cart); }
});
} Outcome
A shopper who taps the wrong button catches the confirmation and keeps their full cart.
Who is affected
People with motor disabilities who may mis-tap a small clear-cart control, and anyone who acts before fully reading the button label.
Learn more
- Understanding Understanding document (opens in a new tab)
Related scenarios
- Binding Purchase Submitted With No Review Step Beforehand
- One-Click Order Placed With No Chance to Review It First
- Legal Commitment Submitted With No Review-and-Confirm Step
- Review Page That Isn’t Actually Editable Before Final Submission
- Financial Transfer Form That Never Confirms the Entered Details
- Exam Answer Locked In Instantly With No Chance to Review