Platform / Field guide

Webhooks

Publish product events to customer systems.

Delivery can happen more than once

EVENT ID: EVT_2048↗eventTRY 1TRY 2TRY 3200deliveredSigned payload sent once

A signed event is sent to the customer endpoint.

01 / CONTEXT

Why it matters

A webhook makes your product part of another system’s workflow. The contract includes event meaning, authentication, retry behavior and a way to investigate failed deliveries.

A webhook is an API in reverse: customers depend on your events to keep their systems in sync. Deliveries will fail and arrive more than once, so the event contract and retry story matter.

02 / DESIGN

Decisions to make

  • Pick stable event names and payload versions.
  • Define retry windows and dead-letter behavior.
  • Let customers rotate signing secrets and replay deliveries.
  • Choose event names and payload versioning before integrations depend on them.
  • Define retry duration, replay access and endpoint verification.
03 / IMPLEMENTATION

Build checklist

  • Sign each delivery and include a unique event ID.
  • Document at-least-once delivery and ordering behavior.
  • Give administrators delivery history with response status and retry controls.
  • Sign payloads and document signature verification.
  • Expose delivery attempts, response codes and manual replay.
04 / WATCH FOR

Common mistakes

  • Making the customer endpoint part of your own write transaction.
  • Sending an event before its transaction is committed.
  • Assuming a customer endpoint will respond quickly or only once.
05 / GO DEEPER

Tools & references

4 starting points to compare or study. Check fit, maintenance, terms and current capabilities before choosing one.

BUILDING THIS NOW?

Explore the SaaSLayer approach.

See the services and developer guides behind our AWS backed SaaS building blocks.

Read SaaSLayer docs
NEXT FEATUREData export