Test the Buyer Journey
Do not stop at component checks. Test the full buyer journey:
- landing page
- checkout
/checkout/success- sign-in or post-payment account creation when needed
- product-access claim and grant
/start- the first incomplete packet-first stage
The four realities
Every pass should cover these states:
- signed out
- signed in without access
- signed in with access
- newly paid and waiting for access grant
The fastest local flow
- Follow Local QA.
- Use the no-access QA account for locked-state checks.
- Use the granted-access QA account for product checks.
- Run a real local Stripe test checkout before you trust the handoff.
What to confirm
- signed-out users can start checkout directly from the primary CTA
- users without access land on
/startand see inline recovery - checkout returns to
/checkout/success /checkout/successoffers sign-in or account creation when payment happened before auth- the webhook grants access
- the app recovers automatically into
/start - the first protected page does not throw a client-side
Unauthorizederror during hydration - the next packet-first stage loads after access appears
What success looks like
You are ready for a production pass when the buyer journey works without fake shortcuts or manual database intervention.
Last updated on