Panduan ini ditujukan untuk Tenant (penyewa agen AI) — owner bisnis, decision maker, non-IT. Untuk dokumentasi teknis lengkap (HMAC, JSON schema, code sample Node.js/Python), bagikan link berikut ke tim IT: Panduan Integrasi API (Teknis)
01 Untuk Siapa Panduan Ini
Panduan ini ditujukan kepada Tenant (penyewa agen AI) yang berlangganan paket berikut:
- EMBAN Customer Service (CS) — agen AI yang melayani customer Bapak/Ibu di WhatsApp/Telegram/Email
- EMBAN Admin Toko Online (SA) — agen AI yang membantu Bapak/Ibu mengelola operasional toko (stock, order, finance internal)
⚠️ Penting: Fitur integrasi API ini HANYA tersedia untuk paket EMBAN Customer Service dan EMBAN Admin Toko Online. Paket EMBAN Personal Assistant (PA Basic / PA Pro) tidak memiliki fitur integrasi API ke sistem eksternal — paket PA fokus pada produktivitas pribadi (catatan, pengingat, finansial pribadi).
Kalau Bapak/Ibu belum yakin paket yang digunakan, tanyakan langsung ke agent EMBAN:
Atau cek di email konfirmasi pendaftaran tenant.
02 Apa Itu Integrasi API
Analogi Sederhana
Bayangkan toko Bapak/Ibu punya dua "ruangan":
- Ruangan depan: tempat customer datang (chat WhatsApp/TG/Email yang ditangani EMBAN)
- Ruangan belakang: sistem internal Bapak/Ibu (ERP, CRM, WMS, dashboard admin, atau Excel digital)
Tanpa integrasi, kedua ruangan tidak terhubung. Customer minta info, agent EMBAN hanya bisa jawab dari SOP yang Bapak/Ibu upload (mis. PDF FAQ produk). Kalau customer tanya "stok kemeja merah size M tinggal berapa?", agent terpaksa bilang "saya cek dulu, mohon tunggu" lalu Bapak/Ibu manual cek di sistem.
Dengan integrasi API, agent bisa langsung "ngintip" ke sistem belakang Bapak/Ibu dan jawab data live. Customer dapat jawaban dalam hitungan detik, Bapak/Ibu tidak perlu intervensi manual.
Manfaat Integrasi
- Kecepatan: customer dapat info real-time tanpa menunggu admin online
- Konsistensi: data yang sama di sistem internal sama dengan yang dijawab agent
- Skalabilitas: 100 customer chat bersamaan, agent handle semua tanpa Bapak/Ibu intervensi
- Audit trail: semua interaksi tercatat di sistem EMBAN + sistem internal Bapak/Ibu
- Eskalasi terstruktur: keluhan customer otomatis masuk ke sistem ticketing internal, bukan tersebar di chat pribadi admin
Glossary Singkat
| Istilah | Arti sederhana |
|---|---|
| API | Cara dua sistem komputer "ngobrol" otomatis tanpa manusia |
| Endpoint | Alamat URL khusus di sistem Bapak/Ibu yang EMBAN panggil |
| Webhook | Kebalikan endpoint — URL di sistem Bapak/Ibu yang menerima kiriman dari EMBAN |
| Tech contact email | Alamat email tim IT atau partner developer Bapak/Ibu |
| Secret | Password rahasia yang dipakai sistem untuk verifikasi pengirim — dipegang tim IT |
| Claim link | Link sekali pakai untuk tim IT mengambil secret dari email |
| HMAC | Cara verifikasi keaslian pengirim (otomatis ditangani sistem, Bapak/Ibu tidak perlu pahami) |
| JSON | Format teks terstruktur yang dipakai sistem komputer untuk tukar data |
03 Kapan TIDAK Perlu Integrasi API
Banyak tenant tidak membutuhkan integrasi API sama sekali. Berikut use case yang bisa di-handle EMBAN tanpa integrasi:
A. Jawab FAQ produk / kebijakan
- Upload PDF/Word berisi FAQ ke EMBAN sebagai SOP
- Agent otomatis cari dan jawab dari isi PDF tsb
- Tidak perlu API — cukup upload dokumen
B. Catat keuangan harian (untuk paket Admin Toko Online)
- Bapak/Ibu chat ke agent: "catat penjualan hari ini Rp 5 juta dari 12 transaksi"
- Agent simpan di database internal EMBAN
- Bisa minta laporan bulanan, P&L, balance sheet — semua tanpa integrasi
C. Eskalasi sederhana ke admin manusia
- Kalau customer minta admin, agent bisa diset untuk forward chat ke nomor WA / email Bapak/Ibu langsung
- Tidak perlu sistem ticketing internal — cukup notifikasi WA/email
D. Catat reminder, kontak, notes
- Built-in tools EMBAN sudah handle ini tanpa integrasi
Pertimbangkan integrasi API kalau:
- Bapak/Ibu sudah punya sistem ERP/WMS/CRM/dashboard internal yang Bapak/Ibu mau EMBAN sync dari sana
- Customer sering tanya info real-time (stock, status order, jadwal servis) yang berubah cepat
- Bapak/Ibu mau structured ticketing untuk keluhan customer (SLA, prioritas, follow-up bertingkat)
- Volume customer cukup besar (>50 chat/hari) sehingga manual intervensi tidak feasible
04 Enam Jenis Integrasi yang Tersedia
💡 Tip cara nyebut agen di prompt: Tenant biasanya panggil agen-nya pakai sapaan singkat seperti "Hi [Nama Agen]" atau langsung "[Nama Agen]" saja (mis. "Hi Asri, saya mau aktifkan Ticketing API..."). Contoh prompt di section ini disederhanakan tanpa kata sapaan supaya fokus ke struktur kalimat utama — Bapak/Ibu boleh tambah sapaan sesuai kebiasaan.
4.1 Tabel Perbandingan Singkat
⚠️ Eligibility paket: Keenam fitur di bawah tersedia untuk paket EMBAN Customer Service dan EMBAN Admin Toko Online. Tidak tersedia untuk paket Personal Assistant.
| # | Fitur | Apa yang EMBAN lakukan | Yang Bapak/Ibu siapkan | Use case typical |
|---|---|---|---|---|
| 1 | Ticketing API | Forward chat customer ke sistem tenant sebagai tiket | URL endpoint terima ticket | Eskalasi keluhan customer ke admin |
| 2 | Query Product Info | Tanya info produk by ID/SKU/nama | Endpoint return product detail | Customer tanya "stok kemeja merah?" |
| 3 | Business Metric | Hitung satu angka (sum, count, avg) | Endpoint return number | "Sales hari ini berapa?" |
| 4 | Business List | List resource paginated | Endpoint return array | "List 10 order pending" |
| 5 | Business Search | Free-text search | Endpoint return matches | "Cari order pak Budi" |
| 6 | Custom Action | Workflow custom apapun (input → process → output) | Endpoint + spesifikasi field | Booking servis, lookup invoice, register member |
💡 Tip: Bapak/Ibu tidak harus aktifkan semua sekaligus. Mulai dari yang paling urgent (biasanya Ticketing untuk CS, atau Business Metric untuk Admin), lalu tambahkan satu per satu.
4.2 Ticketing API
Apa fungsinya?
Setiap kali agent EMBAN dapat chat customer yang perlu eskalasi ke admin manusia (mis. customer marah, complain produk rusak, atau minta sesuatu di luar wewenang agent), agent otomatis kirim data customer + ringkasan masalah ke sistem ticketing internal Bapak/Ibu via API. Tim admin Bapak/Ibu menerima ticket di dashboard internal seperti biasa, bisa balas dari sana, dan balasan otomatis dikirim balik ke chat customer (di channel yang sama: WA / TG / email).
Kapan dipakai?
- Bapak/Ibu sudah punya sistem ticketing internal (Freshdesk, Zendesk, internal CRM, atau custom)
- Mau struktur eskalasi rapi: SLA per prioritas, tim split per kategori, audit trail
- Volume keluhan tinggi sehingga tidak bisa di-handle ad-hoc via chat WA pribadi admin
Apa yang Bapak/Ibu siapkan?
- URL endpoint webhook yang siap terima POST request dari EMBAN (tim IT siapkan)
- Tech email aktif untuk terima claim link secret
- (Opsional) format response yang Bapak/Ibu mau EMBAN kirim balik ke customer ("ticket sudah dibuat, nomor #12345")
Contoh prompt ke agent:
Yang akan terjadi:
- Agent simpan info Bapak/Ibu, kirim notifikasi ke ops Rental AI Indonesia
- Ops verify info + generate secret di admin dashboard, claim link otomatis dikirim ke tech email Bapak/Ibu
- Tim IT klik claim link → dapat secret → deploy ke environment backend
- Test ticket end-to-end dengan customer dummy
- Production-ready
4.3 Query Product Info
Apa fungsinya?
Saat customer tanya info spesifik tentang satu produk (harga, stok, deskripsi, varian, foto), agent EMBAN panggil endpoint Bapak/Ibu untuk dapat data live. Customer dapat jawaban real-time tanpa Bapak/Ibu manual cek.
Kapan dipakai?
- Bapak/Ibu punya katalog produk yang sering update (harga berubah, stok dinamis, varian baru)
- Customer sering tanya tentang produk spesifik
- Bapak/Ibu pakai sistem inventaris atau e-commerce platform yang expose API produk
Apa yang Bapak/Ibu siapkan?
- Endpoint backend yang return data produk berdasarkan ID/SKU/nama
- Decision: format response yang konsisten (price, stock, description, image_url, dll)
Contoh prompt:
Yang akan terjadi:
- Agent simpan info, kirim notifikasi ke ops Rental AI Indonesia
- Ops verify + generate secret, claim link ke tech email
- Tim IT deploy secret + endpoint
- Customer chat "stok kemeja merah size M berapa?" → agent panggil endpoint Bapak/Ibu → return jumlah stok → agent jawab natural ke customer
4.4 Business Metric
Apa fungsinya?
Bapak/Ibu (sebagai tenant) bisa tanya satu angka tunggal ke agent — count, sum, average, percentage, atau duration — yang dihitung dari sistem internal Bapak/Ibu. Agent panggil backend, dapat angka, jawab natural.
Kapan dipakai?
- Bapak/Ibu sering butuh quick metric untuk decision-making (sales hari ini, jumlah order pending, rata-rata waktu resolusi tiket)
- Sistem backend Bapak/Ibu sudah ada query untuk metric tsb (atau gampang dibuat)
- Bapak/Ibu mau dapat angka tanpa buka dashboard manual
Apa yang Bapak/Ibu siapkan?
- Endpoint backend yang terima
metric_name(string) + opsionalfilter_period(today, this_week, this_month, dll) - Endpoint return JSON sederhana:
{ metric_name, value, value_type, label, as_of } - Daftar metric yang Bapak/Ibu mau expose (mis.
total_sales_today,orders_pending,average_resolution_time_hours)
Contoh prompt:
Yang akan terjadi:
- Setup standar (info → ops → secret → tim IT deploy)
- Tim IT register satu action
business_metric(template generic, satu kali setup untuk semua metric) - Bapak/Ibu chat "berapa sales hari ini?" → agent invoke
query_business_metric(metric_name="total_sales_today", filter_period="today")→ backend return angka → agent jawab "Sales hari ini Rp 12.500.000 dari 47 transaksi (per jam 14:30 WIB)"
4.5 Business List
Apa fungsinya?
Bapak/Ibu bisa minta agent list resource dari sistem internal — daftar order, daftar produk, daftar customer, daftar invoice unpaid, dll. Agent panggil backend, dapat array data, sajikan paginated (default 20 per halaman).
Kapan dipakai?
- Bapak/Ibu butuh quick lookup daftar entity (mis. cek 10 order terakhir, list customer top spender)
- Tidak butuh detail lengkap per item — cukup overview (id, title, summary)
- Backend Bapak/Ibu sudah ada endpoint listing dengan pagination
Apa yang Bapak/Ibu siapkan?
- Endpoint backend yang terima
resource(string) +limit+ opsionalcursor(untuk pagination) - Endpoint return JSON:
{ resource, items: [{id, title, summary?, as_of?}], next_cursor?, total? } - Daftar resource yang Bapak/Ibu mau expose (mis.
order_pending,top_customer_30d,low_stock_product)
Contoh prompt:
Yang akan terjadi:
- Setup standar
- Tim IT register action
business_list(template generic) + satu endpoint backend yang handle semua resource - Bapak/Ibu chat "list 5 order pending" → agent invoke
query_business_list(resource="order_pending", limit=5)→ backend return 5 item → agent jawab natural dengan daftar yang formatted
4.6 Business Search
Apa fungsinya?
Bapak/Ibu bisa minta agent cari entity di sistem internal pakai kata kunci bebas — cari produk by nama, cari customer by nama/nomor, cari order by deskripsi, dll. Agent panggil backend search engine, dapat hasil ranked, sajikan ke Bapak/Ibu.
Kapan dipakai?
- Bapak/Ibu sering pakai search untuk lookup ad-hoc (cari produk yang Bapak/Ibu tidak ingat ID-nya, cari customer berdasarkan nama)
- Backend sudah ada full-text search engine (Elasticsearch, MeiliSearch, Algolia, atau database FTS)
- User flow: tipikal "cari [resource] dengan kata [query]"
Apa yang Bapak/Ibu siapkan?
- Endpoint backend yang terima
resource+query(string bebas) +limit - Endpoint return:
{ resource, query, items: [{id, title, summary?, score?}], total_matched?, limit? } - Daftar resource yang searchable (mis.
product,customer,order)
Contoh prompt:
Yang akan terjadi:
- Setup standar
- Tim IT register action
business_search(template generic) + satu endpoint backend - Bapak/Ibu chat "cari produk kemeja batik" → agent invoke
query_business_search(resource="product", query="kemeja batik")→ backend return matches → agent jawab "Saya temukan 3 produk: (1) Kemeja Batik Tulis, (2) Kemeja Batik Cap Pria, (3) ..."
4.7 Custom Action
Apa fungsinya?
Custom Action adalah slot bebas untuk workflow yang tidak masuk kategori 1-5. Bapak/Ibu mendefinisikan: input apa yang dikumpulkan dari customer/owner, validasi field, endpoint backend yang ditembak, dan format response yang dijawab balik. Sangat fleksibel — cocok untuk fitur unik bisnis Bapak/Ibu.
Contoh use case yang sering pakai Custom Action:
- Booking servis (terima nama, nomor, jenis servis, tanggal → POST ke booking system → return nomor booking)
- Cek invoice / status pembayaran (terima nomor invoice → query → return status)
- Register member baru (terima nama, email, nomor, alamat → POST ke CRM → return member ID)
- Lookup waybill / nomor resi (terima resi → query courier API → return status pengiriman)
- Submit klaim garansi (terima detail produk, foto bukti, deskripsi → POST ke claim system → return tracking)
Kapan dipakai?
- Workflow Bapak/Ibu spesifik dan tidak match dengan template generic (metric/list/search)
- Bapak/Ibu mau control penuh atas field yang dikumpulkan + format response
- Tim IT siap menulis JSON definition + endpoint backend custom
Dua Opsi Setup:
Opsi 1: Hanya deskripsi natural — Bapak/Ibu kasih deskripsi awam, lalu agent kasih panduan ke tim IT untuk siapkan JSON definition lengkap. Cocok kalau Bapak/Ibu belum tahu detail teknis.
Opsi 2: Deskripsi + JSON definition lengkap — Tim IT Bapak/Ibu sudah siapkan JSON action definition (lihat panduan teknis untuk tim IT section "Action Engine"). Bapak/Ibu paste langsung ke chat, agent register tanpa perlu klarifikasi.
Contoh prompt — Variasi 1: Booking servis (natural)
Agent akan respon kira-kira: "Baik Pak. Saya akan teruskan ke tim ops Rental AI Indonesia. Untuk action ini, tim IT Bapak perlu siapkan endpoint POST yang terima JSON dengan field nama, nomor HP, jenis servis (enum), tanggal. Saya kirim panduan teknis JSON definition ke [email protected] supaya tim IT bisa langsung implement..."
Contoh prompt — Variasi 2: Cek invoice (natural)
Contoh prompt — Variasi 3: Text + paste JSON definition
Kalau tim IT Bapak/Ibu sudah siapkan JSON, Bapak/Ibu cukup paste:
Contoh JSON definition booking servis:
{
"name": "book_service",
"description": "Booking servis motor untuk customer bengkel.",
"schema_version": "1.0",
"trigger_hints": ["booking", "servis", "service"],
"fields": {
"service_type": {
"type": "enum_single",
"required": true,
"ask": { "id": "Jenis servis yang diinginkan?" },
"options": [
{ "value": "ringan", "label": { "id": "Servis Ringan" } },
{ "value": "besar", "label": { "id": "Servis Besar" } },
{ "value": "ganti_oli", "label": { "id": "Ganti Oli Saja" } }
]
},
"service_date": {
"type": "date",
"required": true,
"ask": { "id": "Tanggal servis? (YYYY-MM-DD)" }
},
"customer_phone": { "type": "phone", "autofill": "$sender.platform_id" },
"customer_name": {
"type": "text",
"required": true,
"ask": { "id": "Nama Bapak/Ibu?" }
}
},
"endpoint": {
"method": "POST",
"url": "https://bengkel.toko.com/api/booking",
"auth": { "type": "hmac_sha256", "secret_env": "EMBAN_BOOK_SERVICE_SECRET" },
"timeout_ms": 8000,
"retry": { "max": 3, "backoff": "exponential" }
},
"response": {
"mode": "async",
"immediate_ack": { "id": "Booking sedang diproses, mohon tunggu sebentar..." },
"success_template": { "id": "OK Pak/Bu! Booking #{{booking_id}} dikonfirmasi untuk {{service_date}}." },
"error_templates": {
"fully_booked": { "id": "Maaf, slot {{service_date}} sudah penuh. Mau coba tanggal lain?" },
"default": { "id": "Maaf ada error: {{error_message}}. Coba lagi atau hubungi admin." }
}
}
}
Yang akan terjadi:
- Agent baca JSON, validate schema (kalau ada error, agent kasih tahu Bapak/Ibu)
- Action ter-register di sistem EMBAN
- Tim IT dapat email claim link untuk secret
- Tim IT deploy secret ke env backend (
EMBAN_BOOK_SERVICE_SECRETdi server bengkel) - Test: customer chat "mau booking servis besar untuk Senin" → agent collect field → invoke action → backend respond → customer dapat konfirmasi nomor booking
💡 Catatan: Untuk Opsi 2 (paste JSON), kalau tim IT belum familiar dengan JSON definition, mereka bisa baca dulu panduan teknis untuk tim IT — ada section "Action Engine" + reference implementation Node.js + Python.
05 Alur Setup End-to-End
Dari sudut pandang Bapak/Ibu sebagai tenant:
- STEP 1: Bapak/Ibu chat ke agent
"Saya mau setup [Ticketing/Product Info/dll]. Tech email: [email protected]. URL endpoint: https://..."
Durasi: ~5 menit - STEP 2: Agent persist info + notify ops Rental AI Indonesia via Telegram
Otomatis. Bapak/Ibu tidak perlu lakukan apa-apa.
Durasi: instan - STEP 3: Ops Rental AI Indonesia verify + generate secret
Tim ops cek info, klik tombol Generate ticket secret di admin dashboard. Claim link otomatis dikirim ke tech email Bapak/Ibu.
Durasi: dalam 1 hari kerja (biasanya beberapa jam) - STEP 4: Agent push notifikasi ke Bapak/Ibu di Telegram
"Pak, secret sudah dikirim ke [email protected]. Tim IT klik link claim, deploy ke backend. Setelah itu ticket API siap test."
Otomatis. Bapak/Ibu tahu progress tanpa polling. - STEP 5: Tim IT Bapak/Ibu klik claim link, dapat secret
Tim IT deploy secret ke environment variable backend toko Bapak/Ibu (mis.EMBAN_TICKET_WEBHOOK_SECRET).
Durasi: 1-2 hari (tergantung availability tim IT + complexity) - STEP 6: Test end-to-end
Bapak/Ibu atau tim IT trigger test scenario (mis. customer dummy chat, tanya stok produk). Konfirmasi data ngalir benar. Production-ready.
Durasi: 1-2 jam test
Estimasi total: 2-3 hari kerja dari pertama Bapak/Ibu chat sampai production-ready (asumsi tim IT responsif). Bisa lebih cepat (1 hari) kalau semua pihak available, atau lebih lama (1 minggu) kalau ada iterasi schema atau backend belum siap.
Kapan Bapak/Ibu perlu re-trigger / update?
- Ganti URL endpoint: chat ke agent "update webhook URL ke https://..." — agent update otomatis, ops re-notify
- Ganti tech email: sama, "update tech email ke ..." — agent update
- Rotate secret (security best practice atau IT pindah server): minta ops via email/Telegram — ops klik tombol Rotate di dashboard, claim link baru dikirim, secret lama tetap valid 24 jam (grace period untuk deploy tanpa downtime)
06 Apa yang Perlu Disiapkan Sebelum Mulai
Sebelum chat ke agent untuk setup integrasi, pastikan Bapak/Ibu sudah punya:
A. Tim IT atau partner developer
Wajib. Integrasi API butuh tim IT yang bisa:
- Tulis backend API endpoint yang menerima request HTTP POST
- Verify HMAC signature (untuk security)
- Deploy environment variable secret ke server
Kalau Bapak/Ibu belum punya tim IT:
- Hubungi ops Rental AI Indonesia untuk rekomendasi partner developer lokal yang familiar dengan EMBAN integration
- Atau pertimbangkan pakai platform no-code (Zapier, Make.com, n8n) — beberapa skenario sederhana bisa di-handle tanpa custom code
B. Tech contact email
Email aktif tim IT atau partner developer yang akan terima claim link secret. Pastikan inbox tsb di-monitor — claim link berlaku terbatas (default 7 hari, bisa expire kalau tidak diklik).
C. URL endpoint webhook (kalau pakai Ticketing API atau action)
URL HTTPS yang siap menerima POST request dari EMBAN. Tim IT setup ini di server backend Bapak/Ibu.
Format URL:
- HARUS HTTPS (HTTP plain ditolak untuk security)
- Public-accessible (bukan localhost atau IP private)
- Stable (jangan ganti tiap deploy — kalau ganti, harus update ke EMBAN)
Contoh format yang valid:
https://api.toko.com/emban/tickethttps://erp.toko.com/integrations/emban/v1/incominghttps://app.toko.com/api/emban/webhook
D. Decision: fitur mana yang aktif
Lihat tabel di Section 4.1. Bapak/Ibu tidak harus aktifkan semua sekaligus — mulai dari 1-2 fitur paling urgent.
E. Backend tenant yang capable
Pastikan backend Bapak/Ibu:
- Bisa accept HTTPS POST request
- Punya storage/database untuk simpan ticket / data dari EMBAN (kalau pakai Ticketing API)
- Punya tim/proses yang akan respond ke ticket (kalau pakai Ticketing — EMBAN cuma forward, balesannya tetap dari tim Bapak/Ibu)
07 Cerita Use Case Konkret
Cerita 1: Pak Budi — Toko Online Fashion (paket CS)
Pak Budi punya toko online fashion. Setiap hari customer chat di WhatsApp:
- Beberapa tanya FAQ (cara order, ongkir, return policy) → agent jawab dari SOP
- Beberapa tanya stok produk spesifik → kalau gak ada integrasi, agent harus jawab "saya cek dulu"
- Beberapa complain (barang sampai rusak, salah size) → harus diteruskan ke admin
Sebelum integrasi:
- Pak Budi screen-by-screen monitor WA, manual cek stok, manual forward complain ke tim CS via grup WA
- Customer tunggu rata-rata 2-3 jam untuk dapat balasan stok / complain ditangani
- Tim CS Pak Budi tersebar di 3 grup WA, complain mudah hilang
Setelah integrasi (Ticketing API + Query Product Info):
- Customer tanya "stok kemeja batik biru size L masih?" → agent panggil API toko Pak Budi → return "Stok 12 piece, harga Rp 250.000, free ongkir Jabodetabek" (3 detik)
- Customer complain "barang sampai rusak" → agent invoke Ticketing API → ticket masuk dashboard internal Pak Budi, tim CS handle dari sana, balasan otomatis dikirim ke customer di WA
- Pak Budi cuma cek dashboard internal seperti biasa, tidak perlu monitor WA satu-satu
Hasil: customer satisfaction naik (response time turun dari 3 jam ke <5 menit), Pak Budi bisa fokus strategi bisnis bukan firefighting.
Cerita 2: Bu Sari — Toko Sembako Online (paket Admin Toko Online)
Bu Sari punya toko sembako online. Operasional harian: track order, monitor stock, kelola customer loyalty, generate laporan.
Sebelum integrasi:
- Pagi-pagi Bu Sari buka 3 tab dashboard (WMS, e-commerce platform, Excel keuangan) untuk dapat overview
- Setiap minggu manual generate laporan sales + bandingkan vs target
- Kalau mau cari order spesifik (mis. order pak Andi yang complain), harus search manual di dashboard e-commerce
Setelah integrasi (Business Metric + Business List + Business Search):
- Pagi-pagi Bu Sari chat agent: "sales kemarin berapa? Berapa order pending? Stok beras 5kg tinggal berapa?" → agent panggil 3 endpoint, jawab semua dalam satu pesan
- Mau cari order pak Andi: "cari order pak Andi" → agent invoke search → return 3 order terbaru pak Andi dengan ringkasan
- Mau lihat 10 customer top spender: "list top 10 customer bulan ini" → agent invoke list → tampilkan ranked
Hasil: Bu Sari dapat overview operasional cuma dengan ngobrol sama agent, save 1-2 jam/hari dari manual checking.
Cerita 3: Toko Otomotif — Workshop Motor (paket CS + Custom Action)
Toko ini punya workshop servis motor. Customer sering booking servis via WA. Dulu manual: customer chat, admin balas, tanya tanggal, tanya jenis servis, catat di buku, balas konfirmasi. Repeat ratusan kali per minggu.
Setup: Custom Action book_service dengan field jenis servis (enum), tanggal, nama customer, nomor HP. Endpoint terhubung ke booking system internal.
Setelah integrasi:
- Customer chat "booking servis besar untuk Senin depan, motor saya Vario" → agent collect field yang missing (cuma nomor HP kalau belum dapat) → invoke action → backend assign slot → customer dapat balasan "OK Pak! Booking #BK-2345 dikonfirmasi untuk Senin 12 Mei jam 09:00. Mohon datang 15 menit sebelum jadwal."
- Tim mekanik lihat dashboard internal dengan booking yang sudah ter-organize per slot waktu
Hasil: booking tidak ada yang tercecer, slot terisi optimal, admin tidak perlu manual transcribe chat.
08 Privacy & Security
Apa yang EMBAN kirim ke sistem Bapak/Ibu?
Hanya yang relevan dengan request. Contoh:
- Untuk Ticketing API: customer chat content + customer ID (WA number / TG handle / email) + ringkasan masalah
- Untuk Query Product Info: kata kunci pencarian / ID produk
- Untuk Business Metric: nama metric + filter period
- Untuk Custom Action: hanya field yang Bapak/Ibu definisikan di JSON action
EMBAN TIDAK kirim:
- Data customer lain yang tidak relevan
- Data tenant Rental AI Indonesia lain
- Internal AI processing data
Apa yang EMBAN TIDAK akses dari sistem Bapak/Ibu?
EMBAN hanya akses yang Bapak/Ibu explicitly expose lewat endpoint. Bapak/Ibu control 100%:
- Kalau Bapak/Ibu cuma expose endpoint product search → EMBAN cuma bisa search produk, tidak bisa baca order, customer, dll
- EMBAN tidak punya credential database Bapak/Ibu
- EMBAN tidak install agent/plugin di server Bapak/Ibu
- Setiap call ke endpoint Bapak/Ibu ada audit log di sisi Bapak/Ibu (siapa, kapan, request body)
Bagaimana memastikan request beneran dari EMBAN?
Setiap call dari EMBAN ke endpoint Bapak/Ibu di-sign dengan HMAC signature menggunakan secret rahasia yang HANYA Bapak/Ibu (via tim IT) yang punya. Tim IT Bapak/Ibu verify signature di endpoint sebelum proses request — kalau invalid (request palsu dari attacker), backend reject otomatis.
Detail teknis di panduan untuk tim IT section "Authentication".
Apa yang terjadi kalau secret bocor?
- Hubungi ops Rental AI Indonesia segera
- Ops klik Rotate ticket secret di admin dashboard
- Secret baru dikirim ke tech email Bapak/Ibu via claim link
- Tim IT deploy secret baru
- Secret lama tetap valid 24 jam (grace period untuk deploy tanpa downtime)
- Setelah 24 jam, secret lama auto-invalid
Data customer kemana?
- Customer chat → EMBAN process via LLM (model AI yang Rental AI Indonesia sediakan)
- Beberapa info di-forward ke endpoint Bapak/Ibu sesuai action yang ter-trigger
- Conversation history disimpan per-tenant DB (di server Rental AI Indonesia), terisolasi dari tenant lain
- Bapak/Ibu bisa request export atau delete data via ops Rental AI Indonesia sesuai PDP Indonesia (Undang-undang Pelindungan Data Pribadi)
09 FAQ Tenant
Q1: Saya gak punya tim IT. Gimana?
Beberapa opsi:
- Hubungi ops Rental AI Indonesia untuk rekomendasi partner developer lokal yang familiar dengan EMBAN integration
- Pakai platform no-code seperti Zapier, Make.com, atau n8n — bisa terima webhook EMBAN, route ke berbagai sistem (Google Sheets, Slack, Notion, dll) tanpa coding. Cocok untuk Ticketing API skenario sederhana
- Mulai dari fitur tanpa integrasi — upload SOP, pakai built-in tools (record_sale, dll). Tunggu sampai Bapak/Ibu siap invest tim IT
Q2: Berapa biaya integrasi API?
API call dari EMBAN ke endpoint Bapak/Ibu gratis (sudah include dalam paket). Bapak/Ibu bayar untuk:
- Hosting backend: server tempat endpoint Bapak/Ibu berjalan (Bapak/Ibu sudah punya kalau sudah punya ERP/website)
- Tim IT / partner developer: jasa setup awal (one-time + maintenance kalau ada)
Tidak ada per-call charge atau hidden cost dari Rental AI Indonesia.
Q3: Berapa lama sampai production-ready?
Estimasi 2-3 hari kerja dari pertama chat ke agent sampai siap production. Detail breakdown ada di section 5. Faktor yang mempengaruhi:
- Availability tim IT (kalau slot dev banyak, bisa 1 hari)
- Complexity action (Ticketing simpler vs Custom Action multi-field complex)
- Iterasi schema (kalau response format perlu adjust setelah test)
Q4: Bisa pakai integrasi dengan Shopify / Tokopedia / Shopee / Lazada?
Tergantung platform. Shopify support custom webhook dengan API yang fleksibel, biasanya bisa setup. Tokopedia/Shopee/Lazada lebih restricted (marketplace dengan API terbatas) — perlu konsultasi case-by-case dengan ops Rental AI Indonesia.
Kalau Bapak/Ibu pakai marketplace, fitur yang biasanya bisa dipakai:
- Ticketing API — kalau marketplace expose webhook untuk message, bisa di-bridge
- Query Product Info — kalau marketplace expose product API
Yang biasanya TIDAK bisa:
- Modify order langsung (marketplace control checkout)
- Update inventaris real-time (marketplace cache stok)
Q5: Kalau ada error / spec berubah, gimana?
Workflow update:
- Update URL endpoint: chat agent "update webhook URL ke https://..." — agent panggil tool, otomatis update
- Update tech email: sama, "update tech email ke ..."
- Update field action: tim IT update JSON definition, paste ulang ke chat. Agent register version baru, version lama auto-archive
- Rotate secret: hubungi ops via Telegram, ops klik Rotate, claim link baru dikirim, secret lama valid 24 jam grace
Custom Action support versioning — setiap re-register bumps version. Tim IT bisa rollback ke version lama kalau perlu (via tool activate_tenant_action ke ID lama).
Q6: Apakah customer tahu kalau request mereka di-forward ke sistem saya?
Customer dapat balasan dari agent EMBAN seperti biasa. Dari sudut pandang customer, tidak ada perubahan UX — agent jawab natural. Yang berbeda hanya kecepatan dan akurasi balasan (karena data live dari sistem Bapak/Ibu).
Untuk Ticketing API, customer tahu masalahnya "diteruskan ke admin" karena agent bilang "Saya teruskan ke tim admin, mohon ditunggu balasannya dalam beberapa jam" — itu UX standar ticketing.
Q7: Apakah saya bisa nonaktifkan integrasi sementara?
Ya. Beberapa cara:
- Soft-disable per fitur: chat agent "archive action [nama]" — action ter-archive, tidak bisa dipanggil customer/owner sampai re-activate
- Clear webhook URL: chat agent "hapus webhook URL" (kosongkan field) — Ticketing API tidak fire sampai URL di-set lagi
- Hard-disable: hubungi ops Rental AI Indonesia minta disable temporarily
Setelah ready re-enable, cukup minta agent re-config (URL + activate action) — secret tetap valid (kecuali Bapak/Ibu rotate).
Q8: Apakah saya bisa lihat log API call?
- Sisi Bapak/Ibu: tim IT setup logging di backend, lihat semua incoming request dari EMBAN di sana
- Sisi EMBAN: ops Rental AI Indonesia punya dashboard internal yang track action submission status (delivered / failed / retried). Kalau perlu detail debug, hubungi ops dengan reference ID action
Untuk audit lengkap, recommended Bapak/Ibu enable structured logging di backend tim IT.
Q9: Saya pakai paket Personal Assistant. Bisa pakai integrasi API?
Tidak. Fitur integrasi API HANYA tersedia untuk paket EMBAN Customer Service dan EMBAN Admin Toko Online. PA fokus pada produktivitas pribadi (catatan, pengingat, finansial pribadi, image generation untuk PA Pro) dan tidak punya use case yang butuh integrasi ke sistem business eksternal.
Kalau Bapak/Ibu owner UMKM yang sudah pakai PA dan ingin upgrade ke business plan, hubungi ops Rental AI Indonesia untuk konsultasi paket yang sesuai.
Q10: Saya cek dashboard ops, kenapa info saya belum kelihatan?
Beberapa kemungkinan:
- Submit info sukses tapi notifikasi ke ops tertunda (Telegram bot delay) — ops biasanya cek dashboard 1-2 hari kerja
- URL atau email yang Bapak/Ibu submit format invalid — agent kasih tahu langsung kalau invalid (cek balasan agent terakhir)
- Ada bug — hubungi ops Rental AI Indonesia dengan timestamp + nama tenant Bapak/Ibu
Untuk cek status, chat agent: "cek status integrasi saya" — agent invoke check_integration_status, return state lengkap (incomplete / awaiting_ops / ready) + nilai field saat ini.
10 Quick-start Checklist
Sebelum chat ke agent untuk setup integrasi, pastikan:
- Paket: Saya pakai EMBAN Customer Service atau EMBAN Admin Toko Online
- Decision: Saya sudah pilih fitur yang mau aktif (lihat tabel section 4.1)
- Tim IT: Saya punya tim IT atau partner developer yang siap setup
- Tech email: Saya punya email aktif tim IT yang siap terima claim link
- URL endpoint: Tim IT sudah siapkan URL HTTPS endpoint backend (atau siap setup)
- Backend ready: Backend siap accept HTTPS POST + verify HMAC signature
- Storage/proses: Tim Bapak/Ibu siap handle data yang masuk (mis. balas ticket dari dashboard internal)
Setelah semua ✓, chat agent dengan template:
Agent akan panggil submit_integration_info, persist ke database, notify ops Rental AI Indonesia. Lanjutkan ke step 3+ alur setup.
11 Referensi untuk Tim IT Bapak/Ibu
Bagikan link berikut ke tim IT atau partner developer:
Doc tsb berisi:
- HMAC signature computation (Node.js + Python sample)
- JSON action definition schema lengkap
- Callback API spec (untuk async response)
- Ticketing API contract
- Action engine deep-dive
- File delivery API
- Error code mapping
- Reference implementation Node.js Express
Tim IT cukup baca section yang relevan dengan fitur yang Bapak/Ibu aktifkan — biasanya 2-3 jam reading + 1-2 hari coding untuk setup pertama kali.
Bantuan & Kontak
- Rental AI Indonesia: https://www.rentalai.id
- Ops support: hubungi via channel yang sudah disediakan saat onboarding tenant
- Pertanyaan integrasi: chat ke agent EMBAN Bapak/Ibu — "saya mau tanya tentang integrasi API" — agent akan kasih panduan atau eskalasi ke ops kalau perlu
- Email: [email protected]
- WhatsApp: +62 813-2049-505
Versi: 1.0 (Mei 2026). Dokumen ini akan di-update saat ada fitur integrasi baru atau perubahan alur setup.