# Registration error-copy and QA matrix

Event / form: ______  Owner: ______  Last review: ______  Test environment: ______

| State and trigger | Exact guest-facing text | Safe next action | Data retained / reset | Focus or announcement | System owner | Support fallback | Test result / date |
|---|---|---|---|---|---|---|---|
| Required field omitted | Enter an email address for your confirmation. | Correct email field | Other valid fields retained | Error tied to email; summary if needed | | | |
| Invalid field format | Enter an email address such as name@example.com. | Correct email field | Other valid fields retained | Error tied to email | | | |
| Selected ticket sold out | This ticket is no longer available. Choose another option or return later. | Review available tickets | Keep attendee data when valid | Announce changed availability | | | |
| Session expired | Your registration session expired. Review availability and restart checkout. | Restart with clear restoration notice | Record what can be restored | Focus on restart notice | | | |
| Payment result unknown | We could not confirm the payment yet. Check your order status before trying again. | Check order / contact support | Do not create duplicate order | Status notice and reference | | | |

## Review on the real journey
- [ ] Message identifies the affected field or system state in text, without relying on color.
- [ ] Next action is possible and safe; an uncertain payment does not invite an immediate second charge.
- [ ] Valid entries survive field-level errors; any lost data is explained.
- [ ] Multiple errors can be found and corrected with keyboard and screen reader.
- [ ] Changed ticket availability and price are reviewed before payment.
- [ ] No ticket is described as confirmed until the order system confirms it.
- [ ] Copy is checked in every published language and at narrow screen sizes.

Decision owner / date: ______  Open issue / assigned owner: ______
