Webhook
A webhook is an HTTP callback where one system sends a notification to a URL when a defined event occurs – real-time data exchange without constant polling.
Webhooks are the notification system of the modern web. Instead of constantly asking a system if something new happened (polling), the system tells you when it does – in real time. That saves resources, reduces latency and makes integrations cleaner. From payment notifications to Git hooks to chat bots – webhooks are the invisible infrastructure of many services.
What is Webhook?
A webhook (also HTTP callback or push notification) is a mechanism where a server sends an HTTP POST request to a URL configured by the receiver when a defined event occurs. The event payload contains structured data (usually JSON) about what happened. Unlike classic API calls (pull), where the client repeatedly asks for new data, webhooks use push: the server sends data as soon as it is available. That reduces unnecessary traffic and allows near-instant reaction to events. Webhooks are a basic building block of event-driven architecture.
How does Webhook work?
The receiver registers a callback URL with the sender (e.g. via dashboard or API). When a defined event occurs (e.g. payment completed, new commit, form submitted), the sender sends an HTTP POST with the event data as JSON to that URL. The receiver processes the data and responds with an HTTP status (200 OK). If delivery fails (timeout, error), most systems retry (e.g. with exponential backoff). For security, webhooks are often signed with HMAC so the receiver can verify they are genuine.
Practical Examples
Stripe payment webhook: After a successful payment Stripe sends a webhook to the shop, which marks the order as paid and triggers shipping.
GitHub webhook: On every push to a repo, GitHub sends a webhook to the CI/CD server, which runs tests and deploys on success.
Slack incoming webhook: A monitoring system sends a webhook to Slack on critical errors so the team is notified in chat.
Shopify order webhook: On new orders Shopify sends a webhook to the ERP, which updates stock and creates shipping labels.
Calendly webhook: When a meeting is booked, Calendly sends the details to the CRM, which creates a contact automatically.
Typical Use Cases
Payment: Real-time notification of successful, failed or refunded payments
CI/CD: Code pushes trigger build, test and deployment automatically
Notifications: Events in one system trigger immediate alerts in chat, email or SMS
Data sync: Changes in one system are pushed to connected systems in real time
Automation: Webhooks trigger serverless functions that transform, forward or process data
Advantages and Disadvantages
Advantages
- Real time: Data is sent as soon as the event happens – no delay from polling
- Efficient: No unnecessary traffic from repeated requests when nothing changed
- Simple integration: HTTP POST is universal – any language and platform can receive
- Scalable: Event-driven architecture allows loose coupling and independent scaling
- Wide support: Most modern web services offer webhooks
Disadvantages
- Reliability: If the receiver is down, webhooks can be lost (retry logic helps but does not fully solve it)
- Security: Webhook URLs must be protected – without signature verification anyone could send data
- Debugging: Push-based systems are harder to debug than pull-based
- Order: Order of webhooks is not always guaranteed – idempotent processing is important
Frequently Asked Questions about Webhook
What is the difference between webhook and API?
How do you secure webhooks?
What if the receiver is unreachable?
Related Terms
Want to use Webhook in your project?
We are happy to advise you on Webhook and find the optimal solution for your requirements. Benefit from our experience across over 200 projects.