Chatbot WA untuk Sistem Pre-Order Otomatis

Setup chatbot WhatsApp untuk pre-order. Kuota, deadline, konfirmasi DP otomatis. Cocok untuk PO makanan, fashion, custom item

Chatbot WA untuk Sistem Pre-Order Otomatis
Chatbot WA untuk Sistem Pre-Order Otomatis

Pre-order manual = Ribet!

Catat siapa yang PO, kuota berapa, sudah bayar DP belum, deadline kapan... Semua bisa di-automate dengan chatbot!


Bisnis yang Cocok untuk PO Bot

🍰 Makanan homemade (kue, frozen food)
👗 Fashion custom/made to order
🎁 Merchandise & custom item
📦 Import item / group order
🌱 Produk pertanian (buah, sayur)
🎮 Gadget & elektronik pre-launch

Fitur PO Bot

1. Info PO & Kuota Real-time

Customer: "po"

Bot: 📢 PRE-ORDER BATCH #15

🍰 Brownies Premium
   Harga: Rp 75.000/box
   
📊 Kuota: 45/50 (sisa 5 slot!)
📅 Deadline PO: 20 Jan 2026
📦 Estimasi kirim: 25-27 Jan 2026

💳 DP: Rp 30.000 (sisanya saat pickup/kirim)

Mau PO? Ketik FORMAT

2. Format Order Standar

Customer: "format"

Bot: 📝 FORMAT PRE-ORDER:

NAMA:
NO HP:
ALAMAT: (jika kirim)
PESANAN: [nama item] x [jumlah]
PICKUP/KIRIM:

Contoh:
NAMA: Siti Aminah
NO HP: 081234567890
ALAMAT: Jl. Merdeka 10, Jakarta
PESANAN: Brownies Premium x 2
KIRIM

Kirim format untuk konfirmasi!

3. Konfirmasi & Invoice DP

Bot: ✅ PRE-ORDER DITERIMA!

━━━━━━━━━━━━━━━━━━
📋 PO #15-023
👤 Siti Aminah
📱 081234567890

📦 Pesanan:
- Brownies Premium x 2 = Rp 150.000

🚚 Metode: KIRIM
📍 Jl. Merdeka 10, Jakarta
   Ongkir: Rp 15.000

━━━━━━━━━━━━━━━━━━
💰 TOTAL: Rp 165.000
💳 DP (min 50%): Rp 82.500
💵 Pelunasan: Rp 82.500
━━━━━━━━━━━━━━━━━━

Transfer DP ke:
🏦 BCA: 1234567890
    a.n. [Nama]

⏰ Batas bayar DP: 24 jam
Tanpa DP = PO batal otomatis

Kirim bukti transfer! 📸

4. Konfirmasi DP Diterima

Bot: ✅ DP DITERIMA!

PO #15-023 sudah tercatat.

📊 Status: DP LUNAS ✓
📅 Estimasi ready: 25-27 Jan 2026

Kami akan kabari saat:
1. Pesanan mulai diproduksi
2. Pesanan ready
3. Reminder pelunasan

Terima kasih! 🙏

5. Reminder Pelunasan

Bot: 🔔 REMINDER PELUNASAN

Hai Kak Siti!

PO #15-023 hampir ready!
Mohon segera lunasi sisa pembayaran:

💵 Sisa: Rp 82.500

Transfer ke:
🏦 BCA: 1234567890

Kirim bukti TF untuk proses kirim/pickup!

6. Ready & Pengiriman

Bot: 🎉 PESANAN READY!

Hai Kak Siti!

PO #15-023 sudah siap!

📦 Brownies Premium x 2

🚚 Status: Akan dikirim hari ini!
📝 Resi: [akan dikirim via WA]

Terima kasih sudah PO! 💕

Flow PO Bot Lengkap

┌──────────────────────────────────────┐
│          CUSTOMER JOURNEY            │
└──────────────────────────────────────┘

1. INFO PO
   Customer: "po" → Bot: Info + Kuota
   
2. FORMAT ORDER  
   Customer: Format → Bot: Konfirmasi + Invoice DP
   
3. BAYAR DP
   Customer: Bukti TF → Bot: DP Confirmed
   
4. WAITING
   Bot: Update status produksi (optional)
   
5. REMINDER PELUNASAN
   Bot: Auto reminder H-3 ready
   
6. BAYAR LUNAS
   Customer: Bukti TF → Bot: Lunas Confirmed
   
7. READY/KIRIM
   Bot: Notif ready + resi

Implementasi Kuota Tracking

javascript

const poData = {
    batchId: 'PO-15',
    product: 'Brownies Premium',
    price: 75000,
    quota: 50,
    ordered: 45,
    deadline: '2026-01-20',
    readyDate: '2026-01-25'
};

client.on('message', async msg => {
    const text = msg.body.toLowerCase();
    
    if (text === 'po' || text === 'preorder') {
        const remaining = poData.quota - poData.ordered;
        
        if (remaining <= 0) {
            await msg.reply(`😢 Maaf, PO ${poData.batchId} sudah FULL!

Mau ikut batch selanjutnya?
Ketik WAITLIST untuk daftar waiting list.`);
        } else {
            await msg.reply(generatePOInfo(poData, remaining));
        }
    }
    
    // Process order
    if (text.includes('nama:') && text.includes('pesanan:')) {
        const order = parseOrderFormat(msg.body);
        
        // Check kuota
        if (poData.ordered + order.qty > poData.quota) {
            await msg.reply('⚠️ Kuota tidak cukup! Sisa: ' + 
                (poData.quota - poData.ordered));
            return;
        }
        
        // Create order
        const po = await createPOOrder(order);
        poData.ordered += order.qty;
        
        await msg.reply(generateInvoice(po));
    }
});

Auto Close PO

javascript

const cron = require('node-cron');

// Cek deadline setiap jam
cron.schedule('0 * * * *', async () => {
    const activePOs = await db.getActivePOs();
    
    for (const po of activePOs) {
        const now = new Date();
        const deadline = new Date(po.deadline);
        
        // PO sudah lewat deadline
        if (now > deadline) {
            await closePO(po.id);
            await broadcastPOClosed(po);
        }
        
        // Reminder H-1
        if (isOneDayBefore(now, deadline)) {
            await broadcastDeadlineReminder(po);
        }
    }
});

async function broadcastDeadlineReminder(po) {
    const message = `⚠️ DEADLINE PO BESOK!

${po.product}
📅 Deadline: ${po.deadline}
📊 Sisa kuota: ${po.quota - po.ordered}

Last call untuk PO!
Ketik FORMAT untuk order sekarang.`;

    // Broadcast ke semua yang belum PO
    await broadcastToInterested(message);
}

Multiple PO Batch

Kelola beberapa PO sekaligus:

Bot: 📢 PRE-ORDER AKTIF:

1️⃣ Brownies Premium (Batch #15)
   📊 45/50 | 📅 Deadline: 20 Jan
   
2️⃣ Cheese Cake (Batch #8)
   📊 20/30 | 📅 Deadline: 22 Jan
   
3️⃣ Cookies Set (Batch #12)
   📊 FULL - Waitlist open

Ketik nomor untuk detail!

Template Notifikasi PO

PO Dibuka:

🆕 PRE-ORDER DIBUKA!

[PRODUK]
Harga: Rp [HARGA]
Kuota: [KUOTA] slot

📅 Deadline: [TANGGAL]
📦 Estimasi ready: [TANGGAL]

First come first served!
Ketik PO untuk order!

Kuota Hampir Habis:

⚠️ KUOTA HAMPIR HABIS!

[PRODUK] - Batch #[X]
📊 Sisa: [X] slot!

Deadline: [TANGGAL]

Jangan sampai kehabisan!
Ketik FORMAT untuk PO sekarang!

PO Closed:

🔒 PRE-ORDER DITUTUP

[PRODUK] - Batch #[X]

Total PO: [JUMLAH] orang
Estimasi ready: [TANGGAL]

Untuk yang sudah PO:
✅ DP sudah masuk? Tunggu update!
⚠️ Belum bayar DP? Segera transfer!

Tidak kebagian?
Ketik WAITLIST untuk batch selanjutnya!

FAQ

Bagaimana handle yang tidak bayar DP?

Setup auto-cancel setelah 24-48 jam tanpa pembayaran. Kirim reminder dulu, jika tetap tidak bayar, batalkan dan lepas kuota.

Bisa PO multiple batch bersamaan?

Bisa! Simpan data per batch dengan ID unik. Customer pilih mau PO batch mana.

Bagaimana jika ada cancel setelah bayar DP?

Tergantung kebijakan. Bisa: (1) Refund penuh, (2) Refund sebagian, (3) No refund. Jelaskan di awal!


Kesimpulan

PO Bot = Sistem pre-order autopilot!

ManualDengan Bot
Catat satu-satuAuto record
Hitung kuotaReal-time tracking
Reminder manualAuto reminder
Invoice manualAuto generate

Scale bisnis PO tanpa ribet!

Setup PO Bot →


Artikel Terkait