Interactive walkthrough

Watch a failed webhook recover.

This is a deterministic product walkthrough that uses sample data. No live system is contacted. Every state, status code, and decision is taken directly from the fixture below.

Deterministic walkthrough with sample data. No live system contacted.

JavaScript is disabled or not loaded. The complete scenario is shown below as static content. With JavaScript, this becomes an interactive stepper with play, pause, and step controls.

  1. Idle

    Walkthrough ready. Press Start to begin.

    Event stream

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe

    Delivery trail

    No delivery attempts yet.

  2. Accepted

    POST /hooks/stripe received

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe

    Delivery trail

    No delivery attempts yet.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  3. Signature verified

    Stripe signature valid

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe

    Delivery trail

    No delivery attempts yet.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  4. Rule matched

    payments-v3 selected Billing API

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type

    Delivery trail

    No delivery attempts yet.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  5. HTTP 500

    Attempt 1 failed

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Attempt 1 returned HTTP 500 after 418 ms. Retry scheduled in 30 s.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  6. Retrying

    30s · 2m · 10m delays

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Attempts 2 and 3 also returned HTTP 500. Backoff stretches to 2 m, then 10 m.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  7. Exhausted

    Four attempts returned HTTP 500

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Four attempts returned HTTP 500. Delivery is exhausted; awaiting operator action.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  8. Receiver repaired

    Operator deploys fix

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Operator deployed a fix for request body deserialization. The receiver is ready.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  9. Replay

    Same preserved event replayed

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    The same preserved event is replayed to Billing API.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  10. HTTP 200

    Replay delivered successfully

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Replay attempt returned HTTP 200 in 96 ms.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
  11. Receipt ready

    Sanitized receipt exported

    Event stream

    Provider
    stripe
    Event type
    payment_intent.payment_failed
    Accepted time
    Content type
    application/json
    Body size
    482 bytes
    Verification
    Stripe signature valid
    Redaction
    Sanitized; removed headers x-forwarded-for, x-real-ip; masked paths present.

    Inspector & routing

    Endpoint
    billing-production
    Request
    POST /hooks/stripe
    Matched rule
    payments-v3 · 7
    Matched condition
    Event type equals payment_intent.payment_failed
    Selected destination
    Billing API
    Skipped destinations
    • Audit log rule did not select
    • Salesforce sync condition mismatch: event type
    Routing explanation
    Rule payments-v3 selected Billing API. Audit log and Salesforce sync were skipped.

    Delivery trail

    Sanitized receipt exported. Final state: replay succeeded.

    Attempts

    1. Attempt 1 HTTP 500 · http_server_error · 214 ms · retry in 30s
    2. Attempt 2 HTTP 500 · http_server_error · 187 ms · retry in 2m
    3. Attempt 3 HTTP 500 · http_server_error · 316 ms · retry in 10m
    4. Attempt 4 HTTP 500 · http_server_error · 368 ms · exhausted; await operator
    5. Attempt 5 HTTP 200 · 92 ms · delivered
Sample diagnostic receipt
Event ID
evt_20260720_143208_01
Endpoint
billing-production (end_9c2f7a1e)
Provider
stripe
Event type
payment_intent.payment_failed
Verification
Stripe signature valid
Redaction state
Sanitized (signature redacted, sensitive paths masked)
Routing rule
payments-v3 · 7
Selected destination
Billing API
Skipped destinations
Audit log, Salesforce sync
Error class
http_server_error
Recovery action
operator_replay_after_receiver_repair
Final result
Replay returned HTTP 200

Deliveries

Billing API exhausted · 4 attempts
Billing API succeeded · 1 attempt

Download the receipt as JSON or read it as Markdown.