Buy online: purchase cannot be completed from any tested location
Since 04:25 UTC the payment step of Buy online fails from London, Frankfurt and Sydney. The payment provider endpoint pay.example-psp.com/v1/payments answers 502 in 30 seconds on every attempt. Steps 1 to 6 succeed and the API quote endpoint is healthy, so the failure boundary is the third-party payment gateway, not shop.example.com itself.
Failure boundary
- Step
- Step 7 · Complete purchase
- Where
- POST https://pay.example-psp.com/v1/payments
- Observed
- HTTP 502 Bad Gateway after 30.1s (3 of 3 locations, 2 consecutive runs)
- First seen
- 04:25:34 UTC from London
What still works
- Steps 1 to 6 of Buy online (homepage, search, traveller details, quote, basket)
- POST /api/quotes: 200 in 1.3s median from all locations
- Sign in journey: healthy, last proof 04:30 UTC
- Contact support (web form): healthy, last proof 04:28 UTC
Confidence
92%
- 3 independent locations agree (London, Frankfurt, Sydney)
- 2 consecutive runs per location, 10 minutes apart
- Same failing request and status code on every run
- No runner or platform errors in the window
Coverage
Tested
- Cloudflare edge: London, Frankfurt, Sydney
- Browser probe (Chromium 130) and API probe
- Test card path only
Not tested
- Apple Pay and PayPal paths
- Mobile app checkout
- Residential or carrier networks
Last refresh 04:31 UTC
Change context
No deployment marker on shop.example.com in the last 6 hours. Behaviour fingerprint for steps 1 to 6 is unchanged (stable).
Evidence
Step 7 at 00:00, before the payment request was sent.
- Screenshot before payment (step 7, 00:00)sha256 3f9a1c…b27e · 184 KB · 04:25:04ZR2 · 1 year
- Screenshot after error (step 7, 00:31)sha256 9d2e77…41ac · 177 KB · 04:25:35ZR2 · 1 year
- HAR archive for the runsha256 c04b1f…e9d3 · 1.4 MB · 04:25:36ZR2 · 1 year
- Response body from pay.example-psp.com (502)sha256 77aa0e…5c19 · 1 KB · 04:25:34ZR2 · 1 year
- DOM diff: checkout before and aftersha256 e1b3c8…07fd · 8 KB · 04:25:36ZR2 · 1 year
Evidence is hashed at capture, never edited by the application, and downloaded through short-lived tokens with an audit row.
Timeline
- 04:10 UTCBuy online passes from all locations (last known good)
- 04:25 UTCLondon run fails at step 7 with 502 from payment gateway
- 04:26 UTCFrankfurt and Sydney runs fail with the same request and status
- 04:31 UTCCorrelation opens this Event; materiality policy met (2 runs, 3 locations)
- 04:31 UTCSlack #ops and PagerDuty notified with evidence links