FaizBlog LogoFaizBlog
Back to all articles
Google Apps ScriptReminderInvoiceOtomatisasiTrigger

Cara Bikin Reminder Tagihan & Deadline Otomatis di Google Sheets

Panduan lengkap bikin script reminder invoice otomatis H-7, H-3, H-1 dengan Google Apps Script. Cocok untuk follow-up tagihan customer, deadline proyek, dan perpanjangan langganan.

AI Insights

Generate a summary and suggested tags for this post.

Salah satu kasus paling umum di kantor: customer telat bayar atau karyawan lupa deadline. Kalau kamu masih ingatkan mereka satu per satu manual, itu 30 menit sehari terbuang.

Solusinya: script reminder otomatis yang kirim email H-7, H-3, H-1 tanpa kamu sentuh — cukup update tanggal jatuh tempo di Google Sheets, sisanya jalan sendiri.

Kapan reminder dikirim

Kenapa Butuh Reminder Otomatis?

ManualOtomatis (Apps Script)
Buka Sheets → cek satu-satuScript cek semua baris otomatis
Copy nama, email, tanggal → ketik pesanTemplate dengan placeholder auto-isi
Kirim 20-100 email manual = 1-2 jamSelesai dalam < 30 detik
Lupa = customer telat bayarSelalu tepat waktu, 7 hari/minggu

Langkah 1: Struktur Data di Sheets

Contoh untuk reminder tagihan invoice:

Nama KlienEmailJumlahJatuh TempoStatus
Toko Abudi@mail.comRp1.250.0002025-05-25Belum Lunas
Toko Bsiti@mail.comRp850.0002025-05-21Belum Lunas
Toko Ccitra@mail.comRp2.100.0002025-05-28Lunas

Kolom Status wajib — biar script skip yang sudah lunas.

Langkah 2: Script Reminder

Buka Extensions → Apps Script → paste:

function reminderTagihan() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Tagihan");
  const data = sheet.getDataRange().getValues();
  const today = new Date();

  for (let i = 1; i < data.length; i++) {
    const [nama, email, jumlah, jatuhTempo, status] = data[i];
    if (status === "Lunas") continue;
    if (!email) continue;

    const dl = new Date(jatuhTempo);
    const selisih = Math.ceil((dl - today) / (1000 * 60 * 60 * 24));

    let subject = "", isi = "";
    if (selisih === 7) {
      subject = "Pengingat: Invoice Jatuh Tempo 7 Hari Lagi";
      isi = `Halo ${nama}, invoice sebesar ${jumlah} akan jatuh tempo pada ${jatuhTempo}. Mohon segera dilakukan pembayaran.`;
    } else if (selisih === 3) {
      subject = "Pengingat: Invoice Jatuh Tempo 3 Hari Lagi";
      isi = `Halo ${nama}, invoice sebesar ${jumlah} jatuh tempo pada ${jatuhTempo}. Terima kasih atas perhatiannya.`;
    } else if (selisih === 1) {
      subject = "PENTING: Invoice Jatuh Tempo Besok";
      isi = `Halo ${nama}, ini pengingat FINAL bahwa invoice ${jumlah} jatuh tempo BESOK (${jatuhTempo}). Mohon segera dibayar.`;
    } else if (selisih < 0) {
      subject = "Notifikasi: Invoice Sudah Lewat Jatuh Tempo";
      isi = `Halo ${nama}, invoice ${jumlah} sudah melewati jatuh tempo (${jatuhTempo}). Mohon segera dilunasi.`;
    } else {
      continue;
    }

    GmailApp.sendEmail(email, subject, isi);
    Utilities.sleep(1000);
  }
}

Langkah 3: Pasang Trigger Harian

Preview reminder di Sheets & email

Supaya script jalan tiap pagi otomatis:

  1. Di editor → ikon ⏰ TriggersAdd Trigger.
  2. Fungsi: reminderTagihan.
  3. Event source: Time-driven → Day timer → 7am-8am.
  4. Save.

Selesai. Tiap hari jam 7 pagi, semua customer yang H-7, H-3, H-1, atau telat akan otomatis dapat email — tanpa kamu buka laptop.

Kasus Nyata

4 pemakaian reminder

Selain tagihan, template yang sama bisa dipakai untuk:

  • Deadline proyek — reminder ke tim H-3 sebelum deliverable.
  • Perpanjangan langganan — SaaS, domain, hosting.
  • Reminder meeting — H-1 sebelum meeting penting.
  • Reminder dokumen — SIM/paspor/STNK yang mau expired.
  • Reminder pembayaran gaji freelance — H-1 sebelum tanggal transfer.

Tips Menghindari Masuk Spam

Karena kamu kirim email berulang dari address yang sama, ada risiko masuk spam folder. Tips:

TipsKenapa Efektif
Subject spesifik ("Pengingat: Invoice #INV-001")Jangan pakai kata "URGENT!!!" atau CAPS penuh
Kirim < 30 email/menitBeri Utilities.sleep(2000) di antara loop
Personalisasi minimal 1 field (nama)Gmail lebih toleran email personalisasi
Reply-to email validPakai email yang bisa dibalas customer
Signature profesionalTambah tanda tangan HTML dengan nama & jabatan

Kombinasi dengan WhatsApp

Untuk pengingat via WhatsApp (lebih tinggi open rate-nya), kombinasikan dengan API pihak ketiga seperti Fonnte, Wablas, atau Wapi (UrlFetchApp):

UrlFetchApp.fetch("https://api.fonnte.com/send", {
  method: "post",
  headers: { "Authorization": "TOKEN_KAMU" },
  payload: {
    target: "628123456789",
    message: `Halo ${nama}, invoice Rp${jumlah} jatuh tempo besok. Mohon segera dibayar.`
  }
});

Kesimpulan

Dengan sekali setup 20 menit, kamu punya sistem reminder otomatis yang:

  • Kirim reminder H-7, H-3, H-1 ke ratusan customer.
  • Berjalan tiap pagi tanpa harus dibuka.
  • Personalisasi tiap pesan (nama, jumlah, tanggal).
  • Gratis — tanpa langganan Zoho, Xero, atau tool CRM berbayar.

Cash flow kantor jadi lebih sehat karena tagihan selalu ter-follow-up tepat waktu. Tidak ada lagi customer bilang "Oh, saya lupa!" 💸