Integrasi Shopify WhatsApp lewat Kirimi berjalan dengan webhook: toko Shopify mengirim event ke alamat khusus yang dibuat Kirimi, lalu Kirimi mengirim pengingat ke WhatsApp pembeli. Kamu hanya perlu membuat lima webhook di admin Shopify, menempelkan signing secret ke Kirimi, dan mengirim satu tes. Panduan ini menunjukkan setiap isian satu per satu.
Ringkasnya: Sambungkan toko di Kirimi memakai domain .myshopify.com, buat lima webhook (Checkout creation, Checkout update, Order creation, Order payment, Order cancellation) di Settings > Notifications > Webhooks, tempel signing secret, lalu kirim tes sampai status berubah menjadi Terhubung. Yang dikirim adalah pengingat keranjang ditinggalkan dan pesanan belum dibayar. Notifikasi status pesanan dan resi belum didukung.
Contoh di artikel ini memakai toko fiktif "Toko Kaos Nusantara". Webhook sendiri adalah pesan otomatis dari satu sistem ke sistem lain: begitu ada kejadian di toko (misalnya pesanan dibuat), Shopify mengirim data kejadian itu ke URL yang kamu tentukan. Kalau kamu ingin penjelasan umum cara kerjanya, baca tutorial webhook WhatsApp untuk pengguna Kirimi.
Apa yang dikirim ke pembeli Shopify, dan apa yang belum?
Integrasi ini mengirim dua jenis pengingat ke WhatsApp pembeli.
- Keranjang ditinggalkan: pembeli sudah mengisi data di checkout tetapi tidak menyelesaikannya. Penjelasan lengkapnya ada di artikel tentang abandoned checkout Shopify.
- Pesanan belum dibayar: pesanan sudah dibuat, tetapi statusnya masih Pending di Shopify, misalnya karena pembeli memilih transfer bank manual. Detailnya ada di panduan pesanan Shopify belum dibayar.
Pengingat otomatis dibatalkan kalau pembeli menyelesaikan checkout, membayar, atau pesanannya dibatalkan. Pesanan COD (bayar di tempat) tidak pernah dikirimi pengingat pembayaran.
Yang belum ada untuk Shopify per Oktober 2026: notifikasi status pesanan (diproses, dikirim) dan nomor resi. Kalau itu kebutuhan utamamu, integrasi ini belum menjawabnya. Untuk toko WooCommerce, status pesanan sudah didukung. Lihat panduan menghubungkan WooCommerce ke WhatsApp.
Apa yang perlu disiapkan sebelum mulai?
- Paket berbayar Kirimi. Integrasi toko tersedia di paket Lite, Basic, dan Pro, bukan di paket Free.
- Pengirim pesan. Pilih satu dari dua. Perangkat adalah nomor WhatsApp yang kamu sambungkan lewat scan QR, dan pesannya berupa teks bebas. WABA adalah WhatsApp Business API resmi, dan pesannya wajib memakai template yang disetujui Meta. Template dengan header gambar, video, atau dokumen, header bervariabel, atau tombol tautan bervariabel belum didukung. Kalau memakai WABA, Meta menagih biaya pesan sesuai tarifnya sendiri.
- Nomor telepon di checkout. Tanpa nomor, tidak ada yang bisa dikirimi pesan, dan pengingatnya tercatat Dilewati. Cara mewajibkannya ada di artikel nomor WhatsApp pembeli di checkout.
- Akses admin Shopify yang boleh mengubah pengaturan notifikasi.
Langkah 1: bagaimana menyambungkan toko di Kirimi?
- Masuk ke dash.kirimi.id, buka menu Integrasi, lalu pilih Shopify.
- Klik "Sambungkan Toko Shopify".
- Isi domain toko dengan alamat
.myshopify.com, misalnyatoko-kaos-nusantara.myshopify.com. Jangan pakai domain kustom seperti tokokaos.id. - Kirimi menampilkan URL webhook yang unik untuk tokomu. Salin URL itu, lalu biarkan tab ini terbuka.
Domain .myshopify.com biasanya terlihat di address bar saat admin Shopify terbuka (bentuknya admin.shopify.com/store/nama-toko atau nama-toko.myshopify.com/admin).
Langkah 2: bagaimana membuat webhook di admin Shopify?
Jalur menu dan isian formulir
Di admin Shopify, buka Settings > Notifications, gulir ke bagian paling bawah sampai ketemu Webhooks, lalu klik Create webhook (di tampilan admin terbaru tombolnya bisa berlabel "+ Webhook"). Menurut Shopify Help Center, formulirnya punya empat isian.
| Isian | Yang diisi |
|---|---|
| Event | Satu event per webhook (daftar di bawah) |
| Format | JSON |
| URL | URL webhook dari Kirimi, sama untuk kelima webhook |
| Webhook API version | Versi bertanggal terbaru yang tersedia (misalnya 2026-10). Jangan pilih unstable |
Versi unstable berisi perubahan yang belum stabil, jadi bentuk datanya bisa berubah tanpa pemberitahuan. Versi bertanggal lebih aman untuk sesuatu yang berjalan terus.
Lima event yang dibuat, dan kenapa bukan Cart update
Buat lima webhook, satu per event, dengan URL dan format yang sama:
- Checkout creation
- Checkout update
- Order creation
- Order payment
- Order cancellation
Event checkout memberi tahu bahwa ada calon pembeli yang sedang mengisi data. Event order memberi tahu bahwa pesanan dibuat, dibayar, atau dibatalkan, sehingga pengingat yang sudah terjadwal bisa dibatalkan. Jangan pilih Cart update. Itu event lain (isi keranjang berubah sebelum checkout), dan Kirimi tidak memakainya.
Event tidak bisa diubah setelah dibuat
Menurut Help Center Shopify, event tidak bisa diubah setelah webhook dibuat. Kalau salah memilih event, hapus webhook itu dan buat ulang. Setelah kelima webhook muncul di daftar, kamu bisa mencocokkan labelnya dengan daftar di atas sebelum lanjut.
Langkah 3: di mana signing secret dan cara menempelkannya?
Setelah webhook dibuat, Shopify menampilkan kalimat "Your webhooks will be signed with" diikuti 64 karakter huruf dan angka. Itulah signing secret. Shopify memakainya untuk menandatangani setiap pesan, dan Kirimi memakai secret yang sama untuk memeriksa tanda tangan (HMAC) itu. Pesan yang tanda tangannya tidak cocok ditolak, jadi pihak lain tidak bisa berpura-pura menjadi tokomu. Menurut dokumentasi developer Shopify, tanda tangan ini dikirim di header X-Shopify-Hmac-SHA256.
- Salin 64 karakter itu.
- Kembali ke Kirimi, tempel ke kolom "Signing secret", lalu simpan.
Kalau dialognya sudah tertutup sebelum sempat disalin, klik "Lengkapi koneksi" di kartu toko pada halaman Integrasi di Kirimi. Tombol itu membuka lagi isian signing secret.
Langkah 4: bagaimana memastikan statusnya Terhubung?
Sampai pesan pertama yang bertanda tangan sah masuk, kartu toko menampilkan "Menunggu webhook pertama". Cara tercepat memicunya:
- Di daftar webhook Shopify, klik tanda tiga titik (···) pada salah satu baris, lalu pilih Send test notification (di dokumentasi Shopify, menu ini disebut "Send test"; label persisnya bisa sedikit berbeda di admin kamu).
- Kembali ke Kirimi. Statusnya berubah menjadi "Terhubung".
Data tes dari Shopify ditandai sebagai tes dan tidak pernah mengirim WhatsApp ke siapa pun, jadi aman dicoba berkali-kali. Kalau statusnya tetap "Menunggu webhook pertama", periksa tiga hal berurutan: URL di kelima webhook sama persis dengan URL dari Kirimi, signing secret sudah tersimpan tanpa spasi tambahan, dan webhook memang terdaftar di toko yang domain .myshopify.com-nya kamu isi tadi. Daftar penyebab yang lebih lengkap ada di artikel webhook Shopify tidak masuk.
Satu catatan teknis: Menurut dokumentasi developer di atas, Shopify menunggu respons maksimal lima detik per pengiriman, lalu mengulang pengiriman yang gagal 8 kali dalam 4 jam.
Bagaimana mengatur jeda, nama toko, dan jam tenang?
Setelah status Terhubung, buka halaman toko di Kirimi untuk mengatur jeda pengingat (keranjang ditinggalkan 15 sampai 1.440 menit, pesanan belum dibayar 30 sampai 2.880 menit), nama toko untuk {{store_name}}, pengirim (Perangkat atau WABA), dan opsi "Hanya kirim ke pembeli yang setuju". Pengingat yang jatuh tempo di jam tenang (21.00 sampai 07.59 WIB) ditunda ke pagi. Pertimbangan memilih jeda yang pas ada di artikel abandoned checkout Shopify, dan aturan persetujuan pembeli di artikel izin pemasaran Shopify.
Isi pesan memakai placeholder berikut:
| Placeholder | Isinya | Dipakai di |
|---|---|---|
| {{customer_name}} | Nama pembeli | Keduanya |
| {{store_name}} | Nama toko | Keduanya |
| {{total}} | Total belanja | Keduanya |
| {{items}} | Daftar barang | Keduanya |
| {{checkout_url}} | Tautan untuk melanjutkan checkout | Keranjang ditinggalkan |
| {{order_name}} | Nomor pesanan | Pesanan belum dibayar |
| {{order_url}} | Tautan halaman pesanan | Pesanan belum dibayar |
Contoh kalimat siap pakai ada di contoh pesan WhatsApp untuk checkout Shopify yang ditinggalkan. Kalau memakai WABA, kategori template yang sesuai adalah marketing untuk keranjang ditinggalkan dan utility untuk pesanan belum dibayar.
Bagaimana membaca Riwayat pengingat?
Setiap toko punya Riwayat pengingat dengan status Terjadwal, Terkirim, Dilewati, Gagal, atau Dibatalkan, lengkap dengan kolom alasan. Cara membaca alasannya dibahas di artikel alasan pengingat Dilewati di Riwayat.
Bisakah webhook Shopify dipakai ke tujuan lain?
Bisa. Webhook adalah fitur bawaan Shopify, dan langkah 2 di atas berlaku untuk tujuan apa pun: server buatan sendiri, n8n, atau layanan WhatsApp lain. Bedanya, kamu harus menyediakan sendiri penerimanya: memeriksa tanda tangan HMAC, mengatur jadwal pengingat, membatalkan pengingat saat pembeli membayar, dan mengirim pesannya. Itu semua sudah dikerjakan oleh sisi Kirimi. Perbandingan antara memakai aplikasi dan webhook ada di artikel aplikasi WhatsApp untuk Shopify, dan kalau kamu menimbang email sebagai alternatif, baca email atau WhatsApp untuk pengingat checkout Shopify.
Daftar dan pasang videonya
Kalau mau mencoba dengan Kirimi, daftar di dash.kirimi.id/register, pilih paket berbayar, lalu ikuti panduan integrasi Shopify di dashboard. Panduan itu berisi video 2 menit yang menunjukkan langkah di atas di layar.
Pertanyaan yang sering diajukan
Apakah perlu memasang plugin atau aplikasi untuk menghubungkan Shopify ke WhatsApp lewat Kirimi?
Tidak. Tidak ada aplikasi yang dipasang di toko. Toko Shopify mengirim webhook ke URL yang dibuat Kirimi, dan Kirimi memeriksa tanda tangannya dengan signing secret. Kamu hanya membuat lima webhook di Settings > Notifications > Webhooks.
Berapa biaya integrasi Shopify di Kirimi?
Integrasi toko tersedia di paket berbayar Lite, Basic, dan Pro, dan paket Lite mulai Rp29.000 per bulan per Oktober 2026. Kirimi tidak menarik biaya tambahan per integrasi. Kalau pengirimnya WABA, Meta menagih biaya pesan sesuai tarifnya. Mengirim lewat Perangkat (scan QR) tidak kena biaya Meta.
Kenapa harus memakai domain .myshopify.com, bukan domain toko saya?
Domain .myshopify.com adalah alamat tetap tokomu di Shopify, sedangkan domain kustom bisa diganti atau dialihkan. Kirimi meminta alamat .myshopify.com itu saat menyambungkan toko, bukan domain kustom.
Event Shopify apa saja yang harus dibuat?
Lima event: Checkout creation, Checkout update, Order creation, Order payment, dan Order cancellation. Semuanya berformat JSON, memakai URL yang sama, dan memakai versi API bertanggal, bukan unstable. Jangan pilih Cart update.
Apakah Kirimi bisa mengirim notifikasi status pesanan atau resi untuk toko Shopify?
Belum. Per Oktober 2026 integrasi Shopify hanya mengirim pengingat keranjang ditinggalkan dan pesanan belum dibayar. Notifikasi status pesanan tersedia untuk WooCommerce, bukan Shopify.
Status toko tetap Menunggu webhook pertama, apa yang harus dicek?
Kirim tes dari daftar webhook Shopify (menu ···), lalu cek tiga hal: URL di kelima webhook sama dengan URL Kirimi, signing secret tersimpan benar, dan webhook dibuat di toko yang domain .myshopify.com-nya sama dengan yang diisi di Kirimi. Kalau masih tertahan, baca artikel penyebab webhook Shopify tidak masuk.
