Modul Pelanggan & Loyalty Points API v1.0
Manajemen Akun Pelanggan & Saldo Poin Reward
Integrasikan database member pelanggan, cek saldo loyalitas, dan sesuaikan poin reward (tambah bonus atau redeem reward) secara langsung dari aplikasi luar via API.
1. Daftar Pelanggan & Saldo Poin Member
GET
https://toko.rumren.id/api?action=external_customers_list&q=budi&limit=20
Parameter Query:
| Parameter | Tipe | Status | Keterangan |
|---|---|---|---|
| q | string | Opsional | Kata kunci nama, nomor WhatsApp, email, atau Member ID. |
| limit | integer | Opsional | Batas jumlah pelanggan (default: 20, max: 100). |
| page | integer | Opsional | Halaman paginasi (default: 1). |
Contoh Response Sukses (200 OK):
Status: 200 OK
{
"status": "success",
"total": 1,
"page": 1,
"limit": 20,
"customers": [
{
"id": 8,
"member_id": "MBR-00008",
"name": "Budi Santoso",
"phone": "081234567890",
"email": "budi@example.com",
"points_balance": 150,
"address": "Jakarta Selatan",
"created_at": "2026-09-01 10:15:00"
}
]
}
2. Profil Member, Histori Transaksi & Log Poin
GET
https://toko.rumren.id/api?action=external_customer_detail&phone=081234567890
Endpoint ini mengembalikan profil lengkap member, saldo poin aktif, riwayat 5 transaksi terakhir, dan buku log riwayat perolehan/pemakaian poin.
Parameter Query (Gunakan salah satu):
| Parameter | Tipe | Status | Keterangan |
|---|---|---|---|
| phone | string | Opsional | Nomor WhatsApp / HP member (contoh: 081234567890). |
| member_id | string | Opsional | Kode kartu member (contoh: MBR-00008). |
| id | integer | Opsional | ID numerik akun member. |
| string | Opsional | Alamat email terdaftar pelanggan. |
Contoh Response Sukses (200 OK):
Status: 200 OK
{
"status": "success",
"customer": {
"id": 8,
"member_id": "MBR-00008",
"name": "Budi Santoso",
"phone": "081234567890",
"email": "budi@example.com",
"points_balance": 150,
"address": "Jakarta Selatan",
"recent_orders": [
{
"id": 142,
"order_no": "2609LKAB",
"total_amount": 56000,
"order_status": "confirmed",
"payment_status": "paid",
"created_at": "2026-09-23 13:40:00"
}
],
"points_history": [
{
"id": 24,
"type": "add",
"points": 50,
"balance_after": 150,
"description": "Bonus reward event ulang tahun toko",
"created_at": "2026-09-23 12:00:00"
}
]
}
}
3. Penyesuaian Saldo Poin (Tambah / Potong Poin)
POST
https://toko.rumren.id/api?action=external_customer_adjust_points
Parameter Payload JSON (Body):
| Field | Tipe | Status | Keterangan |
|---|---|---|---|
| phone | string | Wajib* | Nomor WhatsApp member (*atau sertakan member_id / id). |
| type | string | Wajib | Tipe perubahan: add (tambah poin) atau deduct (potong poin). |
| points | integer | Wajib | Jumlah poin (harus bilangan bulat positif > 0). |
| reason | string | Opsional | Catatan deskripsi alasan penyesuaian poin. |
Contoh Request Payload JSON:
Content-Type: application/json
{
"phone": "081234567890",
"type": "add",
"points": 50,
"reason": "Bonus reward event ulang tahun toko"
}
Contoh Response Sukses (200 OK):
Status: 200 OK
{
"status": "success",
"message": "Saldo poin berhasil ditambahkan sebanyak 50 poin.",
"customer": {
"id": 8,
"member_id": "MBR-00008",
"name": "Budi Santoso",
"phone": "081234567890",
"points_balance": 150
}
}