Skip to content

Booking

Melakukan recheck dan booking.


Session

Endpoint ini membutuhkan session. Gunakan Inisiasi untuk mendapatkan session.

Info

Booking secara otomatis melakukan recheck untuk memastikan ketersediaan kamar dan tarif kamar.

Method Endpoint
POST https://api.digiflazz.com/v1/hotel/booking

Request Parameter

Sign additional value: hotel.booking + ref_id

Parameter Deskripsi Type Required/Optional
session Sesi pencarian string Required
group_id ID tarif string Required
ref_id Unik id dari Anda. Digunakan untuk melakukan cek status string Required
pax Objek tamu utama object
pax.salutation Sapaan tamu utama
- Mr
- Mrs
- Ms
string Required
pax.first_name Nama depan tamu utama string Required
pax.last_name Nama belakang tamu utama string Required
request_notes Notes kepada pemilik properti string optional
auto_allow_price_change Opsi tindakan jika terjadi perubahan tarif boolean optional (default: false)

Parameter di bawah ini diperlukan jika terdapat perubahan tarif dan auto_allow_price_change bernilai false.

Parameter Deskripsi Type Required/Optional
total_new_price Total tarif terbaru int optional

Contoh

{
  "username": "YOUR_USERNAME",
  "sign": "96e1028f6beaa817ee3670a39c01c69d",
  "code": "skuhotel",
  "session": "9c597acf-23b2-47c3-86b6-b078214257c4",
  "group_id": "023d8a83-b9ae-4622-8930-6d03d65bbd66",
  "ref_id": "refid123",
  "pax": {
    "salutation": "Ms",
    "first_name": "Jane",
    "last_name": "Doe"
  },
  "request_notes": "notes123",
  "auto_allow_price_change": false
}

Response

Data

Attribute Deskripsi Type Note
reply_type Tipe Reply
- booking
- recheck
string API akan mengembalikan reply_type recheck ketika terjadi perubahan tarif, auto_allow_price_change bernilai false, dan tidak ada parameter total_new_price
recheck_data Data recheck object Gunakan ketika reply_type recheck.
Sama persis dengan response data pada endpoint recheck
booking_data Data booking object Gunakan ketika reply_type booking

Object booking_data

Attribute Deskripsi Type Note
booking_number Nomor booking dari pemilik properti string
booking_ref Booking reference ID milik Anda string Sama dengan value ref_id yang dikirimkan pada request parameter
status Status booking int List status dapat Anda temukan di sini
check_in Tanggal check in, format YYYY-MM-DD string
check_out Tanggal check out, format YYYY-MM-DD string
total_price Total harga int
request_notes Notes kepada pemilik properti string Hanya muncul jika Anda mengirimkan request_notes pada request parameter
pax_count Jumlah tamu object
pax_count.total_room Jumlah kamar int
pax_count.total_adult Jumlah orang dewasa int
pax_count.total_child Jumlah anak-anak int Hanya muncul jika Anda mengirimkan total_child pada endpoint Inisiasi
property Data properti yang Anda booking object
rooms Data kamar yang Anda booking object
rooms.*.name Nama kamar string
rooms.*.plan Kode paket kamar string
rooms.*.plan_label Definisi paket kamar string
rooms.*.total_price Harga per kamar int
rooms.*.messages Pesan pemilik properti terkait kebijakan penggunaan kamar []string Hanya muncul jika properti memiliki pesan
pax Tamu utama object Sama dengan value pax yang dikirimkan pada request parameter

Meta Data

Reply Type Recheck

Attribute Deskripsi Type Note
session Sesi pencarian properti string Sama dengan session yang dikirimkan pada request parameter
changes Objek perubahan tarif []object
changes.*.new_price Tarif baru int
changes.*.room_name Nama Kamar string
check_in Tanggal check in YYYY-MM-DD string
check_out Tanggal check out YYYY-MM-DD string
pax_count Object jumlah tamu object
pax_count.total_room Jumlah kamar int
pax_count.total_adult Jumlah orang dewasa int
pax_count.total_child Jumlah anak-anak int

Reply Type Booking

Attribute Deskripsi Type Note
session Sesi pencarian properti string Sama dengan session yang dikirimkan pada request parameter

Contoh

Tanpa perubahan tarif

{
  "message": "Sukses",
  "rc": "00",
  "buyer": {
    "code": "skuhotel",
    "balance": 99412887972
  },
  "seller": {
    "tele": "@usernametelegram",
    "wa": "081234567890"
  },
  "data": {
    "reply_type": "booking",
    "booking_data": {
      "booking_number": "eWmvyIXzmUBChONn",
      "booking_ref": "1779258877",
      "status": 1,
      "check_in": "2026-02-12",
      "check_out": "2026-02-14",
      "total_price": 2978927,
      "request_notes": "notes123",
      "pax_count": {
        "total_room": 1,
        "total_adult": 2
      },
      "property": {
        "id": "7p4d1o7kq96m",
        "name": "Hotel Tentrem Jakarta",
        "star": 5,
        "latitude": "6.65643200",
        "longitude": "-6.24299300",
        "main_photo": "https://ik.imagekit.io/vcrk/dev/hotel",
        "address": {
          "line_1": "Jl. Alam Sutera Boulevard No 11, Tangerang Selatan, Banten",
          "area": "Alam Sutera"
        },
        "check_in_time": "15:00:00",
        "check_out_time": "12:00:00",
        "website": "https://jakarta.hoteltentrem.com/",
        "facilities": [
          "Wi-Fi",
          "Parkir",
          "Restoran",
          "Bar",
          "Kolam Renang"
        ]
      },
      "rooms": [
        {
          "name": "Deluxe King Bundaran HI View",
          "plan": "RO",
          "plan_label": "Hanya Kamar",
          "total_price": 2978927
        }
      ],
      "pax": {
        "salutation": "Mr",
        "first_name": "Tester",
        "last_name": "Digiflazz"
      }
    },
    "recheck_data": null
  },
  "meta": {
    "session": "BOOKED-2dfa0748-3b56-4255-aab2-6f62b8884353"
  }
}

Terjadi Perubahan Tarif

Perubahan Tarif

Response di bawah akan muncul jika auto_allow_price_change bernilai false dan total_new_price tidak dikirimkan pada request parameter.

Http Status Code

Response di bawah akan mengembalikan http status code code 422. Lihat response code untuk informasi lebih lengkap.

{
  "message": "Harga kamar/item telah berubah",
  "rc": "14",
  "buyer": {
    "code": "skuhotel"
  },
  "seller": {
    "tele": "@usernametelegram",
    "wa": "081234567890"
  },
  "data": {
    "reply_type": "recheck",
    "booking_data": null,
    "recheck_data": {
      "id": "560n83w4qw2o",
      "name": "Hotel Indonesia Kempinski Jakarta",
      "star": 5,
      "type": "hotel",
      "latitude": "6.82235700",
      "longitude": "-6.19561300",
      "main_photo": "https://ik.imagekit.io/vcrk/dev/hotel",
      "address": {
        "line_1": "Jalan MH Thamrin 1, Central Jakarta",
        "area": "City Center"
      },
      "rooms": [
        {
          "name": "DELUXE ROOM - INNER COURTYARD VIEW",
          "photos": [
            "https://ik.imagekit.io/vcrk/dev/hotel,room,bed"
          ],
          "min_total_price": 3126484,
          "groups": [
            {
              "group_id": "9faf9342-f2e8-4f49-a0cd-a870d7b92121",
              "plan": "BF",
              "plan_label": "With Breakfast",
              "cancel_plan": "FLEX",
              "is_smoking": false,
              "total_price": 3126484,
              "details": [
                {
                  "price": 3126484,
                  "room_no": 1
                }
              ]
            }
          ]
        }
      ]
    }
  },
  "meta": {
    "session": "2dfa0748-3b56-4255-aab2-6f62b8884353",
    "changes": [
      {
        "new_price": 3126484,
        "room_name": "DELUXE ROOM - INNER COURTYARD VIEW"
      }
    ],
    "check_in": "2026-02-12",
    "check_out": "2026-02-14",
    "pax_count": {
      "total_room": 1,
      "total_adult": 1
    }
  }
}

Test Case

group_id

Pada test case, group_id selalu sama. Namun, pada production, group_id akan selalu berbeda tiap sesi.

group_id Deskripsi
jkt1g1-pending Status pending
jkt1g1-success Status sukses
jkt1g1-success_callback Status pending, lalu callback sukses
jkt1g1-failed Status gagal
jkt1g1-failed_callback Status pending, lalu callback gagal
jkt1g2-rate_changes Response dengan reply_type recheck

Contoh

{
  "username": "YOUR_USERNAME",
  "sign": "96e1028f6beaa817ee3670a39c01c69d",
  "code": "skuhotel",
  "session": "9c597acf-23b2-47c3-86b6-b078214257c4",
  "group_id": "jkt1g1-success",
  "ref_id": "refid123",
  "pax": {
    "salutation": "Ms",
    "first_name": "Jane",
    "last_name": "Doe"
  },
  "is_testing": true
}