ProblemThe developers page has a tester but no history of delivered webhook attempts, retry counts, or dead-letter entries.
Solution
- Add
app/(merchant)/developers/webhooks/page.tsx showing attempts for the merchant's subscriptions: payload, status code, latency, next retry.
- Add per-attempt "view payload" and "replay" actions.
- Show retry backoff schedule and DLQ entries with manual drain.
- Poll at 10s with hidden-tab pause; render attempt status with
StatusBadge vocabulary.
Acceptance Criteria
- A failing delivery shows its retry schedule and a working replay.
- Payload viewer renders formatted JSON with a copy button.
- DLQ drain moves entries to reprocessing and reflects state.
npm run build passes.
Note for Contributors: Write a clear PR description. Show a 5xx attempt retrying and succeeding.
ProblemThe developers page has a tester but no history of delivered webhook attempts, retry counts, or dead-letter entries.
Solution
app/(merchant)/developers/webhooks/page.tsxshowing attempts for the merchant's subscriptions: payload, status code, latency, next retry.StatusBadgevocabulary.Acceptance Criteria
npm run buildpasses.Note for Contributors: Write a clear PR description. Show a 5xx attempt retrying and succeeding.