'Webhooks Explained: The Foundation of Modern Automation'
Webhooks sound complicated. They aren't. And if you want to build automations, you have to understand them.
The problem without webhooks
Imagine you are waiting for an important parcel. You have two options:
Option A: polling
You walk to the front door every 5 minutes and check. 100 times a day. Most of the time nothing is there.
Option B: the doorbell
You relax. When the parcel arrives, the courier rings. You react.
Webhooks are the doorbell.
What is a webhook?
A webhook is an automatic notification that one system sends to another when something happens.
Instead of: you constantly asking "anything new?"
With a webhook: the system tells you "hey, something just happened!"
That makes a webhook the counterpart to the classic API request. If you don't know those basics yet: API basics for e-commerce founders explains them with no technical background needed.
A practical example
Without a webhook (polling):
Your system asks Shopify every 5 minutes: "any new orders?"
- 99% of the time: "no"
- Lots of pointless requests
- Delay of up to 5 minutes
With a webhook:
Shopify sends you a message immediately: "new order #1234!"
- Only when something happens
- No pointless requests
- Reaction within seconds
How webhooks work
1. You register a URL with Shopify (or another system)
2. You say which events you want to hear about (new order, product change, etc.)
3. When the event happens, Shopify sends data to your URL
4. Your system receives it and processes it
The "system" can be n8n, Make, Zapier or your own server. How to build your first n8n workflow in 15 minutes is shown in this tutorial.
Technical (but simple)
A webhook is an HTTP POST request. That means:
- Who sends: the source system (e.g. Shopify)
- Where to: your webhook URL
- What: JSON data about the event
- When: immediately when the event happens
Example data (simplified):
```json
{
"event": "order_created",
"order_id": 12345,
"customer_email": "kunde@example.com",
"total": 129.00,
"created_at": "2025-11-18T14:30:00Z"
}
```
Webhooks in practice
Across our brands we use webhooks for:
Order processing
New order → webhook → n8n → fulfiller
At mate this exact path cut the daily workload from 4 hours to 15 minutes.
Customer service
New support request → webhook → n8n → AI triage → reply or escalation
That is how we answer around 65 percent of our support requests automatically. How the pre-sorting works is described in sorting support emails with AI.
Inventory
Stock below threshold → webhook → Slack alert
Returns
Return registered → webhook → create label → notify customer
Webhook vs. polling: when to use what?
| Aspect | Webhook | Polling |
|---|---|---|
| Speed | Immediate | Delayed |
| API calls | Few | Many |
| Complexity | Slightly higher | Simpler |
| Reliability | Very high, single events can get lost | Robust, misses nothing permanently |
Prefer a webhook when:
- Speed matters
- You expect many events
- The source system supports webhooks
Use polling when:
- No webhooks are available
- You only need to check occasionally
- As a fallback for missed webhooks
That last point matters more than it sounds. In practice we combine both. The webhook delivers the speed, an hourly polling reconciliation catches the rare cases where a webhook goes missing. A server restart at the wrong moment is enough for that. If you rely on webhooks only, you notice a lost order when the customer writes in.
Important: webhook security
Webhooks are URLs. In theory anyone can send data to them. So:
1. Verify webhook signatures
Shopify signs its webhooks. Your system should verify the signature.
2. HTTPS only
Never use HTTP URLs for webhooks. Always encrypted.
3. Watch the time limits
Answer fast (under 5 seconds). Otherwise the webhook counts as failed.
Your first step
You can try this today without risking anything:
1. Create a workflow in n8n with a "Webhook" node
2. Copy the test URL
3. Enter it in Shopify under Settings → Notifications → Webhooks for "order created"
4. Place a test order and look at the data that arrives
Nothing more happens. But you see for the first time, live, how your systems talk to each other.
Takeaway for founders
Webhooks = real-time automation.
When you pick a tool, ask: "does this support webhooks?" If it doesn't, you will always work with delays and lots of API calls.
Most modern tools (Shopify, Stripe, Klaviyo, etc.) support webhooks.
Questions? benedikt@flowhouse.ai