WhatsApp API untuk Integrasi E-commerce
Cara integrasi WhatsApp API ke toko online. Notifikasi order, abandoned cart, shipping update. WooCommerce, Shopify, custom!
WhatsApp + E-commerce = Conversions naik!
| Metric | ||
|---|---|---|
| Open Rate | 20% | 98% |
| Response Time | Hours | Minutes |
| Conversion | 2-3% | 10-15% |
Dengan WhatsApp API, setiap touchpoint customer journey bisa ter-automate.
Customer Journey Touchpoints
1. 🛒 Cart Created
→ Optional: Reminder
2. 💳 Order Placed
→ Confirmation + Payment Info
3. 💰 Payment Received
→ Thank you + Processing
4. 📦 Order Shipped
→ Tracking info
5. ✅ Order Delivered
→ Review request
6. 🛒 Abandoned Cart (24h)
→ Recovery message
7. 🔄 Repeat Purchase (30d)
→ Promo/reminderImplementation
1. Order Confirmation
javascript
// Trigger: Order Created
async function onOrderCreated(order) {
const message = `✅ ORDER DITERIMA!
Hai ${order.customer.name}!
Order #${order.id}
━━━━━━━━━━━━━━
${order.items.map(i => `• ${i.name} x${i.qty} - Rp ${i.total.toLocaleString()}`).join('\n')}
━━━━━━━━━━━━━━
Subtotal: Rp ${order.subtotal.toLocaleString()}
Ongkir: Rp ${order.shipping.toLocaleString()}
TOTAL: Rp ${order.total.toLocaleString()}
💳 Transfer ke:
BCA 1234567890
a.n. Toko Online
Bayar sebelum: ${order.paymentDeadline}
Terima kasih sudah order! 🙏`;
await sendWhatsApp(order.customer.phone, message);
}2. Payment Confirmation
javascript
// Trigger: Payment Status = Paid
async function onPaymentReceived(order) {
const message = `💰 PEMBAYARAN DITERIMA!
Hai ${order.customer.name}!
Pembayaran untuk Order #${order.id} sudah kami terima.
Total: Rp ${order.total.toLocaleString()}
Status: ✅ LUNAS
Pesanan sedang diproses!
Estimasi kirim: ${order.estimatedShipDate}
Terima kasih! 🎉`;
await sendWhatsApp(order.customer.phone, message);
}3. Shipping Update
javascript
// Trigger: Order Shipped
async function onOrderShipped(order, tracking) {
const message = `🚚 PESANAN DIKIRIM!
Hai ${order.customer.name}!
Order #${order.id} sudah dalam perjalanan!
📦 No. Resi: ${tracking.number}
🚚 Kurir: ${tracking.courier}
📍 Track: ${tracking.url}
Estimasi tiba: ${tracking.eta}
Pantau terus ya! 📱`;
await sendWhatsApp(order.customer.phone, message);
}4. Abandoned Cart Recovery
javascript
// Trigger: Cart age > 24h && not converted
async function sendAbandonedCartReminder(cart) {
const message = `🛒 Hai ${cart.customer.name}!
Keranjangmu masih menunggu nih:
${cart.items.map(i => `• ${i.name}`).join('\n')}
Total: Rp ${cart.total.toLocaleString()}
🎁 Checkout sekarang, dapat diskon 10%!
Kode: COMEBACK10
👉 ${cart.checkoutUrl}
Berlaku 24 jam saja!`;
await sendWhatsApp(cart.customer.phone, message);
}5. Review Request
javascript
// Trigger: Order delivered + 3 days
async function requestReview(order) {
const message = `⭐ Hai ${order.customer.name}!
Gimana pesanannya? Sudah sampai dengan baik?
Yuk kasih review untuk Order #${order.id}:
👉 ${order.reviewUrl}
Review kamu sangat berarti untuk kami dan membantu pembeli lain! 🙏
Sebagai terima kasih, dapat voucher Rp 10.000 untuk order berikutnya! 🎁`;
await sendWhatsApp(order.customer.phone, message);
}Platform Integration
WooCommerce (WordPress)
php
// functions.php atau plugin
add_action('woocommerce_order_status_completed', 'send_wa_notification');
function send_wa_notification($order_id) {
$order = wc_get_order($order_id);
$phone = $order->get_billing_phone();
$total = $order->get_total();
$message = "✅ Pembayaran Order #{$order_id} diterima! Total: Rp " . number_format($total);
sendWhatsApp($phone, $message);
}Shopify
javascript
// Shopify Webhook Handler
app.post('/webhooks/shopify/order-created', async (req, res) => {
const order = req.body;
await sendOrderConfirmation({
id: order.name,
customer: {
name: order.customer.first_name,
phone: order.customer.phone
},
items: order.line_items,
total: order.total_price
});
res.status(200).send('OK');
});Template Messages
Untuk business-initiated conversation, buat templates di Meta:
| Template | Purpose |
|---|---|
order_confirmation | Order received |
payment_received | Payment confirmed |
order_shipped | Shipping notification |
delivery_complete | Order delivered |
cart_reminder | Abandoned cart |
review_request | Ask for review |
Impact Metrics
| Metric | Before | After WA |
|---|---|---|
| Cart Recovery | 5% | 15% |
| Order Confirmation Open | 30% | 95% |
| Review Rate | 3% | 12% |
| Support Response | 24h | 1h |
WhatsApp = Higher engagement at every touchpoint!
Setup E-commerce Integration — Gratis! →