Bikin sistem booking sendiri atau pakai booking API: hitungan untuk owner SaaS

Tim Termilo · Diterbitkan 12 September 2026 · 5 menit baca

Catatan

Membangun booking sendiri berarti membangun ketersediaan, lock slot, hold, deposit, notifikasi, dan webhook, lalu memeliharanya. Jasa custom di Indonesia mematok aplikasi dengan booking di kisaran Rp150-400 juta dan 3-6 bulan. Memakai API masuk akal bila booking bukan diferensiator produk Anda; membangun sendiri masuk akal bila alur booking adalah inti produk.

Apa saja komponen booking yang sering diremehkan?

Dari luar, booking adalah satu form dan satu tabel jadwal. Yang tidak terlihat: slot dihitung dari jam buka, durasi, dan jeda; dua permintaan bersamaan berebut satu kunci; hold harus kedaluwarsa sendiri; deposit mengikat slot; email tercatat statusnya; dan webhook dicoba ulang saat penerima gagal. Tabel berikut memetakan tiap komponen ke pekerjaan Anda dan ke padanannya di Termilo.

Komponen booking: pekerjaan bila dibangun sendiri dan padanannya di Termilo
KomponenBila dibangun sendiriDi Termilo
KetersediaanJam buka, durasi, jeda, tanggal libur, jam sibuk kalender, zona waktuDibaca lewat API per layanan dan rentang tanggal
Lock slotDua permintaan bersamaan untuk jam yang sama, satu bookingSlot dicek ulang di bawah lock; slot terisi dijawab 409
Hold dan kedaluwarsaSlot ditahan, lalu dilepas otomatis bila tidak dibayar atau disetujuiHold 10 menit menunggu deposit, 24 jam menunggu persetujuan manual
IdempotensiPermintaan ulang karena timeout tidak boleh membuat booking keduaHeader Idempotency-Key: 201 untuk booking baru, 200 untuk replay
DepositIntegrasi gateway, callback pembayaran, status bayar terikat ke slotPer layanan: tanpa, nominal tetap, atau persentase; masuk ke akun gateway milik bisnis
Email transaksiTemplate, pengiriman, log status, salinan ke pemilik bisnisEmail konfirmasi, pembatalan, dan perubahan jadwal; setiap email tercatat statusnya
Webhook keluarTanda tangan, retry dengan jeda berlipat, kirim ulang, log pengirimanTujuh event, tanda tangan HMAC, retry sampai enam kali, kirim ulang dari dashboard
Kalender dan videoOAuth Google dan Zoom, pembaruan token, acara dan link meetingGoogle Calendar (jam sibuk, acara, link Meet) dan Zoom, satu koneksi per bisnis

Berapa biaya dan waktu membangun sistem booking sendiri?

Dua vendor aplikasi di Indonesia memublikasikan kisaran harganya. Crocodic (28 Juli 2026) menaruh aplikasi dengan payment, booking, multi-role, notifikasi, dan API di kelas aplikasi bisnis menengah: Rp150-400 juta, 3-6 bulan. Albatech (18 April 2026) menempatkan booking atau reservation system di kelas yang sama: Rp150-400 juta, 3-5 bulan. Keduanya klaim vendor tanpa sumber primer, dan berhenti di hari rilis.

Pembanding harga beli di pasar global: blog Cal.com (23 Juni 2026) menulis paket Platform Starter gratis sampai 25 booking per bulan, Essentials mulai USD 299 per bulan, Scale mulai USD 2.499 per bulan (klaim vendor). Termilo: Gratis untuk mulai. Tanpa kartu kredit.

Berapa biaya memelihara sistem booking: OPEX dan on-call?

Crocodic memisahkan server, domain, dan maintenance sebagai biaya setelah rilis: server mulai Rp2 juta per bulan, domain sekitar Rp500 ribu per tahun, dan maintenance yang besarnya bergantung pada kompleksitas, SLA, jumlah pengguna, dan layanan pihak ketiga (klaim vendor). Untuk booking, pos ketiga paling sering meleset: empat pekerjaan berikut jarang masuk estimasi awal.

  • Kalender dan video: token OAuth Google dan Zoom harus diperbarui otomatis, dan aplikasi OAuth Anda harus melewati verifikasi Google.
  • Zona waktu dan tanggal libur: slot dihitung dalam zona waktu bisnis, dan tanggal libur harus dapat ditutup tanpa rilis kode.
  • Webhook: penerima yang mati harus dicoba ulang dengan jeda berlipat, dan tim CRM akan meminta kirim ulang manual.
  • On-call: satu bug pada lock slot berarti dua pelanggan datang pada jam yang sama, dan yang menelepon adalah pelanggan klien Anda.

Cronofy, penyedia scheduling API, menyebut penjadwalan sebagai komoditas: perlu ada, tetapi tidak menjadi diferensiator inti produk (klaim vendor). Setiap jam developer untuk memelihara booking adalah jam yang hilang dari fitur yang membedakan produk Anda.

Kapan membangun sendiri masuk akal?

Membangun sendiri masuk akal bila alur booking adalah inti produk Anda, bukan pelengkap modul lain. Jawab lima pertanyaan di tabel ini; kolom tempat sebagian besar jawaban Anda jatuh adalah keputusannya.

Lima pertanyaan untuk memutuskan membangun sendiri atau memakai booking API
PertanyaanBangun sendiri bilaPakai booking API bila
Apakah booking membedakan produk Anda?Ya; aturan slot unik adalah alasan pelanggan membayarTidak; booking melengkapi modul lain
Seberapa sering aturan bisnis berubah?Tiap minggu, dengan kode khususAturan umum: durasi, jeda, jam buka, deposit, persetujuan
Apa yang dipesan?Kursi, ruang, atau kuota per sesiLayanan dengan staf yang dipilih sistem
Di mana data booking hidup?Di skema database Anda sendiri sejak awalDibaca lewat API, diterima lewat webhook, disalin ke CRM
Siapa yang menjaga setelah rilis?Ada developer yang memegang lock, hold, dan webhookTim fokus ke UI dan alur produk

Lebih banyak di kolom tengah: bangun sendiri. Lebih banyak di kolom kanan: pakai API; halaman software booking untuk SaaS merinci apa yang tersedia dan apa yang tidak.

Bagaimana alur empat langkah dengan booking API?

Dengan Termilo, backend produk Anda memakai API v1 dalam empat langkah. Nama menu di bawah adalah nama yang tampil di dashboard.

  1. Buat API key: buka Dashboard → Developer → API keys, klik Buat API key, isi Nama key, pilih Scope Booking · tulis, lalu salin secret yang hanya ditampilkan sekali. Kirim key sebagai Bearer bersama header X-Termilo-Tenant-Id (autentikasi).
  2. Baca ketersediaan: minta slot untuk satu layanan dan satu rentang tanggal. Slot yang kembali sudah memperhitungkan jam buka, durasi, jeda, tanggal libur, dan jam sibuk Google Calendar. Slot adalah kandidat; keputusan final terjadi saat booking dibuat (referensi API).
  3. Buat booking dengan header Idempotency-Key: kirim layanan, jam mulai, dan data pelanggan (nama, nomor WhatsApp, email opsional). Jawaban 201 berarti booking baru; permintaan ulang dengan key yang sama dijawab 200 dengan booking yang sama; slot yang keburu terisi dijawab 409. Status awal held bila menunggu deposit atau persetujuan manual, confirmed bila tidak.
  4. Terima booking.created di webhook: buka Dashboard → Developer → Webhooks, klik Tambah endpoint, isi URL endpoint (harus HTTPS), klik Simpan endpoint, lalu simpan signing secret yang ditampilkan sekali. Verifikasi X-Termilo-Signature dari body mentah dan simpan X-Termilo-Event-Id agar kirim ulang tidak diproses dua kali (Webhooks). Booking yang langsung terkonfirmasi juga mengirim booking.confirmed; hold yang kedaluwarsa mengirim booking.expired.

Pembatalan dan jadwal ulang atas nama pelanggan dilakukan backend Anda lewat API v1. Agen AI memakai alur yang sama lewat MCP dengan 22 tool (MCP untuk AI). Untuk UI siap pakai tanpa kode backend, pasang widget embed inline atau modal dengan warna aksen brand dan tanpa label powered-by (embed di website).

Apa yang tetap milik produk Anda?

Termilo mengurus layanan, ketersediaan, slot, lock, hold, booking dan statusnya, deposit, email konfirmasi, dan webhook. Produk Anda tetap memegang UI, akun pengguna, CRM, billing, dan pipeline penjualan. Pemetaan tujuh event ke contact, activity, dan deal ada di artikel booking event yang masuk CRM; pola handler yang aman terhadap kiriman ganda ada di artikel webhook idempotent.

Batas sistem

Termilo bukan CRM, bukan payment gateway, dan bukan UI produk Anda. Kapasitas per ruang, stall, atau lapangan tidak termasuk. Pengingat terjadwal sebelum jadwal bukan bagian Termilo. Mengelola banyak klien sebagai agency? Hubungi kami.

Bisnis jasa memakai booking yang sama lewat halaman booking dan widget, tanpa API: lihat hub software booking.

Sumber

Baca juga

Vertikal

Mulai booking online untuk bisnis Anda hari ini

Buat halaman booking gratis