---
title: "Restoran İçin n8n ile Rezervasyon ve Sipariş Otomasyonu"
description: "n8n ile restoran rezervasyon ve sipariş akışını otomasyona bağlayın: form → takvim → hatırlatma → AI yanıt. Adım adım kurulum, gerçek node örnekleriyle."
canonical: https://agentroost.app/tr/blog/restoran-rezervasyon-otomasyon-n8n
date: 2026-04-29T20:00:00Z
---

[Canonical URL](https://agentroost.app/tr/blog/restoran-rezervasyon-otomasyon-n8n)

# Restoran ve Kafeler İçin n8n ile Rezervasyon ve Sipariş Otomasyonu

Cuma akşamı 19:00'dan önce telefon çalıyor, WhatsApp'ta mesaj birikmiş, Instagram DM'de de iki masa talebi var. Bunları not defterine yazan, takvime aktaran, onay mesajı gönderen hep aynı kişi: ya siz, ya garsonunuz. İş yoğunlaşınca rezervasyonlar kaybolur, müşteriler yanıtsız kalır.

n8n bu tekrar eden adımları tamamen otomatik yapabilir: formu alır, takvime yazar, müşteriye onay gönderir, gün gelince hatırlatma atar — ve müşterinin özel isteklerine AI ile taslak yanıt hazırlar. Bunu bir kez kurarsınız, sonra akış kendi kendine çalışır.

Bu yazıda gerçek bir akış kuracağız. Hangi node'lar kullanılır, hangi alanlara ne yazılır, olası tuzaklar neler — hepsi somut örneklerle.

---

## Akışın Genel Yapısı

Kuracağımız otomasyon dört ana adımdan oluşuyor:

1. **Müşteri rezervasyon talebini bir form veya webhook üzerinden gönderir.**
2. **n8n talebi alır, Google Takvim'e rezervasyonu ekler.**
3. **Müşteriye otomatik onay/hatırlatma mesajı gider (e-posta veya Telegram).**
4. **Özel bir istek varsa AI node'u taslak yanıt üretir, siz onaylayıp gönderirsiniz.**

---

## Adım 1 — Tetikleyiciyi Kurun: Webhook Node

Rezervasyon taleplerini toplayan bir Google Form, Tally veya Typeform'unuz varsa, "webhook gönder" seçeneğini etkinleştirin. Yoksa n8n'in kendi form tetikleyicisini kullanabilirsiniz.

n8n canvas'ında **Webhook** node'unu ekleyin:

- **HTTP Method:** `POST`
- **Path:** `rezervasyon` (otomatik URL oluşturur, örn. `https://sizin-id.agentroost.app/webhook/rezervasyon`)
- **Authentication:** şimdilik `None` (sonra Header Auth ekleyebilirsiniz)

Node'u kaydedin ve "Test URL"yi kopyalayın. Bu adresi form aracınızın "webhook URL" alanına yapıştırın. Artık her form gönderiminde bu node tetiklenir ve şu tipik bir JSON gelir:

```json
{
  "ad": "Ayşe Kaya",
  "tarih": "2026-06-20",
  "saat": "19:30",
  "kisi_sayisi": 4,
  "istek": "Pencere kenarı tercih ediyoruz, glutensiz menü lazım."
}
```

---

## Adım 2 — Verileri Hazırlayın: Set Node

Webhook'tan gelen ham veriyi Google Takvim'in beklediği formata çevirmek için **Set** node'u ekleyin. Bu node gereksiz alanları temizler ve yeniden adlandırır.

Eklenecek alanlar:

| Alan adı | Değer (Expression) |
|---|---|
| `baslik` | `{{ $json.ad }} – {{ $json.kisi_sayisi }} kişi` |
| `baslangic` | `{{ $json.tarih }}T{{ $json.saat }}:00+03:00` |
| `bitis` | `{{ $DateTime.fromISO($json.tarih + "T" + $json.saat + ":00+03:00").plus({hours: 2}).toISO() }}` |
| `aciklama` | `{{ $json.istek }}` |

Bitiş saatini ortalama 2 saat olarak hesaplıyoruz; restoranınıza göre değiştirebilirsiniz.

---

## Adım 3 — Takvime Yazın: Google Calendar Node

**Google Calendar** node'unu ekleyin:

- **Resource:** `Event`
- **Operation:** `Create`
- **Calendar:** Rezervasyon takviminizi seçin (önce OAuth bağlantısı kurmanız gerekir)
- **Title:** `{{ $json.baslik }}`
- **Start:** `{{ $json.baslangic }}`
- **End:** `{{ $json.bitis }}`
- **Description:** `{{ $json.aciklama }}`

> **İpucu:** Ayrı bir "Müşteriler" takvimi oluşturun, ana şirket takviminizi karıştırmayın. Ekip üyelerini bu takvime okuyucu olarak ekleyebilirsiniz.

Çakışma kontrolü için akışa bir **IF** node'u ekleyip Google Calendar'ın "Freebusy" sorgusunu kullanabilirsiniz — istenen saat dolu ise müşteriye alternatif önerin.

---

## Adım 4 — Onay Mesajı Gönderin: Gmail veya Telegram Node

Rezervasyon onaylandıktan hemen sonra müşteriye bir mesaj gönderin. İki seçenek:

**E-posta (Gmail node):**
- **To:** `{{ $('Webhook').item.json.email }}`
- **Subject:** `Rezervasyonunuz onaylandı – {{ $json.tarih }} {{ $json.saat }}`
- **Body:**
  ```
  Merhaba {{ $('Webhook').item.json.ad }},

  {{ $json.tarih }} tarihinde saat {{ $json.saat }} için {{ $json.kisi_sayisi }} kişilik
  rezervasyonunuz alındı. Sizi bekliyoruz!

  Değişiklik için bize ulaşın: +90 212 XXX XX XX
  ```

**Telegram (Telegram node):** Müşterinin telefon numarasına veya grup sohbetinize mesaj atabilirsiniz. İşletmenizin Telegram botunu bağlayın, `Chat ID` alanını müşterinin ID'siyle doldurun.

---

## Adım 5 — Hatırlatma Gönderin: Schedule Trigger

Rezervasyon günü sabahı otomatik hatırlatma için ikinci bir küçük akış kurun:

1. **Schedule Trigger** node'u: `Her gün 09:00`
2. **Google Calendar node** → `Get All Events` → Bugünün rezervasyonlarını listele (filter: tarih = bugün)
3. **Split In Batches** node'u ile her rezervasyonu ayrı ayrı işle
4. **Gmail / Telegram node'u** → `"Bugün saat X'te sizi bekliyoruz!"` mesajı gönder

Schedule Trigger ayarı:
- **Trigger Interval:** `Days`
- **Days Between Triggers:** `1`
- **Trigger at Hour:** `9`

---

## Adım 6 — AI ile Özel İsteklere Yanıt Taslağı

Müşteri `istek` alanına `"glutensiz menü, pencere kenarı, doğum günü sürprizi"` gibi özel notlar bırakmışsa, her birini tek tek cevaplamak vakit alır.

**IF** node'u ekleyin: `{{ $json.istek }}` alanı boş değilse → **AI Agent** node'una yönlendir.

**AI Agent** node'u ayarları:
- **System Prompt:**
  ```
  Sen İstanbul'da bir restoranın müşteri hizmetleri asistanısın.
  Müşteriyle samimi, kısa ve Türkçe iletişim kuruyorsun.
  Verilen özel isteği kabul et ve restoran adına nazik bir taslak yanıt yaz.
  ```
- **User Message:** `{{ $json.istek }}`
- **Model:** Hesabınıza dahil modellerden birini seçin

Çıktı bir **Set** node'una aktarılır ve oradan size (sahibine) bir e-posta veya Telegram mesajı olarak gelir. Taslağı okur, beğenirseniz "Onayla" butonuna basarsınız — akış müşteriye gönderir.

AgentRoost'ta bu AI node'u için harici bir API anahtarı almanıza gerek yok. **LLM kredisi aboneliğinize dahil**; node ayarlarını yaptıktan sonra doğrudan çalışır.

---

## Bu Akışı AgentRoost'ta Nasıl Çalıştırırsınız?

Kendi sunucunuza Docker kurmak, SSL sertifikası almak, port açmak — bunların hiçbiri gerekmiyor.

1. [AgentRoost'a kayıt olun](/tr/agents/n8n) — e-posta, Google veya Microsoft hesabıyla.
2. Framework olarak **n8n** seçin, örneğinize bir ad verin (örn. `restoran-rezervasyon`).
3. Yaklaşık 2 dakika içinde `https://restoran-rezervasyon.agentroost.app` adresinde kendi n8n editörünüz açılır.
4. Yukarıdaki adımları canvas'ta uygulayın. Webhook URL'niz zaten genel erişime açık ve HTTPS'li — form aracınıza yapıştırın, test edin.
5. AI node'u için API anahtarı girmenize gerek yok; kredi hesabınıza dahil.

Her şey sizin örneğinizde çalışır. Workflow'larınızı, çalıştırma geçmişinizi ve müşteri verilerinizi yalnızca siz görürsünüz.

Planlar aylık **$19,99'dan** başlar; yıllık taahhüt yoktur. Memnun kalmazsanız 14 gün içinde tam iade.

[Planları karşılaştırın →](/tr/pricing)

---

## Sık Yapılan Hatalar ve Çözümleri

**Tarih formatı uyuşmazlığı:** Google Calendar ISO 8601 bekler (`2026-06-20T19:30:00+03:00`). Formdaki tarih `20/06/2026` gibi geliyorsa Set node'unda `$DateTime.fromFormat(...)` ile dönüştürün.

**Webhook'a ulaşamıyorum:** n8n'de önce "Test URL"ü etkinleştirmeniz gerekir (node açıkken "Listen for Test Event"). Üretime almadan önce bu mod aktif olmalı.

**Gmail izin hatası:** Google, OAuth bağlantısı kurarken "Bu uygulama doğrulanmamış" uyarısı gösterir. "Gelişmiş" seçeneğine tıklayıp devam edin — kendi akışınız için bu normaldir.

**AI node boş çıktı üretiyor:** System Prompt çok kısıtlayıcıysa model yanıt vermeyebilir. Prompt'u sade tutun; test ederken "Execute Node" ile çıktıyı doğrulayın.

---

Rezervasyon sürecinizi bir kez otomasyona bağladığınızda, haftalık saatlerce süren tekrar eden iş ortadan kalkar. Müşterileriniz anında onay alır, siz de yalnızca gerçekten karar gerektiren işlere odaklanırsınız.
