Sinkronisasi Google Sheets 2-Arah via Webhook & Penanganan 302 Redirect
Fitur Sinkronisasi Google Sheets mengirimkan setiap respon formulir RSVP langsung ke baris Google Spreadsheet secara real-time menggunakan Google Apps Script Web App, menangani pengalihan HTTP 302 Redirect secara otomatis di sisi server tanpa memerlukan biaya langganan Zapier.
Memahami Kebutuhan & Masalah Lapangan
Google Sheets adalah alat kolaborasi paling populer bagi keluarga pengantin dan vendor wedding organizer untuk memeriksa data kehadiran, membagi nomor meja prasmanan, dan menghitung total pax katering.
Namun, mengintegrasikan website WordPress dengan Google Sheets sering menemui kendala teknis:
- Layanan pihak ketiga seperti Zapier atau Make membatasi kuota tugas gratis (hanya 100 tasks/bulan), sehingga vendor harus membayar biaya langganan bulanan mahal ketika musim pesta pernikahan tiba.
- Ketika membuat webhook kustom ke Google Apps Script, peramban dan server sering gagal mengirim data karena Google memberlakukan HTTP 302 Found Redirect ke subdomain internal
script.googleusercontent.com. Library webhook murahan biasanya menganggap redirect ini sebagai error dan menghentikan pengiriman. - Kegagalan sinkronisasi menyebabkan data tamu tercecer dan tidak tercatat di spreadsheet keluarga pengantin.
WDP RSVPKit memberikan solusi mutakhir dengan menyertakan Live Apps Script Generator bawaan di dashboard admin serta penanganan native HTTP 302 Redirect yang menjamin data selalu sampai ke spreadsheet dengan mulus.
Prasyarat Sebelum Memulai
Sebelum mengonfigurasi integrasi Google Sheets:
- Plugin WDP RSVPKit v1.4.0 aktif berlisensi resmi.
- Memiliki akun Google aktif (Gmail / Google Workspace).
- Membuat satu Google Spreadsheet kosong untuk menampung data tamu pernikahan.
Pokok Bahasan & Konfigurasi Teknis
1. Live Google Apps Script Generator di WP-Admin
RSVPKit mempermudah pembuatan script tanpa perlu mengetik kode JavaScript manual:
- Buka WP-Admin > menu WDP RSVPKit > Settings > tab Google Sheets.
- Sistem secara otomatis men-generate script Google Apps Script yang siap disalin.
- Buka spreadsheet target Anda di Google Docs.
- Klik menu Extensions > Apps Script.
- Hapus kode bawaan, lalu tempel (paste) kode yang telah disalin dari dasbor RSVPKit.
2. Panduan Deploy Web App: Akses "Anyone"
Langkah krusial pada editor Google Apps Script:
- Klik tombol biru Deploy di sudut kanan atas > pilih New deployment.
- Klik ikon gerigi di sebelah Select type > pilih Web app.
- Isi konfigurasi berikut:
- Description:
WDP RSVPKit Live Webhook - Execute as:
Me ([email protected]) - Who has access:
Anyone(Wajib dipilih Anyone, BUKAN 'Only myself' atau 'Anyone with Google account').
- Klik Deploy, lalu berikan izin akses (Authorize access) saat diminta.
- Salin URL Web App yang berakhiran
/exec. - Kembali ke dasbor admin RSVPKit, tempelkan URL tersebut pada kolom Google Webhook URL, lalu klik Save Settings.
3. Penanganan Teknis HTTP 302 Redirect di Server WordPress
Saat WordPress mengirimkan data ke URL Apps Script, Google merespon dengan header:
HTTP/1.1 302 Found
Location: https://script.googleusercontent.com/macros/echo?user_content_key=...
WDP RSVPKit menggunakan konfigurasi cURL internal wp_remote_post yang telah dioptimasi:
$response = wp_remote_post($webhook_url, [
'method' => 'POST',
'timeout' => 15,
'redirection' => 5, // Mengikuti 302 Redirect secara otomatis hingga 5 lompatan
'httpversion' => '1.1',
'blocking' => true,
'headers' => ['Content-Type' => 'application/json'],
'body' => wp_json_encode($payload),
]);
Dengan pengaturan parameter 'redirection' => 5, server WordPress tidak membatalkan transmisi, melainkan meneruskan data ke lokasi baru hingga Google mengembalikan status 200 OK (SUCCESS).
4. Tabel Parameter Pemetaan Kolom Spreadsheet
| Posisi Kolom | Header Kolom di Sheets | Tipe Data yang Ditransmisikan |
|---|---|---|
| Kolom A | Timestamp | Tanggal & jam tamu mengirimkan konfirmasi |
| Kolom B | Nama Tamu | Nama lengkap tamu ({guest_name}) |
| Kolom C | Status Kehadiran | Akan Hadir / Tidak Hadir |
| Kolom D | Sesi Acara | Sesi yang dipilih (Akad, Resepsi Siang, dll.) |
| Kolom E | Jumlah Pax | Angka jumlah rombongan keluarga |
| Kolom F | Stiker Reaksi | Kode stiker (SAH, DOA, LOVE, dll.) |
| Kolom G | Doa & Ucapan | Pesan ucapan doa restu tamu |
Studi Kasus Nyata: Pernikahan Andy & Zhea
Keluarga besar Andy & Zhea membutuhkan rekapitulasi data tamu yang dapat diakses bersama oleh 4 pihak: keluarga mempelai pria, keluarga mempelai wanita, manajer katering hotel, dan tim Wedding Organizer:
- Tantangan: Membagikan akses admin WordPress ke semua pihak sangat berisiko membocorkan data sensitif website.
- Penerapan: Vendor menghubungkan RSVPKit ke satu master Google Spreadsheet. Tautan spreadsheet dengan hak akses Viewer dibagikan kepada keluarga dan tim katering.
- Hasil: Setiap kali tamu mengonfirmasi hadir di website, baris baru muncul di spreadsheet dalam waktu 2 detik. Tim katering dapat memantau penambahan porsi secara langsung dari smartphone mereka tanpa pernah menyentuh admin WordPress.
Tips & Praktik Terbaik
GMT+07:00 (Jakarta) agar kolom timestamp selaras dengan jam lokal Indonesia.