Lewati ke konten

Lacak pesanan di situs Anda

Untuk: Pemilik, Admin

Pelanggan cek status cucian dengan nomor nota dan nomor HP, dari situs atau aplikasi Anda.

Pelanggan mengetik nomor nota atau nomor HP di situs atau aplikasi laundry Anda, lalu melihat posisi cuciannya: diterima, dicuci, siap, selesai, lengkap dengan riwayatnya. Mirip cek resi pengiriman. Toko Laundry memberi satu endpoint API; tampilannya dibuat developer Anda.

Untuk pemilik dan admin.

Langkah membuat kunci

  1. Buka Pengaturan > Lacak pesanan, lalu tekan Buat kunci.

    Halaman Lacak pesanan dengan tombol Buat kunci
  2. Pilih tempat kunci dipakai: Situs web kalau dipanggil dari browser, Aplikasi kalau dipanggil dari server, Android atau iPhone. Tekan Lanjut.

    Pilihan Situs web dan Aplikasi
  3. Isi Nama kunci. Untuk situs web, ketik alamat situs tanpa https:// lalu tekan Tambah; ulangi untuk alamat lain, misalnya dengan dan tanpa www. Tekan Buat kunci.

    Nama kunci dan alamat situs yang sudah ditambahkan
  4. Salin kunci, lalu berikan ke developer bersama alamat API yang tampil di bawahnya. Kunci hanya tampil sekali. Kalau hilang, matikan kunci itu dan buat yang baru.

    Kunci yang sudah jadi dengan Salin kunci, serta alamat dan header untuk developer

Satu bisnis bisa memegang 10 kunci aktif. Ubah alamat mengganti daftar situs sebuah kunci situs web. Matikan menghentikan kunci saat itu juga, dan kunci yang dimatikan tidak bisa dinyalakan lagi.

Halaman ini berisi tiga kartu, dari atas ke bawah, seperti halaman pengaturan lainnya. Buat kunci mendaftar kunci yang aktif, dengan jenis, awal kunci, berapa kali dipakai 30 hari terakhir dan alamat situsnya. Coba seperti pelanggan menampilkan contoh situs kecil: ketik nomor nota atau nomor HP, lalu jawabannya digambar seperti yang dilihat pelanggan Anda, dengan empat tahap (diterima, dicuci, siap, selesai) dan riwayat pesanan. Ini jalan tanpa kunci. Berikan ke developer menampilkan endpoint dan header, dan tab Permintaan, Jawaban nomor HP, Jawaban nomor nota dan Galat berisi contoh yang bisa disalin.

Memanggil API

Kirim POST https://tokolaundry.id/api/v1/track dengan kunci di header Authorization dan satu kolom query:

curl -X POST https://tokolaundry.id/api/v1/track \
  -H "Authorization: Bearer tl_sk_..." \
  -H "Content-Type: application/json" \
  -d '{"query":"0812 3456 7890","lang":"id"}'

query adalah nomor nota atau nomor HP yang diketik pelanggan, apa adanya. lang bahasa label (id atau en, bawaannya id).

Kunci situs web (tl_pk_...) dipanggil dari JavaScript di halaman situs Anda, dan hanya diterima dari alamat yang terdaftar di kunci itu. Untuk mencoba di komputer sendiri, tambahkan localhost beserta port-nya.

const jawaban = await fetch('https://tokolaundry.id/api/v1/track', {
  method: 'POST',
  headers: { Authorization: 'Bearer tl_pk_...', 'Content-Type': 'application/json' },
  body: JSON.stringify({ query: kolom.value, lang: 'id' }),
})

Kunci aplikasi (tl_sk_...) dipakai dari server Anda. Aplikasi Android atau iPhone memanggil server Anda, lalu server Anda memanggil Toko Laundry.

Nomor nota atau nomor HP

Spasi, titik, tanda hubung dan kurung dibuang dulu. Kalau sisanya nomor HP Indonesia (diawali 08, 628 atau +628), pencarian memakai nomor HP. Selain itu, query dibaca sebagai nomor nota.

  • Nomor nota mengembalikan satu cucian itu, apa pun statusnya.
  • Nomor HP mengembalikan semua cucian pelanggan itu yang belum selesai, paling banyak 10, terbaru di atas. Cucian yang sudah diambil, sudah diantar atau dibatalkan tidak ikut.

Jawaban

{
  "matched_by": "phone",
  "customer": { "name": "B***i S." },
  "orders": [
    {
      "order_number": "MRG-071125-0042",
      "status": "ready",
      "status_label": "Siap diambil",
      "progress": 3,
      "branch": { "name": "Laundry Contoh Margonda", "phone": "+62 21 7788 1234" },
      "estimated_ready_at": null,
      "payment_status": "paid",
      "items": [{ "service": "Cuci setrika", "quantity": 4.2, "unit": "kg" }],
      "checkpoints": [
        { "kind": "ready", "step": null, "label": "Siap diambil", "at": "2026-11-07T14:20:00+07:00", "note": "Di Laundry Contoh Margonda" },
        { "kind": "stage", "step": "ironing", "label": "Disetrika", "at": "2026-11-07T11:05:00+07:00" }
      ]
    }
  ],
  "as_of": "2026-11-07T14:21:00+07:00"
}
Kolom Isi
matched_by order_number atau phone, cara query dibaca
customer nama pelanggan yang disamarkan
orders satu cucian untuk nomor nota; cucian yang belum selesai untuk nomor HP
status received, processing, ready, picked_up, delivered atau cancelled
status_label label dalam bahasa lang, misalnya Sedang dicuci, Siap diambil, atau Sedang diantar saat kurir menuju alamat pelanggan
progress 1 diterima, 2 diproses, 3 siap, 4 diambil atau diantar, 0 dibatalkan
payment_status paid atau unpaid
checkpoints riwayat, terbaru di atas; label tahap kerja memakai nama tahap bisnis Anda

Jawaban tidak pernah memuat harga, nama staf atau kurir, lokasi, tautan nota, catatan pesanan, atau nomor HP pelanggan.

Ikon tahap

Setiap checkpoint punya kind. Untuk tahap produksi (kind: "stage"), step menyebut tahapnya: washing, drying, ironing atau packing; tahap buatan bisnis Anda sendiri bernilai null. Pakai dua kolom ini kalau Anda ingin memberi ikon per baris riwayat.

kind step Artinya
received null diterima di cabang
weighed null ditimbang, note berisi beratnya
stage washing, drying, ironing, packing dicuci, dikeringkan, disetrika, dikemas
stage null tahap kerja buatan bisnis Anda
ready null siap diambil
delivery null kurir menuju alamat pelanggan
picked_up, delivered null sudah diambil atau sudah diantar
cancelled null dibatalkan

Untuk bar empat tahap, progress saja sudah cukup.

Kalau gagal

Kode Artinya
400 invalid_request query kosong atau lebih dari 40 karakter.
401 invalid_key Kunci salah atau sudah dimatikan.
403 origin_not_allowed Alamat situs belum terdaftar di kunci situs web.
403 secret_key_in_browser Kunci aplikasi dipakai dari halaman situs. Buat kunci situs web.
404 not_found Tidak ada cucian untuk nomor itu: nomor nota tidak ada, atau nomor HP tanpa cucian yang belum selesai.
429 rate_limited Terlalu sering dicoba. Tunggu sebanyak detik di header Retry-After.

Keamanan

Nomor nota saja atau nomor HP saja sudah cukup untuk melihat cucian. Artinya siapa pun yang tahu nomor HP pelanggan bisa melihat cucian aktifnya. Yang menjaga data pelanggan: nomor HP hanya membuka cucian yang belum selesai, nama pelanggan disamarkan, jawaban tidak memuat harga, nama staf, lokasi atau tautan nota, dan percobaan yang gagal dibatasi per alamat IP.

Kunci situs web terlihat oleh siapa saja yang membuka kode halaman situs Anda, karena itu ia hanya diterima dari alamat yang terdaftar. Simpan kunci aplikasi di server, jangan di kode situs atau di dalam aplikasi ponsel. Permintaan yang membawa kunci aplikasi dari browser ditolak.