Guide
Receive webhooks on your local app
Receive a provider's webhooks on your local app and see each delivery.
- Applies to
- Stripe, GitHub, Slack, Shopify and any provider that sends HTTP requests; Starter and higher for signature checks and the inbox
- Time
- About 10 minutes
- What it changes
- Lets an outside service send requests to your local app.
- Last reviewed
- , by Product documentation
Before you begin
What to know before you start
- A webhook sender calls your public address, so the address must stay reachable while you test. Use a reserved address (Starter and higher) so the provider's setting never changes.
- Do not point a provider's live mode at a tunnel on your laptop.
Steps
Step 1. Copy the tunnel's public address and add your webhook path.
Webhook URL https://example.instawormhole.site/webhooks/stripeReplace example with your tunnel's name and the path with the one your app handles.
You should see: You have the full URL to give to the provider.
Step 2. Enter that URL as the webhook endpoint in the provider's dashboard.
You should see: The provider accepts the URL and shows its own signing secret.
Step 3. Send a test event from the provider.
You should see: A request appears in the tunnel's inspector.
To check: Its status is the one your app returned. Add the provider's signing secret to the tunnel to see whether the signature is valid.
Step 4. Fix your app and replay the same delivery from the inspector.
You do not need to trigger the event again. Replay is not available on a tunnel with a password.
You should see: Your app handles the delivery again and the replay appears as a new row.
You are done when
- A delivery from the provider appears in the inspector, and your app answered it.
What to do next
Undo or clean up
- Remove the webhook endpoint at the provider and stop the connector.
Good to know
Stripe's own listen command forwards Stripe events to a local address by itself and also works. A tunnel helps when you test several providers or endpoints you configure in a dashboard.
Related
This page is part of Automate and integrate. Still stuck? Contact support.