Cara Mengirim Notifikasi WhatsApp dari Google Form

Google Form dapat digunakan untuk mengumpulkan data pendaftaran, pemesanan, permintaan layanan, atau informasi pelanggan. Namun, hasil pengisian formulir secara default hanya tersimpan di Google Sheets dan notifikasi biasanya bergantung pada email.

Agar setiap pengisian Google Form dapat langsung memicu notifikasi WhatsApp, Google Apps Script dapat digunakan untuk membaca data respons dan mengirimkannya ke WhatsApp melalui API.

Dengan alur ini, setiap respons baru pada Google Form dapat diproses secara otomatis tanpa harus mengirim pesan secara manual.

Cara Mengirim Notifikasi WhatsApp dari Google Form

Cara Kerja Google Form Mengirim Notifikasi WhatsApp

Integrasi Google Form dengan WhatsApp dapat dibuat dengan menghubungkan Google Form, Google Sheets, Google Apps Script, dan API WhatsApp.

Alur sederhananya:

Google Form
     ↓
Google Sheets
     ↓
Google Apps Script
     ↓
API Whapi
     ↓
WhatsApp
`

Ketika pengguna mengisi Google Form, respons akan masuk ke Google Sheets. Trigger pada Google Apps Script kemudian menjalankan fungsi tertentu saat respons baru diterima.

Script mengambil data dari baris respons, menyusun isi pesan, lalu mengirim request ke API Whapi.

Dengan pendekatan ini, Google Form dapat digunakan sebagai pemicu untuk berbagai kebutuhan seperti:

  • Notifikasi pendaftaran
  • Notifikasi pesanan baru
  • Notifikasi permintaan layanan
  • Konfirmasi pengisian formulir
  • Notifikasi ke admin
  • Follow-up data pelanggan

Yang Dibutuhkan

Sebelum membuat integrasi, siapkan beberapa komponen berikut:

  1. Google Form yang sudah terhubung dengan Google Sheets.
  2. Google Apps Script untuk menjalankan proses otomatis.
  3. API key dari Whapi.
  4. Nomor WhatsApp tujuan.
  5. Device WhatsApp Whapi dalam kondisi terhubung.

Google Form tidak mengirim pesan WhatsApp secara langsung. Google Apps Script berfungsi sebagai penghubung antara data formulir dan API WhatsApp.

Hubungkan Google Form dengan Google Sheets

Buka Google Form yang digunakan untuk menerima data.

Masuk ke tab Responses, kemudian pilih ikon Google Sheets untuk membuat atau menghubungkan spreadsheet respons.

Setiap kali formulir dikirim, Google Sheets akan membuat baris baru berisi data respons.

Contohnya:

Timestamp Nama Nomor WhatsApp Produk
26/09/2026 10:15 Budi 628123456789 Paket A

Data inilah yang nantinya dibaca oleh Google Apps Script.

Buat Google Apps Script

Buka spreadsheet yang terhubung dengan Google Form.

Pilih:

Extensions > Apps Script

Kemudian buat fungsi untuk membaca data respons dan mengirim notifikasi WhatsApp.

Contoh sederhana:

function sendWhatsAppNotification(e) {
  const apiKey = 'API_KEY_WHAPI';
  const phone = '628123456789';

  const nama = e.namedValues['Nama'][0];
  const produk = e.namedValues['Produk'][0];

  const message =
    `Ada pengisian Google Form baru.\n\n` +
    `Nama: ${nama}\n` +
    `Produk: ${produk}`;

  const url = 'https://gate.whapi.cloud/messages/text';

  const payload = {
    apiKey: apiKey,
    phone: phone,
    message: message
  };

  const options = {
    method: 'post',
    payload: payload,
    muteHttpExceptions: true
  };

  const response = UrlFetchApp.fetch(url, options);

  Logger.log(response.getContentText());
}

Struktur kode tersebut terdiri dari beberapa bagian:

  • apiKey digunakan untuk autentikasi request ke API.
  • phone menentukan nomor WhatsApp penerima.
  • e.namedValues mengambil nilai dari kolom Google Form.
  • message menyusun isi notifikasi.
  • UrlFetchApp.fetch() mengirim request dari Google Apps Script ke API.

Endpoint dan parameter pengiriman perlu disesuaikan dengan dokumentasi API Whapi yang digunakan.

Mengambil Data dari Google Form

Google Apps Script menyediakan object event ketika fungsi dipanggil melalui trigger pengiriman formulir.

Contohnya:

function sendWhatsAppNotification(e) {
  const nama = e.namedValues['Nama'][0];
  const nomor = e.namedValues['Nomor WhatsApp'][0];
  const layanan = e.namedValues['Layanan'][0];

  const message =
    `Halo ${nama},\n\n` +
    `Data formulir sudah diterima.\n\n` +
    `Layanan: ${layanan}\n` +
    `Nomor: ${nomor}`;

  // proses pengiriman WhatsApp
}

e.namedValues memungkinkan script mengambil data berdasarkan nama kolom, sehingga tidak perlu bergantung pada posisi kolom secara manual.

Pastikan nama yang digunakan dalam script sama dengan nama pertanyaan atau header yang tersedia pada respons Google Form.

Mengirim Pesan WhatsApp melalui API

Setelah data formulir berhasil dibaca, Google Apps Script dapat mengirim request HTTP ke API Whapi.

Contoh menggunakan UrlFetchApp:

const url = 'https://gate.whapi.cloud/messages/text';

const payload = {
  apiKey: apiKey,
  phone: phone,
  message: message
};

const options = {
  method: 'post',
  payload: payload,
  muteHttpExceptions: true
};

const response = UrlFetchApp.fetch(url, options);

Logger.log(response.getContentText());

API kemudian memproses request tersebut dan mengirim pesan ke WhatsApp yang ditentukan.

Untuk detail parameter request dan format respons, gunakan dokumentasi pengiriman pesan Whapi:

Dokumentasi API Pengiriman Pesan Whapi

Membuat Trigger Otomatis

Script tidak cukup hanya dibuat. Fungsi harus dijalankan otomatis setiap kali Google Form menerima respons baru.

Di Google Apps Script, buka menu Triggers atau ikon jam pada sidebar.

Kemudian buat trigger dengan pengaturan:

  1. Choose which function to run: sendWhatsAppNotification
  2. Choose which deployment should run: Head
  3. Select event source: From spreadsheet
  4. Select event type: On form submit

Simpan trigger tersebut.

Pada pertama kali menjalankan trigger, Google akan meminta izin akses. Berikan izin yang diperlukan agar Apps Script dapat membaca spreadsheet dan melakukan request HTTP.

Setelah trigger aktif, prosesnya berjalan otomatis:

User mengisi Google Form
        ↓
Form response masuk ke Google Sheets
        ↓
Trigger "On form submit" aktif
        ↓
Apps Script membaca data
        ↓
Apps Script membuat pesan
        ↓
Request dikirim ke API Whapi
        ↓
WhatsApp menerima notifikasi

Contoh Notifikasi WhatsApp dari Google Form

Misalnya Google Form digunakan untuk pendaftaran konsultasi.

Data yang dikirim:

Nama: Andi
Nomor: 628123456789
Layanan: Konsultasi Website

Script dapat mengubahnya menjadi:

Pendaftaran Baru

Nama: Andi
Layanan: Konsultasi Website

Data pendaftaran telah masuk melalui Google Form.

Notifikasi tersebut dapat dikirim ke nomor admin setiap kali terdapat pendaftaran baru.

Untuk kebutuhan yang berbeda, format pesan dapat disesuaikan dengan data yang tersedia di Google Form.

Mengirim Notifikasi ke Nomor dari Form

Selain mengirim notifikasi ke nomor admin yang tetap, nomor WhatsApp juga dapat diambil dari respons formulir.

Contohnya:

function sendWhatsAppNotification(e) {
  const apiKey = 'API_KEY_WHAPI';

  const nama = e.namedValues['Nama'][0];
  const phone = e.namedValues['Nomor WhatsApp'][0];
  const layanan = e.namedValues['Layanan'][0];

  const message =
    `Halo ${nama},\n\n` +
    `Terima kasih. Pendaftaran untuk ${layanan} sudah diterima.`;

  const url = 'https://gate.whapi.cloud/messages/text';

  const payload = {
    apiKey: apiKey,
    phone: phone,
    message: message
  };

  const options = {
    method: 'post',
    payload: payload,
    muteHttpExceptions: true
  };

  const response = UrlFetchApp.fetch(url, options);

  Logger.log(response.getContentText());
}

Dengan pola ini, satu Google Form dapat digunakan untuk mengirim pesan kepada masing-masing pengisi formulir.

Contohnya:

Google Form
    ↓
Data nama + nomor WhatsApp
    ↓
Google Apps Script
    ↓
Nomor WhatsApp dari respons
    ↓
API Whapi
    ↓
Pesan konfirmasi

Menangani Error Pengiriman

Integrasi otomatis perlu menangani kemungkinan request gagal.

Gunakan try...catch untuk menangkap error pada saat request dilakukan:

try {
  const response = UrlFetchApp.fetch(url, options);

  const statusCode = response.getResponseCode();
  const responseBody = response.getContentText();

  Logger.log(statusCode);
  Logger.log(responseBody);

} catch (error) {
  Logger.log('Gagal mengirim WhatsApp: ' + error.message);
}

Response juga dapat diperiksa berdasarkan HTTP status code.

Contoh:

const response = UrlFetchApp.fetch(url, options);
const statusCode = response.getResponseCode();

if (statusCode >= 200 && statusCode < 300) {
  Logger.log('Pesan berhasil dikirim');
} else {
  Logger.log('Pengiriman gagal: ' + response.getContentText());
}

Pemeriksaan seperti ini membantu menemukan masalah ketika API key salah, device belum terhubung, nomor tujuan tidak valid, atau request tidak sesuai dengan format API.

Menyimpan API Key dengan Lebih Aman

API key sebaiknya tidak ditulis langsung di dalam kode yang berpotensi dibagikan.

Untuk implementasi yang lebih terstruktur, nilai konfigurasi dapat disimpan menggunakan Script Properties pada Google Apps Script.

Contohnya:

function sendWhatsAppNotification(e) {
  const properties = PropertiesService.getScriptProperties();

  const apiKey = properties.getProperty('WHAPI_API_KEY');

  // proses pengiriman pesan
}

API key kemudian dapat disimpan sebagai property dengan nama:

WHAPI_API_KEY

Dengan pendekatan tersebut, konfigurasi API tidak perlu ditulis berulang kali pada setiap fungsi.

Contoh Integrasi Lengkap

Berikut contoh sederhana yang menggabungkan pembacaan data Google Form, penyusunan pesan, dan pengiriman WhatsApp:

function sendWhatsAppNotification(e) {
  const properties = PropertiesService.getScriptProperties();
  const apiKey = properties.getProperty('WHAPI_API_KEY');

  const nama = e.namedValues['Nama'][0];
  const layanan = e.namedValues['Layanan'][0];
  const phone = e.namedValues['Nomor WhatsApp'][0];

  const message =
    `Halo ${nama},\n\n` +
    `Data pendaftaran sudah diterima.\n\n` +
    `Layanan: ${layanan}\n\n` +
    `Terima kasih.`;

  const url = 'https://gate.whapi.cloud/messages/text';

  const payload = {
    apiKey: apiKey,
    phone: phone,
    message: message
  };

  const options = {
    method: 'post',
    payload: payload,
    muteHttpExceptions: true
  };

  try {
    const response = UrlFetchApp.fetch(url, options);

    Logger.log(
      'Status: ' +
      response.getResponseCode() +
      ' | Response: ' +
      response.getContentText()
    );

  } catch (error) {
    Logger.log('Gagal mengirim WhatsApp: ' + error.message);
  }
}

Kode tersebut dapat dikembangkan sesuai struktur kolom pada Google Form.

Misalnya data formulir memiliki:

Nama
Nomor WhatsApp
Email
Produk
Jumlah
Catatan

Maka setiap nilai dapat dibaca melalui e.namedValues dan dimasukkan ke dalam format pesan yang diperlukan.

Hal yang Perlu Diperhatikan

Beberapa hal perlu diperiksa ketika membuat integrasi Google Form dengan WhatsApp.

Pastikan Nama Kolom Sesuai

Jika script menggunakan:

e.namedValues['Nomor WhatsApp'][0]

maka nama field harus sesuai dengan header yang tersedia pada data respons.

Perubahan nama pertanyaan atau kolom dapat menyebabkan data tidak ditemukan.

Pastikan Device WhatsApp Terhubung

API membutuhkan device WhatsApp yang aktif agar pesan dapat dikirim.

Jika device terputus, request dapat mengalami kegagalan meskipun Google Form dan Apps Script tetap berjalan.

Validasi Nomor WhatsApp

Nomor yang berasal dari Google Form sebaiknya divalidasi sebelum dikirim ke API.

Format nomor juga perlu disesuaikan dengan format yang diterima API.

Jangan Menyimpan API Key di Google Form

API key merupakan kredensial akses API. Simpan pada konfigurasi Apps Script dan hindari memasukkannya ke pertanyaan Google Form atau data spreadsheet yang dapat diakses banyak pengguna.

Contoh Penggunaan Google Form dan WhatsApp

Integrasi ini dapat digunakan pada berbagai alur sederhana.

Pendaftaran

Google Form
→ Pendaftaran masuk
→ WhatsApp admin menerima notifikasi

Konfirmasi Pengguna

Google Form
→ Data nomor WhatsApp diterima
→ WhatsApp mengirim konfirmasi

Permintaan Layanan

Form permintaan layanan
→ Data masuk ke Google Sheets
→ WhatsApp admin menerima detail permintaan

Pesanan

Form pemesanan
→ Data pesanan masuk
→ Apps Script memproses data
→ WhatsApp mengirim notifikasi

Google Form berfungsi sebagai sumber data dan trigger, sedangkan Google Apps Script menangani logika integrasi sebelum request diteruskan ke API WhatsApp.

Kesimpulan

Cara mengirim notifikasi WhatsApp dari Google Form dapat dilakukan dengan menghubungkan Google Form ke Google Sheets, kemudian menggunakan Google Apps Script sebagai penghubung ke API WhatsApp.

Alur dasarnya adalah:

Google Form
↓
Google Sheets
↓
Google Apps Script
↓
API Whapi
↓
WhatsApp

Dengan trigger On form submit, proses pengiriman dapat berjalan otomatis setiap kali terdapat respons baru. Data seperti nama, nomor WhatsApp, produk, layanan, atau informasi lainnya dapat diambil dari respons formulir dan digunakan untuk membentuk pesan secara dinamis.

Mekanisme ini cocok untuk membangun notifikasi pendaftaran, konfirmasi formulir, pemberitahuan pesanan, maupun notifikasi internal tanpa perlu membuat backend khusus hanya untuk menangani event dari Google Form.

Scroll to Top