# Browser verification checklist

Use this procedure for user-facing changes. Rendering a page is not proof that
the connected workflow works.

## Before the test

- [ ] Start from a clean supported environment.
- [ ] Use test accounts, test credentials, and non-production data.
- [ ] Record the browser, viewport, application version, and test URL.
- [ ] Clear stale state when the scenario requires a first-time user.
- [ ] Open the browser console and network inspector.

## Run the user flow

- [ ] Begin at the same entry point a real user would use.
- [ ] Complete every required interaction with the mouse or keyboard.
- [ ] Confirm loading, success, empty, validation, and error states.
- [ ] Inspect console messages after each important transition.
- [ ] Inspect failed or unexpected network requests and response bodies.
- [ ] Confirm the final state persists after refresh when it should.
- [ ] Repeat the main path with keyboard navigation.

## Payment-flow example

- [ ] Add a known test item and open checkout.
- [ ] Confirm price, currency, quantity, and customer state.
- [ ] Click `Pay now` rather than stopping after the HTML renders.
- [ ] Confirm that the provider's test flow opens exactly once.
- [ ] Complete a successful test payment and verify the order number.
- [ ] Run a declined payment and confirm the cart remains recoverable.
- [ ] Confirm duplicate clicks do not create duplicate charges or orders.
- [ ] Check console errors, redirects, callbacks, and payment API requests.

## Record evidence

- [ ] Write the exact steps and observed result.
- [ ] Save the relevant screenshot, trace, log, or automated test report.
- [ ] Record pass or fail against each acceptance criterion.
- [ ] Put the failure at the first incorrect observable step, not at the final
  symptom.
