---
title: "Notifikasi pesanan Shopify yang sampai ke ponsel dalam hitungan detik"
description: "Kirim webhook Shopify langsung ke ponsel: push senyap untuk tiap pesanan, lebih nyaring untuk keranjang besar, dan panggilan ketika pengembalian dana atau pembatalan membutuhkan Anda."
date: 2026-09-09
author: Nooc
authorAvatarLink: /images/avatars/nooc.webp
authorLink: https://nooc.me
tags:
  - Shopify
  - notifikasi pesanan
  - peringatan ecommerce
  - notifikasi webhook
  - usaha kecil
---

# Notifikasi pesanan Shopify yang sampai ke ponsel dalam hitungan detik

Email pesanan bawaan Shopify tiba kapan pun aplikasi surel Anda memutuskan menyinkron, mendarat di folder yang sudah Anda filter, dan terlihat sama saja entah pesanannya Rp 200 ribu atau Rp 20 juta. Kalau toko itu Anda sendiri yang jalankan, bentuk sinyalnya salah.

Webhook memperbaikinya. Shopify akan mem-POST setiap pesanan ke URL pilihan Anda, dan Echobell mengubah POST itu jadi notifikasi yang kerasnya Anda tentukan.

## Pilih topic yang pantas menginterupsi Anda

Shopify menyebut jenis peristiwa webhook sebagai **topic**. Empat ini menutup kebutuhan sebagian besar toko yang dijalankan satu orang:

| Topic | Artinya | Urgensi |
| --- | --- | --- |
| `orders/create` | Ada pesanan masuk. | Biasa |
| `orders/paid` | Pembayaran lolos. Pakai ini kalau yang Anda pedulikan hanya uang yang benar-benar masuk. | Biasa |
| `orders/cancelled` | Pelanggan membatalkan. Layak diketahui sebelum Anda mengemas. | Sensitif waktu |
| `refunds/create` | Pengembalian dana diterbitkan. | Sensitif waktu |

Berlanggananlah ke `orders/create` **atau** `orders/paid`, bukan keduanya, kecuali Anda memang ingin dua notifikasi per penjualan. Untuk kebanyakan toko, `orders/paid` yang jujur.

## Langkah 1 — Buat kanalnya

Buat kanal di Echobell bernama semisal "Pesanan Shopify", salin URL webhook-nya, dan nyalakan **Hanya POST**. Shopify selalu mengirim lewat POST.

Kalau Anda mau kanal terpisah yang lebih nyaring untuk pembatalan dan pengembalian dana, buat sekalian sekarang dan setel ke sensitif waktu.

## Langkah 2 — Tambahkan webhook di Shopify

Di admin Shopify, buka **Pengaturan → Notifikasi → Webhook → Buat webhook**. Pilih topic-nya, setel format ke **JSON**, lalu tempel URL kanal Anda.

Shopify mengirim payload uji saat Anda menyimpan. Kalau ponsel bergetar, jalurnya berfungsi.

## Langkah 3 — Templatkan hanya field yang benar-benar Anda baca

Payload pesanan Shopify itu panjang — lebih dari seratus field per pesanan. Anda hanya butuh beberapa:

**Judul**

```
Pesanan baru #{{order_number}} · {{total_price}} {{currency}}
```

**Isi**

```
{{customer.first_name}} {{customer.last_name}}
{{line_items[0].title}}
```

`line_items` adalah array, jadi `line_items[0]` adalah barang pertama. Templat Echobell mendukung akses indeks, tetapi tidak ada perulangan: pesanan berisi tiga barang hanya menampilkan yang pertama. Kalau itu penting, taruh jumlahnya di sebelahnya:

```
{{line_items[0].title}} · total {{line_items.length}} barang
```

Berbeda dari Stripe, Shopify mengirim `total_price` sebagai string desimal — `"49.00"`, bukan `4900` — jadi terbaca benar tanpa hitungan apa pun.

## Langkah 4 — Rutekan per topic dengan kondisi

Kalau Anda mengarahkan beberapa topic ke satu kanal, Shopify memberi tahu yang mana lewat sebuah header:

```
header["x-shopify-topic"] == "orders/paid"
```

Itu cara terbersih memisahkan perilaku tanpa membuat satu webhook per kanal di admin.

## Bangunkan saya hanya untuk pesanan besar

Pola yang sebenarnya diinginkan hampir semua pemilik toko: semua pesanan masuk ke kanal senyap, dan hanya yang di atas ambang tertentu masuk ke kanal nyaring.

Buat kanal kedua, setel ke sensitif waktu, arahkan satu webhook `orders/paid` lagi ke sana, lalu beri kondisi:

```
total_price > 500
```

Sekarang hari biasa jadi dengung latar, dan pesanan senilai 900 € jadi sesuatu yang Anda rasakan.

## Yang tidak dilakukan susunan ini

**Tanpa verifikasi HMAC.** Shopify menandatangani setiap webhook dengan header `X-Shopify-Hmac-Sha256`. Echobell tidak memverifikasinya, jadi URL kanal Anda satu-satunya yang menahan orang asing di luar. Rahasiakan, biarkan **Hanya POST** menyala, dan bila notifikasi pesanan palsu bisa menimbulkan kerugian nyata, taruh endpoint Anda sendiri di depan untuk memverifikasi HMAC lalu biarkan dia memanggil Echobell.

**Shopify bisa mengirim webhook yang sama dua kali.** Ia mencoba ulang saat gagal, dan percobaan ulang tidak dideduplikasi. Perlakukan notifikasi sebagai dorongan untuk melihat pesanannya, bukan sebagai hitungan pesanan. Admin Shopify Anda adalah sumber kebenaran.

**Topic inventaris cepat sekali jadi berisik.** `inventory_levels/update` menyala pada setiap pergerakan stok, termasuk suntingan Anda sendiri. Kalau mau peringatan stok menipis, saring dengan ketat atau Anda akan menyesal sebelum makan siang.

## Pertanyaan umum

### Apakah saya perlu aplikasi Shopify untuk ini?

Tidak. Webhook di **Pengaturan → Notifikasi** sudah tertanam di admin dan tidak butuh aplikasi, akun partner, maupun kode.

### Bisakah gudang melihat pesanan tanpa melihat admin Shopify saya?

Bisa. Bagikan kanalnya kepada mereka. Mereka menerima notifikasi dan tidak lebih — tanpa akses admin dan tanpa data pelanggan di luar yang templat Anda sertakan.

### Perlukah saya memasukkan nama pelanggan ke notifikasi?

Itu keputusan Anda, dan layak diambil dengan sadar. Apa pun yang ada di templat akan muncul di layar terkunci. Nomor pesanan dan totalnya biasanya sudah cukup untuk bertindak.

### Bisakah saya ditelepon saat ada chargeback?

Sengketa Shopify Payments datang lewat topic `disputes/create` di toko yang memakai Shopify Payments. Arahkan itu ke kanal panggilan — itulah satu-satunya peristiwa pesanan yang punya tenggat.

## Penutup

Satu webhook, satu templat, dan satu kondisi kalau Anda mau versi nyaringnya. Butuh sekitar lima menit dan menggantikan kebiasaan menyegarkan halaman pesanan.

[Unduh Echobell untuk iPhone](https://apps.apple.com/app/apple-store/id6743597198?pt=128151925&ct=blog-shopify-order-notifications-id&mt=8) atau [ambil di Google Play](https://play.google.com/store/apps/details?id=one.echobell.echobellandroid), lalu buat satu pesanan uji dan lihat ia tiba sebelum email konfirmasi.

---

## Konten terkait

- [Peringatan pembayaran Stripe](/id/blog/stripe-payment-alerts)
- [Dokumentasi pemicu webhook](/id/docs/webhook)
- [Referensi sistem templat](/id/docs/template)
- [Referensi kondisi kanal](/id/docs/conditions)
- [Panduan pengembang mengatasi kelelahan peringatan](/id/blog/fix-alert-fatigue-developer-guide)
