Software booking · SaaS

Software booking untuk owner SaaS dan integrator: booking API, webhook, embed

Termilo menyediakan booking API, webhook bertanda tangan, widget embed, dan MCP agar produk SaaS Anda punya booking tanpa membangun ketersediaan, lock slot, deposit, dan notifikasi dari nol. Backend Anda membaca ketersediaan dan membuat booking lewat API v1. Setiap perubahan booking tiba di webhook Anda sebagai salah satu dari tujuh event.

S

Studio Rapi

Booking page demo

Live demo

Diterbitkan 12 September 2026 · Tim Termilo · 3 menit baca

Ringkasan

Ilustrasi booking untuk Owner SaaS, Integrator, Agency

API v1 dengan Idempotency-Key dan webhook tujuh event adalah inti Termilo untuk produk SaaS dan integrator. API mencakup layanan, ketersediaan, booking, dan pelanggan, dengan API key ber-scope. Webhook mengirim event booking dengan tanda tangan, retry sampai enam kali, dan kirim ulang. Widget embed tampil tanpa branding Termilo. Agen AI memakai MCP dengan 22 tool. Termilo tidak menjadi CRM atau payment gateway Anda.

Owner SaaSIntegratorAgency

Kapan pakai booking API, bukan bikin sendiri?

Pakai booking API saat booking bukan diferensiator produk Anda. Jasa pengembangan custom di Indonesia menghitung aplikasi booking di kisaran Rp50-120 juta dan 3-6 bulan (Crocodic, 2026; klaim vendor). Cronofy menyebut penjadwalan sebagai komoditas, bukan diferensiator. Hitungannya: artikel build vs buy.

Komponen booking: bangun sendiri vs Termilo
KomponenBila dibangun sendiriDi Termilo
KetersediaanJam buka, durasi, jeda, jam sibuk kalenderDibaca lewat API
Lock dan holdPermintaan bersamaan, hold menunggu depositCek ulang di bawah lock
DepositGateway, callback, status bayarPer layanan, ke akun bisnis
WebhookTanda tangan, retry, logTujuh event, retry enam kali

Bagaimana cara kerja booking API dalam empat langkah?

01

Baca ketersediaan

02

Buat booking dengan Idempotency-Key

03

Terima booking.created

Backend Anda memakai API v1 dalam empat langkah: buat layanan, baca ketersediaan, buat booking dengan header Idempotency-Key, lalu terima booking.created di webhook. Booking baru dijawab 201; permintaan ulang dengan key yang sama dijawab 200 dengan booking yang sama. Contoh cURL ada di mulai cepat.

  1. Buat layanan dengan durasi, jeda setelah layanan, dan deposit.
  2. Baca ketersediaan untuk tanggal yang dipilih pengguna; slot sudah memperhitungkan jam buka dan jeda.
  3. Buat booking dengan Idempotency-Key. Status awal held bila menunggu deposit atau persetujuan manual, confirmed bila tidak; status akhir completed, cancelled, atau no_show.
  4. Terima booking.created di webhook; booking yang langsung terkonfirmasi juga mengirim booking.confirmed, dan held yang kedaluwarsa mengirim booking.expired (lifecycle booking).

Apa yang Termilo tangani dan apa yang tetap milik produk Anda?

Termilo menangani layanan, ketersediaan, slot, hold, booking, deposit, email konfirmasi, dan webhook. Produk Anda memegang UI, akun pengguna, CRM, billing, dan pipeline penjualan. Termilo bukan CRM, bukan LMS, dan bukan payment gateway (konsep inti).

Apa saja yang ada di REST API v1?

REST API v1 menyediakan endpoint layanan, ketersediaan, booking (buat, batal, jadwal ulang), dan pelanggan. Setiap permintaan membawa Bearer API key dan header ID tenant. API key punya 12 scope dengan rotasi dan masa berlaku. Slot yang sudah terisi dijawab 409. Pembatalan dan jadwal ulang atas nama pelanggan dilakukan backend Anda lewat API (referensi API, autentikasi).

Bagaimana webhook bertanda tangan, retry, dan replay bekerja?

Termilo mengirim tujuh event: booking.created, booking.confirmed, booking.cancelled, booking.rescheduled, booking.completed, booking.no_show, dan booking.expired. Setiap kiriman membawa tanda tangan HMAC dan timestamp; verifikasi dari body mentah. Pengiriman at-least-once: kiriman yang gagal dicoba ulang sampai enam kali dengan jeda mulai satu menit lalu berlipat, dan dapat dikirim ulang dari dashboard (Webhooks, artikel webhook idempotent).

Bagaimana widget embed <termilo-booking> dipasang di produk Anda?

Tempel satu potongan kode custom element termilo-booking di halaman produk. Mode inline menanam form di halaman; mode modal membukanya lewat tombol. Widget berjalan di Shadow DOM, mengikuti warna aksen brand, dan label powered-by dapat dimatikan. Widget memakai API publik yang sama dengan halaman booking (embed di website, pasang widget).

Bagaimana white-label untuk reseller dan platform?

Widget dan halaman booking mengikuti brand bisnis: warna, logo, bentuk, font, dan label powered-by dimatikan. Reseller memasang widget netral di website tiap klien dengan satu potongan kode. Mengelola banyak klien sebagai agency? Hubungi kami. Langkah pemasangan: cara agency memasang widget booking.

Apakah kalender, video, dan deposit ikut jalan tanpa integrasi ulang?

Ya. Jam sibuk di satu Google Calendar yang dihubungkan bisnis menutup slot untuk semua staf; meeting online mendapat link Google Meet. Bisnis menghubungkan satu akun Zoom; setiap booking online membuat meeting Zoom dari akun itu. Deposit per layanan masuk ke akun gateway milik bisnis. Mode persetujuan berlaku untuk semua booking di satu bisnis: setujui otomatis, atau setujui manual dengan slot ditahan 24 jam (Google, Zoom, deposit).

Bagaimana agen AI memakai booking lewat MCP?

Agen AI terhubung lewat MCP dengan 22 tool untuk branding, layanan, booking, dan webhook, dengan API key yang sama. Panduan klien untuk Claude, ChatGPT dan OpenAI, OpenClaw, serta Hermes Agent ada di MCP untuk AI; peta halaman untuk agen: llms.txt.

Apa yang tidak dilakukan Termilo untuk saas?

Termilo mengerjakan

  • Layanan, ketersediaan, slot
  • Lock slot dan hold
  • Booking dan statusnya
  • Deposit per layanan
  • Email konfirmasi
  • Webhook dan MCP

Tidak termasuk

  • CRM dan pipeline penjualan
  • Payment gateway
  • UI dan akun pengguna
  • Webhook masuk
  • SDK, OpenAPI, sandbox
  • Pengiriman pesan WhatsApp
  • Kapasitas per ruang atau resource
  • Link kelola booking pelanggan

Pertanyaan umum

Apa itu booking API?

Booking API adalah antarmuka HTTP untuk membaca ketersediaan dan membuat, mengubah, atau membatalkan booking dari sistem Anda. Termilo menyediakannya pada API v1 dengan endpoint layanan, ketersediaan, booking, dan pelanggan. Akses memakai API key dengan 12 scope yang dapat dirotasi, diberi masa berlaku, dan dicabut kapan saja dari dashboard.

Apa bedanya booking API dengan widget embed?

API dipakai backend Anda untuk mengendalikan booking dari kode. Widget embed adalah UI siap pakai yang dipasang di halaman produk atau website klien dengan satu potongan kode. Keduanya memakai ketersediaan, lock slot, deposit, dan webhook yang sama, sehingga booking dari widget dan dari API tampil di satu dashboard.

Berapa biaya membangun sistem booking sendiri dibanding memakai API?

Jasa pengembangan custom di Indonesia mematok aplikasi booking di kisaran Rp50-120 juta dengan waktu 3-6 bulan menurut Crocodic per 2026; angka itu klaim vendor. Dengan API, tim Anda memakai ketersediaan, lock slot, hold, deposit, email konfirmasi, dan webhook yang sudah berjalan, lalu fokus pada UI dan alur produk Anda sendiri.

Event webhook apa saja yang dikirim?

Tujuh event: booking.created, booking.confirmed, booking.cancelled, booking.rescheduled, booking.completed, booking.no_show, dan booking.expired. Setiap kiriman membawa tanda tangan HMAC dan timestamp untuk verifikasi. Pengiriman yang gagal dicoba ulang sampai enam kali dengan jeda mulai satu menit, dan dapat dikirim ulang dari dashboard. Event pembayaran tidak termasuk.

Bagaimana mencegah booking ganda?

Kirim header Idempotency-Key saat membuat booking. Permintaan ulang dengan key yang sama mengembalikan booking yang sudah ada, bukan booking baru. Slot dicek ulang di bawah lock sebelum disimpan, sehingga dua permintaan bersamaan untuk slot yang sama hanya menghasilkan satu booking. Slot yang sudah terisi menjawab kode 409.

Bagaimana menghindari pemrosesan webhook dua kali?

Simpan id event yang sudah diproses, lalu abaikan kiriman dengan id yang sama. Pengiriman bersifat at-least-once, jadi event yang sama dapat tiba lagi setelah timeout atau kirim ulang manual. Verifikasi tanda tangan dari body mentah sebelum memproses. Balas 2xx hanya setelah event tersimpan di sistem Anda.

Apakah pelanggan produk saya harus punya akun Termilo?

Tidak. Pelanggan membuat booking tanpa akun, cukup nama dan nomor WhatsApp; email opsional. Bila email diisi, pelanggan menerima email konfirmasi, pembatalan, dan perubahan jadwal yang tercatat statusnya. Pembatalan dan jadwal ulang atas nama pelanggan dilakukan backend Anda lewat API v1. Akun Termilo hanya untuk bisnis dan tim Anda.

Apakah widget bisa tampil tanpa branding Termilo?

Bisa. Atur warna aksen mengikuti brand Anda dan matikan label "Powered by". Widget berjalan di Shadow DOM sehingga CSS widget tidak bercampur dengan CSS situs induk. Halaman booking yang dihosting Termilo juga mengikuti warna, logo, bentuk, dan font bisnis. Mengelola banyak klien sebagai agency? Hubungi kami.

Baca juga

Sumber

Mulai booking online untuk saas hari ini

Buat halaman booking gratis