Railhook is an MIT-licensed webhook gateway that handles both directions of webhook traffic in one tool.
Sending: your application makes one API call and Railhook delivers the event to every endpoint subscribed to it. Deliveries are signed with Standard Webhooks, retried on a ladder of 1 minute, 5 minutes, 15 minutes, 1 hour, 6 hours and 24 hours, kept in order per endpoint when you ask for it, and every attempt is stored with the response your customer's server returned. Failed deliveries land in a queue you can replay in bulk. Your customers can be given an embeddable portal where they manage their own endpoints and replay their own deliveries.
Receiving: point Stripe, GitHub, GitLab, Shopify, Slack, Twilio or any other service at Railhook. It verifies the provider's signature, drops duplicates and forwards the event to your services with its own retries. The CLI tunnels incoming webhooks to localhost while you develop.
Also included: a dashboard with delivery analytics, role-based access, API keys, transformations, PII masking, an MCP server so AI agents can query and replay deliveries, and SDKs for Node, Python and PHP.
Run it on your own server with one command (Docker, PostgreSQL, Kafka and Redis included) or use the free hosted plan. The self-hosted build is the same software as the hosted one, with every feature, no licence key and no enterprise edition.