LARAVEL INTEGRATION

API WhatsApp untuk Laravel

Bungkus integrasi Kirimore dalam service class Laravel dan kirim notifikasi melalui queue agar request pengguna tidak menunggu proses WhatsApp.

Laravel HTTP ClientService ClassQueueNotificationsRetryREST API
Pengenalan

Bagaimana workflow ini bekerja?

Laravel menyediakan HTTP Client, service container, queue, events, dan notifications yang cocok untuk membangun integrasi WhatsApp yang rapi. Simpan API key dan sender di `.env`, lalu gunakan service class agar endpoint tidak tersebar di controller.

Untuk event seperti pembayaran sukses atau order diproses, dispatch Job setelah transaksi database selesai. Queue dapat menangani retry tanpa membuat pengguna menunggu request WhatsApp.

Fitur

Fitur Kirimore yang relevan

๐Ÿงฑ

Service class

Satukan endpoint, kredensial, timeout, dan parsing response pada satu komponen.

๐ŸŒ€

Queue

Pengiriman berjalan di background dan tidak memperlambat halaman pengguna.

๐ŸŽฏ

Events

Trigger pesan dari event domain seperti OrderPaid atau TicketCreated.

๐Ÿ”

Retry policy

Atur backoff dan jumlah percobaan sesuai jenis error.

๐Ÿ”

Environment config

API key dan sender disimpan di `.env`/config, bukan controller.

๐Ÿงช

Mudah diuji

Service dapat dimock pada automated test tanpa benar-benar mengirim WhatsApp.

Alur

Implementasi langkah demi langkah

Simpan kredensial

Tambahkan API key dan sender pada `.env`.

Buat service

Gunakan Laravel HTTP Client untuk POST JSON.

Dispatch job

Panggil service dari Job/Listener setelah event bisnis berhasil.

Monitor queue

Pantau failed jobs dan log response untuk retry atau investigasi.

Praktik baik

Hal yang perlu diperhatikan

Gunakan `Http::timeout()` dan `retry()` secara terbatas.
Jangan menjalankan pengiriman sebelum transaksi database commit.
Gunakan queue untuk notifikasi yang tidak harus selesai di request yang sama.
Hindari menyimpan API key di log exception.
CONTOH IMPLEMENTASI
// config/services.php
'kirimore' => [
    'url'    => env('KIRIMORE_URL', 'https://kirimore.com'),
    'key'    => env('KIRIMORE_API_KEY'),
    'sender' => env('KIRIMORE_SENDER'),
];

// contoh service
$response = Http::timeout(30)->post(
    config('services.kirimore.url').'/apiv2/send-message.php',
    [
        'api_key' => config('services.kirimore.key'),
        'sender'  => config('services.kirimore.sender'),
        'number'  => $phone,
        'message' => $message,
    ]
);

$response->throw();
Catatan: Kirimore menggunakan koneksi perangkat WhatsApp berbasis QR/pairing dan bukan WhatsApp Business Platform resmi Meta. Gunakan secara bertanggung jawab, hindari spam, dan patuhi kebijakan WhatsApp serta persetujuan komunikasi dari penerima.
FAQ

Pertanyaan yang sering ditanyakan

Apakah harus memakai queue?

Tidak wajib, tetapi queue direkomendasikan untuk notifikasi agar request utama tidak menunggu proses eksternal.

Bisa memakai Laravel Notification?

Bisa. Anda dapat membuat custom channel atau membungkus service Kirimore dari notification class.

Bagaimana menyimpan kredensial?

Gunakan `.env` lalu mapping melalui file config; jangan hardcode API key di source repository.

Bagaimana menangani error?

Gunakan timeout, logging aman, retry terbatas, failed jobs, dan idempotensi pada event yang berpotensi diulang.

Internal Links

Pelajari lebih lanjut

Gunakan panduan dan landing page berikut untuk mendalami implementasi yang terkait.

Siap menerapkan workflow ini?

Buat akun, hubungkan device, lalu uji satu alur terlebih dahulu sebelum memperluas ke automation atau integrasi lainnya.

Tools Gratis Kirimore
Generator Link WhatsApp Formatter Nomor WhatsApp UTM Builder Media Kit
Integrasi Kirimore
PHP Laravel CodeIgniter WordPress WooCommerce Shopify cPanel
Kirimore untuk Bisnis & Developer
Harga WhatsApp Gateway Fitur Untuk Bisnis Untuk Developer Multi Device Team Inbox