Bookinda + n8n self-hosted automation
n8n nyitott forráskódú automation platform — saját szerverre telepítve
Bookinda + n8n integráció
n8n egy nyílt forráskódú, self-hosted automation platform (mint a Zapier vagy Make, csak nálad fut és nem fizetsz tranzakcióért). Bookinda webhook-jaival ugyanúgy működik mint a többi.
Mikor érdemes n8n-t választani
- Adatvédelem: ha a customer adatok ne hagyják el a saját infrádat
- Volumen: ha sok eventet dolgozol fel és Zapier/Make havidíj > self-host költség
- Custom logic: n8n JavaScript node-ok (Function node, Code node) — bonyolultabb logikát tudsz írni mint Zapier-ben
- Integráció saját rendszerrel: közvetlen DB hozzáférés, internal API-k
Setup
1. n8n telepítés (ha még nincs)
# Docker, gyors módja
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
Vagy production setup: https://docs.n8n.io/hosting/
2. n8n: új workflow + Webhook trigger node
- + New workflow
- Add node → Webhook (trigger)
- HTTP Method: POST
- Path: pl.
/bookinda - Response Mode: Immediately (200 OK back, async processing)
- Activate workflow (csak active workflow webhook URL-je él)
- Másold a Production URL-t (pl.
https://n8n.te.com/webhook/bookinda)
3. Bookinda oldalon: új végpont
- Manager UI → Beállítások → Integrációk → Webhookok → + Új végpont
- URL: n8n production URL
- Események: amit szeretnél
- Létrehozás
4. n8n: aláírás-ellenőrzés
A Webhook node ad neked headers + body-t. Add hozzá egy Code node-ot:
const crypto = require('crypto');
const SECRET = $env.BOOKINDA_WEBHOOK_SECRET; // n8n environment-ből
const sigHeader = $input.item.json.headers['x-bookinda-signature'];
const body = JSON.stringify($input.item.json.body);
const parts = Object.fromEntries(sigHeader.split(',').map(p => p.split('=')));
const t = parseInt(parts.t, 10);
const v1 = parts.v1;
// Replay window: 5 min
if (Math.abs(Math.floor(Date.now() / 1000) - t) > 300) {
throw new Error('replay window expired');
}
const expected = crypto.createHmac('sha256', SECRET)
.update(`${t}.${body}`)
.digest('hex');
if (expected !== v1) {
throw new Error('invalid signature');
}
return $input.item;
5. További n8n node-ok
- Switch node branch-elésre event-típus alapján
- Postgres / MySQL node — direkt DB-be írás
- HTTP Request node — bármilyen REST API hívás
- Email Send node — saját SMTP-vel email
- Slack node — Slack üzenet
- Code node — bármilyen JavaScript
Példa workflow
- Webhook (Trigger) — Bookinda webhook
- Code node — HMAC verify
- Switch — branch
eventmező alapján - Branch
appointment.created:- Postgres →
INSERT INTO bookings ... - Slack → "Új foglalás: {{customer.firstName}}"
- Postgres →
- Branch
customer.created:- HTTP Request → POST a saját CRM-edre
- Email → "Új ügyfél" admin notification
Miért n8n vs Zapier/Make
| n8n | Zapier | Make | |
|---|---|---|---|
| Hosting | self-hosted | SaaS | SaaS |
| Költség 10k task/hó | infrastructure (~$20/hó) | $30/hó | $9/hó |
| Adatvédelem | teljesen nálad | náluk | náluk |
| Custom code | nagyon erős | korlátos | közepes |
| Setup nehézség | közepes (Docker) | 0 | 0 |
| App-katalógus | ~400 | 5000+ | 1000+ |
#webhook#n8n#self-hosted#open-source#automation#docker
