Booking API

1. API Kiểm tra tình trạng phòng (checkout)

POST: /api/v3/hotel/checkout

Trả về kết quả tình trạng của phòng

Request Body

Request Body
  • tripId (String, Required)

    Mã định danh kết quả search-all-rate, lấy từ kết quả trả về search-all-rates

  • roomId (String, Required)

    Mã định danh phòng, lấy từ kết quả trả về search-all-rates

  • ratePlanId (String, Required)

    Mã định danh tùy chọn giá, lấy từ kết quả trả về search-all-rates

  • metadata (String, Required)

    Thông tin mở rộng

    • customer-ip (String, Required)

      Địa chỉ IP của người dùng cuối

Example

Response

Code 200

OK

Model

Model
  • result (CheckoutResult, Optional)

    Thông tin kết quả trả về

    • status (string, optional) = [‘AVAILABLE’, ‘PRICE_CHANGED’, ‘SOLD_OUT’, ‘UNKNOWN’]

      Thông tin xác định trạng thái của phòng

      • AVAILABLE: Phòng đang tồn tại sẳn sàng để book

      • PRICE_CHANGED: Giá phòng đã bị thay đổi, thông tin giá thay đổi được cập nhật trong HotelProduct

      • SOLD_OUT: Phòng đã hết

      • UNKNOWN: Không xác định trạng thái phòng

    • hotelProduct (HotelProduct, optional),

      Thông tin phòng trả về

      • address (Address, optional),

        Thông tin địa chỉ khách sạn

        • city (string, optional),

        Thành phố

        • countryCode (string, optional),

          Mã quốc gia

        • countryName (string, optional),

          Tên quốc gia

        • lineOne (string, optional),

          Địa chỉ dòng 1

        • lineTow (string, optional),

          Địa chỉ dòng 2

        • postalCode (string, optional),

          Mã bưu điện

        • stateProvinceCode (string, optional),

          Mã tỉnh thành

        • stateProvinceName (string, optional)

          Tên tỉnh thành

      • amenities (Array[Attribute], optional),

        Mảng đối tượng chứa thông tin tiện nghi của khách sạn

        • id (string, optional),

        Mã tiện nghi khách sạn

        • name (string, optional),

          Tên của tiện nghi khách sạn

        • value (string, optional)

      • attributes (Array[Attribute], optional),

      • checkin (Checkin, optional),

        Khoảng thời gian nhận phòng, theo giờ địa phương của khách sạn

        • beginTime (string, optional),

          Thời gian bắt đầu được nhận phòng. Mặc định: 14:00

        • endTime (string, optional)

          Thời gian kết thúc được nhận phòng. Mặc định: 24:00

      • checkout (Checkout, optional),

        Thông tin thời gian trả phòng. Mặc định trước 12:00

        • endTime (string, optional)

          Thời gian trả phòng tối đa. Mặc định trước 12:00

      • currency (string, optional) = [‘VND’, ‘USD’],

        Thông tin tiền tệ trả về

      • customerIp (string, optional),

        Thông tin địa chỉ ip của người dùng cuối

      • descriptions (Array[Attribute], optional),

        Thông tin mô tả về khách sạn

        • id (string, optional),

          Mã định danh thuộc tính mô tả

        • name (string, optional),

          Tên thuộc tính

          • description: mô tả chung

          • amenities: mô tả chung về tiện nghi của khách sạn

          • dining: Mô tả về chỗ ăn uống của khách sạn

          • renovations: Mô tả về quá trình cải tạo phòng hoặc khách sạn mới đây

          • national_ratings: Nêu rõ nguồn xếp hạng sao của khách sạn

          • business_amenities: Mô tả về tiện nghi dành cho doanh nghiệp tại chỗ nghỉ, Ví dụ: phòng hội nghị

          • rooms: Mô tả về phòng

          • attractions: Mô tả về điểm tham quan gần khách sạn

          • location: Mô tả về vị trí của khách sạn

          • headline: Mô tả tóm tắt

        • value (string, optional)

          Thông tin mô tả

      • fees (Array[Attribute], optional),

        Thông tin mô tả về một số khoản phụ phí kèm theo

        • id (string, optional),

          Mã định danh thuộc tính phí

        • name (string, optional),

          Tên thuộc tính phí

          • mandatory: Phí bắt buộc

          • optional: Phí không bắt buộc

        • value (string, optional)

          Mô tả về khoản phí

      • images (Array[HotelImage], optional),

        Hình ảnh của khách sạn

        • caption (string, optional),

          Tiêu đề của hình ảnh

        • link (string, optional),

          Liên kết tới hình ảnh. Liên kết tuyệt đối

        • position (integer, optional)

          Vị trí sắp xếp hình ảnh

      • inclusions (Array[Attribute], optional),

        Mảng đối tượng chứa thông tin mô tả về thuộc tính của khách sạn

        • id (string, optional),

          Mã định danh thuộc tính

        • name (string, optional),

          Mô tả thuộc tính

        • value (string, optional)

      • language (string, optional) = [‘vi’, ‘en’],

        Ngôn ngữ trả về

      • latitude (number, optional),

        Vĩ độ của khách sạn

      • longitude (number, optional),

        Kinh độ của khách sạn

      • policies (Array[Attribute], optional),

        Thông tin về chính sách khách sạn mà khách cần lưu ý.

        • id (string, optional),

          Mã định danh chính sách

        • name (string, optional),

          Tên thuộc chính sách

          • know_before_you_go: Mô tả thông tin có thể hữu ích khi lập kế hoạch cho chuyến đi đến nơi này

        • value (string, optional)

          Mô tả về chính sách

      • productId (string, optional),

        Mã định danh sản phẩm

      • propertyCategory (PropertyCategory, optional),

        Danh mục của khách sạn

        • id (string, optional),

          Mã định danh danh mục khách sạn

        • name (string, optional)

          Tên danh mục khách sạn

      • propertyId (string, optional),

        Mã định danh khách sạn

      • propertyName (string, optional),

        Tên khách sạn

      • rank (integer, optional),

      • rating (Rating, optional),

        Đánh giá về khách sạn

        • ratingGuest (RatingGuest, optional)

          Đánh giá của khách

          • amenities (string, optional),

            Xếp hạng cho các tiện nghi do khách sạn cung cấp, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • cleanliness (string, optional),

            Đánh giá mức độ sạch sẽ cho khách sạn, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • comfort (string, optional),

            Đánh giá mức độ thoải mái của các phòng, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • condition (string, optional),

            Xếp hạng cho tình trạng của chỗ nghỉ, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • count (integer, optional),

            Tất cả xếp hạng đánh giá của khách giành cho khách sạn

          • location (string, optional),

            Xếp hạng về mức độ hấp dẫn của vị trí của khách sạn, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • neighborhood (string, optional),

            Xếp hạng về mức độ hài lòng của khu vực lân cận của khách sạn, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • overall (string, optional),

            Đánh giá chung cho khách sạn, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • quality (string, optional),

            Xếp hạng chất lượng của các phòng, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • recommendationPercent (string, optional),

            Phần trăm khách giới thiệu ở tại chỗ nghỉ này.

          • score (string, optional),

          • service (string, optional),

            Đánh giá về dịch vụ của nhân viên đối với chỗ nghỉ, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

          • value (string, optional)

            Xếp hạng cho giá trị của bất động sản cung cấp cho chi phí lưu trú, được tính trung bình từ tất cả các đánh giá của khách. Trả về giá trị từ 1,0 đến 5,0.

        • ratingProperty (RatingProperty, optional)

          Đánh giá hạng sao khách sạn

          • rating (string, optional),

            Giá trị sếp hạng. Trả về giá trị từ 0,0 đến 5,0. Giá trị 0,0 hoặc giá trị trống cho biết không có xếp hạng nào.

          • type (string, optional)

            Loại đánh giá

            • Star: Xếp hạng sao của khách sạn

      • rooms (Array[PropertyRoom], optional),

        Mảng đối tượng chứa thông tin phòng

        • descriptions (Array[Attribute], optional),

          Thông tin mô tả

          • id (string, optional),

            Mã định danh

          • name (string, optional),

            Tên mô tả

            • overview: Thông tin mô tả tổng quan về căn phòng

          • value (string, optional)

            Thông tin mô tả

        • id (string, optional),

          Mã định danh cho loại phòng

        • images (Array[RoomImage], optional),

          Mảng đối tượng chứa thông tin hình ảnh của loại phòng

          • caption (string, optional),

            Tiêu đề của hình ảnh

          • link (string, optional),

            Liên kết tới hình ảnh, là liên kết tuyệt đối

          • position (integer, optional)

            Vị trí sắp xếp của hình ảnh

        • name (string, optional),

          Tên của loại phòng

        • ratePlans (Array[RatePlan], optional),

          Mảng đối tượng chứa thông tin về tùy chọn giá

          • amenities (Array[Amenity], optional),

            Mảng đối tượng chứa thông tin tiện nghi của tùy chọn giá

            • id (string, optional),

              Mã định danh tiện nghi

            • name (string, optional),

              Tên tiện nghi

            • value (string, optional)

            • group (sting, optional)

          • basePrice (number, optional),

            Giá cơ bản

          • basePriceBeforePromo (number, optional),

            Giá cơ bản trước khuyến mãi

          • bedGroups (Array[BedGroup], optional),

            Mảng đối tượng nhóm giường trong phòng

            • configurations (Array[ConfigurationBedGroup], optional),

              Thông tin cấu hình giường cho phòng

              • quantity (integer, optional),

                Số lượng giường

              • size (string, optional),

                Kích thước của giường

              • type (string, optional)

                Loại giường

            • description (string, optional),

              Mô tả hiển thị giường cho phòng này

            • id (string, optional)

              Mã định danh nhóm giường

          • breakfastIncluded (boolean, optional),

            Tùy chọn giá có bao gồm bữa sáng hay không

          • cancelFree (boolean, optional),

            Mô tả thông tin được phép hủy đặt phòng với tùy chọn giá này có tốn phí phạt hay không

            • true: Hủy đặt phòng miễn phí

            • false: Không đặt hủy đặt phòng miễn phí

          • cancelFreeBeforeDate (string, optional),

            Ngày giới hạn cho phép hủy đặt phòng với tùy chọn giá này một cách miễn phí

          • cancelPenalties (Array[CancelPenalty], optional),

            Mô tả các hình thức phạt khi hủy đặt phòng với tùy chọn giá này. Xem thêm chi tiết ở tài liệu api search-all-rates.

            • type (string, optional)

              Loại hình phạt

              • NIGHTS: Số đêm bị phạt

              • AMOUNT: Số tiền bị phạt

              • PERCENT: Số phần trăm bị phạt

            • currency (string, optional) = [‘VND’, ‘USD’],

              Đơn vị tiền tệ đối với type = AMOUNT

            • amount (string, optional),

              Số tiền của hình phạt

            • description (string, optional),

              Mô tả về hình phạt

            • nights (string, optional),

              Số đêm bị tính phí phạt

            • percent (string, optional),

              Số phần trăm bị phạt

            • startDate (string, optional),

              Ngày bắt đầu có hiệu lực của hình phạt

            • endDate (string, optional),

              Ngày kết thúc của hình phạt

          • fees (Map, optional),

            Thông tin các loại phí được phu bởi khách sạn Giá trị mối loại phí là tổng của loại đó. Phạm vi ảnh hưởng của mô tả này chỉ là thông tin thông báo cho khách hàng biết.

            • mandatory_fee: Một khoản phí bắt buộc do khách sạn thu khi nhận phòng hoặc trả phòng.

            • resort_fee: Một khoản phí cho các tiện nghi và dịch vụ bổ sung và được khách sạn thu khi nhận phòng hoặc trả phòng.

            • mandatory_tax: Khoản thuế bắt buộc do chỗ nghỉ thu khi nhận phòng hoặc trả phòng.

          • paxPrice (Array[PaxPrice], optional),

            Mảng đối tượng chứa thông tin giá theo số lượng người ở trong một phòng

            • nightPrices (Array[NightPrice], optional),

              Mảng đối tượng chứa thông tin giá theo từng đêm

              • nightKey (string, optional),

                Khóa định danh của từng đêm

              • nightPriceDetails (Array[NightPriceDetail], optional)

                Mảng đối tượng chứ thông tin giá chi tiết theo từng đêm

                • name (string, optional),

                  Tên loại giá

                  • base_rate: Giá cơ bản không bao gồm thuế phí

                  • tax_and_service_fee: Thuế và phí

                • value (number, optional),

                  Số tiền

                • valueByHotelCurrency (string, optional)

            • paxInfo (PaxInfo, optional)

              Mô tả thông tin người ở

              • adultQuantity (integer, optional),

                Số lượng người lớn

              • childAges (Array[integer], optional),

                Mảng chứa thông tin tuổi của trẻ em, số lượng phần từ mảng bằng với số lượng trẻ em

              • childQuantity (integer, optional),

                Số lượng trẻ em

              • infantQuantity (integer, optional)

          • promo (boolean, optional),

            Thông tin xác định có khuyến mãi hay không

            • true: Có khuyến mãi

            • false: Không có khuyến mãi

          • promoDescription (string, optional),

            Mô tả thông tin khuyến mãi

          • ratePlanId (string, optional),

            Mã định danh tùy chọn giá

          • ratePlanName (string, optional),

            Tên của tùy chọn giá

          • refundable (boolean, optional),

            Thông tin xác định khi hủy phòng có được hoàn tiền hay không

            • true: Được hoàn tiền khi hủy

            • false: Không được hoàn tiền khi hủy

          • taxAndFees (number, optional),

            Thuế và phí của tùy chọn giá

          • totalPrice (number, optional),

            Giá tổng cộng đã bao gồm thuế phí

          • totalPriceByHotelCurrency (number, optional),

          • totalRooms (integer, optional)

            Số lượng phòng còn trống

        • roomArea (RoomArea, optional)

          Thông tin về diện tích căn phòng

          • squareFeet: Diện tích của phòng được tính bằng feet vuông

          • squareMeters: Diện tích của phòng được tính bằng mét vuông

      • searchId (string, optional),

        • Mã tham chiếu đến kết quả tìm kiếm (search-best-rate)

      • statistics (Array[Attribute], optional),

        Thống kê về tài sản, chẳng hạn như số tầng

        • id (string, optional),

          Mã định danh thống kê

        • name (string, optional),

          Mô tả thống kê bao gồm tên và giá trị thống kê

          {
              "id": "52",
              "name": "Tổng số phòng: - 335",
              "value": "335"
          }
        • value (string, optional)

          Giá trị của thống kê

      • supplier (string, optional) = [‘EXPEDIA’, ‘AXISROOM’, ‘BEDLINKER’],

        Nguồn khách sạn

      • themes (Array[Attribute], optional),

        Mảng đối tượng chứa thông tin về chủ đề của khách sạn

        • id (string, optional),

          Mã định chủ đề

        • name (string, optional),

          Tên chủ đề

        • value (string, optional)

      • tripId (string, optional),

        Mã liên kết đến kết quả search-all-rates

      • hotelContact (HotelContact, optional),

        Thông tin liên hệ trực tiếp của khách sạn

        • phone (string, optional),

          Số điện thoại khách sạn

        • email (string, optional),

          Email khách sạn

        • fax (integer, optional)

          Số fax khách sạn

      • mealPlans (Array[Attribute], optional),

        Mảng chứa thông tin bữa ăn của ratePlan

        • id (string, optional),

          Mã định danh bữa ăn

        • name (string, optional),

          Tên gói bữa ăn

        • value (string, optional)

  • duration (Integer, Optional)

  • success (Integer, Bool)

  • infos (Array[InfosDTO], Optional)

  • errors (Array[ErrorsDTO], Optional)

  • textMessage (String, Optional)


2. API Khởi tạo booking

POST: /api/v3/hotel/create-draft-booking

Khởi tạo booking

Request Body

Request Body
  • tripId (String, Required)

    Mã định danh kết quả search-all-rate, lấy từ kết quả trả về search-all-rates

  • roomId (String, Required)

    Mã định danh phòng, lấy từ kết quả trả về search-all-rates

  • ratePlanId (String, Required)

    Mã định danh tùy chọn giá, lấy từ kết quả trả về search-all-rates

  • metadata (String, Required)

    Thông tin mở rộng

    • customer-ip (String, Required)

      Địa chỉ IP của người dùng cuối

Example

Response

Code 200

Model
  • result (Booking, optional)

    Thông tin booking đã tạo

    • additionalFee (number, optional),

      Các khoản phí khác

    • agencyCode (string, optional),

      Mã đại lý. Mã dùng tham chiếu đến tác giả của booking

    • agencyMarkupValue (number, optional),

    • agentCode (string, optional),

      Mã nhân viên đại lý. Mã dùng tham chiếu đến tác giả của booking

    • agentId (integer, optional),

      Id nhân viên đại lý

    • agentName (string, optional),

      Tên nhân viên đại lý

    • baseFare (number, optional),

      Giá phòng chưa bao gồm thuế phí

    • bookBy (string, optional),

      Người đặt booking

    • bookByCode (string, optional),

      Mã người đặt

    • bookingCode (string, optional),

      Mã dùng mô tả các thông tin cơ bản của booking

    • bookingDate (string, optional),

      Ngày tạo booking

    • bookingNote (string, optional),

      Ghi chú của booking

    • bookingNumber (string, optional),

      Mã dùng tham chiếu đến booking. Mã này là duy nhất.

    • bookingType (string, optional) = [‘DOME’, ‘INTE’],

      Xác định điểm đến là trong nước hay quốc tế

      • DOME: Trong nước

      • INTE: Quốc tế

    • branchCode (string, optional),

      Mã chi nhánh

    • cancellationBy (string, optional),

      Hủy đặt phòng bởi …

    • cancellationDate (string, optional),

      Ngày hủy đặt phòng

    • cancellationFee (number, optional),

      Phí hủy đặt phòng

    • cancellationNotes (string, optional),

      Ghi chú hủy

    • channelType (string, optional) = [‘ONLINE’, ‘OFFLINE’],

      Loại kênh đặt phòng

    • commissionValue (number, optional),

      Giá trị hoa hồng

    • createdBy (string, optional),

      Người tạo booking

    • createdDate (string, optional),

      Ngày tạo booking

    • customerCode (string, optional),

      Mã khách hàng

    • customerEmail (string, optional),

      Email của khách hàng

    • customerFirstName (string, optional),

      Họ của khách hàng

    • customerId (integer, optional),

      Id của khách hàng

    • customerLastName (string, optional),

      Tên của khách hàng

    • customerPhoneNumber1 (string, optional),

      Số điện thoại 1 của khách hàng

    • customerPhoneNumber2 (string, optional),

      Số điện thoại 2 của khách hàng

    • departureDate (string, optional),

      Ngày nhận phòng

    • discountAmount (number, optional),

      Số tiền được giảm

    • discountDate (string, optional),

      Ngày sử dụng mã giảm giá

    • discountRedeemCode (string, optional),

      Mã liên kết đổi thưởng

    • discountRedeemId (string, optional),

      Id định danh liên kết đổi thường

    • discountTrackingCode (string, optional),

      Mã theo dõi thông tin giảm giá

    • discountVoucherCode (string, optional),

      Mã voucher

    • discountVoucherName (string, optional),

      Tên voucher

    • equivFare (number, optional),

    • fromCity (string, optional),

    • fromLocationCode (string, optional),

    • fromLocationName (string, optional),

    • id (integer, optional),

      Id của booking

    • internalBookingNote (string, optional),

    • isDeleted (boolean, optional),

    • issuedBy (string, optional),

      Xuất phòng bởi …

    • issuedByCode (string, optional),

      Mã người xuất phòng

    • issuedDate (string, optional),

      Ngày xuất phòng

    • issuedStatus (string, optional) = [‘PENDING’, ‘TICKET_ON_PROCESS’, ‘SUCCEEDED’, ‘FAILED’],

      Trạng thái xuất phòng

      • PENDING: Đợi xuất phòng

      • TICKET_ON_PROCESS: Xuất phòng đang được xử lý

      • SUCCEEDED: Xuất phòng thành công

      • FAILED: Xuất phòng thất bại

    • markupValue (number, optional),

    • orgCode (string),

      Mã tổ chức

    • partnerOrderId (string, optional),

      Id định danh đặt hàng của đối tác

    • partnerRequestId (string, optional),

      Id định danh request của đối tác

    • paymentBy (string, optional),

      Thanh toán bởi …

    • paymentByCode (string, optional),

      Mã người thanh toán

    • paymentDate (string, optional),

      Thời gian thanh toán

    • paymentFee (number, optional),

      Phí thanh toán

    • paymentRefNumber (string, optional),

      Mã tham chiếu thanh toán

    • paymentStatus (string, optional) = [‘SUCCEEDED’, ‘FAILED’, ‘REFUNDED’, ‘PENDING’],

      Trạng thái thanh toán

      • PENDING: Chờ thanh toán

      • SUCCEEDED: Thanh toán thành công

      • FAILED: Thanh toán thất bại

      • REFUNDED: Hoàn tiền

    • paymentTotalAmount (number, optional),

      Tổng số tiền thanh toán

    • paymentType (string, optional) = [‘BALANCE’, ‘CREDIT’, ‘ATM_DEBIT’, ‘VNPAYQR’, ‘VIETTELPAY’, ‘MOMO’, ‘ZALO’, ‘AIRPAY’, ‘PAYOO’, ‘CASH’, ‘TRANSFER’, ‘PARTNER’, ‘OTHER’],

      Hình thức thanh toán

    • promotionID (Array[string], optional),

    • reconciliationType (string, optional) = [‘NEW’, ‘ALREADY_RECONCILIATION’],

    • refundAmount (number, optional),

      Số tiền hoàn trả

    • refundBy (string, optional),

      Người hoàn trả

    • refundByCode (string, optional),

      Mã của người thực hiện hoàn trả

    • refundDate (string, optional),

      Ngày hoàn trả

    • refundNextVoidDate (string, optional),

    • returnDate (string, optional),

      Ngày trả phòng

    • roundType (string, optional) = [‘RoundTrip],

    • saleChannel (string, optional) = [‘B2B’, ‘B2C’, ‘B2B2C’, ‘B2C_WEB’, ‘B2C_WEB_APP’, ‘B2C_MOBILE’],

      Kênh phân phối

    • serviceTax (number, optional),

      Thuế và phí

    • sessionSearchId (string, optional),

    • status (string, optional) = [‘PENDING’, ‘BOOKING_ON_PROCESS’, ‘BOOKED’, ‘FAILED’, ‘CANCELLED’, ‘EXPIRED’],

      Trạng thái của booking

      • PENDING: Chờ xác nhận booking

      • BOOKING_ON_PROCESS: Booking đang được xử lý

      • BOOKED: Booking đã được xác nhận

      • FAILED: Booking thất bại

      • EXPIRED: Booking hết hạn

      • CANCELLED: Booking đã bị hủy

    • supplierType (string, optional) = [‘AIR’, ‘HOTEL’, ‘TOURS’, ‘TRAIN’, ‘SHIP’, ‘OTHER’],

      Loại sản phẩm

    • tags (string, optional),

    • taxAddress1 (string, optional),

      Địa chỉ xuất hóa đơn dòng 1

    • taxAddress2 (string, optional),

      Địa chỉ xuất hóa đơn dòng 2

    • taxCompanyName (string, optional),

      Tên công ty xuất hóa đơn

    • taxNumber (string, optional),

      Mã số thuế cần xuất hóa đơn

    • taxPersonalInfoContact (string, optional),

      Người nhận hóa đơn

    • taxReceiptRequest (boolean, optional),

      Yêu cầu xuất hóa đơn hay không

    • timeToLive (string, optional),

      Thời gian chờ thanh toán, sau thời gian này trạng thái của booking sẽ chuyển sang EXPIRED

    • timeToLiveExpired (string, optional),

    • toCity (string, optional),

      Tên tỉnh, thành phố nơi đặt phòng khách sạn

    • toLocationCode (string, optional),

      Mã định danh khách sạn

    • toLocationName (string, optional),

      Tên khách sạn

    • totalFare (number, optional),

      Tổng giá phòng

    • totalSsrValue (number, optional),

    • totalTax (number, optional),

      Tổng số tiền thuế phí

    • updatedBy (string, optional),

      Người cập nhật

    • updatedDate (string, optional),

      Ngày cập nhật

    • vat (number, optional)

  • duration (integer, optional),

  • errors (Array[Error], optional),

  • infos (Array[Info], optional),

  • success (boolean, optional),

  • textMessage (string, optional)


3. API Lấy chi tiết booking

POST: /api/products/booking-detail

Lấy thông tin chi tiết của booking

Parameters

Parameters
  • bookingNumber query (string, required),

    Mã tham chiếu đến booking

Response

Code 200

OK

Model

Model
  • id (string, optional),

    Mã định danh chi tiết booking

  • agencyCode (string, optional),

    Mã đại lý. Mã dùng tham chiếu đến tác giả của booking

  • agentCode (string, optional),

    Mã nhân viên đại lý. Mã dùng tham chiếu đến tác giả của booking

  • bookingCode (string, optional),

    Mã dùng mô tả các thông tin cơ bản của booking

  • bookingDate (string, optional),

    Ngày tạo booking

  • bookingInfo (BookingInfo, optional),

    Thông tin booking

    • additionalFee (number, optional),

      Các khoản phí khác

    • agencyCode (string, optional),

      Mã đại lý. Mã dùng tham chiếu đến tác giả của booking

    • agencyMarkupInfos (Array[BookingAgencyMarkupInfo], optional),

    • agencyMarkupValue (number, optional),

    • agentCode (string, optional),

      Mã nhân viên đại lý. Mã dùng tham chiếu đến tác giả của booking

    • agentId (integer, optional),

      Id nhân viên đại lý

    • agentName (string, optional),

      Tên nhân viên đại lý

    • allowHold (boolean, optional),

      Cho phép giữ phòng hay không

      true: cho phép giữ phòng

      false: Không cho phép giữ phòng

    • baseFare (number, optional),

      Giá phòng chưa bao gồm thuế phí

    • bookBy (string, optional),

      Người đặt booking

    • bookByCode (string, optional),

      Mã người đặt

    • bookingCode (string, optional),

      Mã dùng mô tả các thông tin cơ bản của booking

    • bookingDate (string, optional),

      Ngày tạo booking

    • bookingIssuedType (string, optional) = [‘INSTANT_BOOKING’, ‘CONFIRM_OFFLINE’],

    • bookingNote (string, optional),

      Ghi chú của booking

    • bookingNumber (string, optional),

      Mã dùng tham chiếu đến booking. Mã này là duy nhất.

    • bookingType (string, optional) = [‘DOME’, ‘INTE’],

      Xác định điểm đến là trong nước hay quốc tế

      • DOME: Trong nước

      • INTE: Quốc tế

    • branchCode (string, optional),

      Mã chi nhánh

    • cancellationBy (string, optional),

      Hủy đặt phòng bởi …

    • cancellationDate (string, optional),

      Ngày hủy đặt phòng

    • cancellationFee (number, optional),

      Phí hủy đặt phòng

    • cancellationNotes (string, optional),

      Ghi chú hủy

    • channelType (string, optional) = [‘ONLINE’, ‘OFFLINE’],

      Loại kênh đặt phòng

    • contactInfos (Array[BookingContactInfo], optional),

      Mảng đối tượng chứ thông tin người liên hệ

      • bookingNumber (string, optional),

        Mã tham chiếu đến booking

      • contactLevel (string, optional) = [‘PRIMARY’, ‘SECONDARY’, ‘OTHER’],

        Cấp của người liên hệ

      • contactType (string, optional) = [‘CUSTOMER’, ‘AGENCY’],

        Loại của người liên hệ

      • email (string, optional),

        Địa chỉ email

      • firstName (string, optional),

        Tên đêm và tên người liên hệ

      • phoneCode1 (string, optional),

        Mã quốc gia

      • phoneNumber1 (string, optional),

        Số điện thoại 1

      • surName (string, optional)

        Họ người liên hệ

    • customerCode (string, optional),

      Mã khách hàng

    • customerEmail (string, optional),

      Email của khách hàng

    • customerFirstName (string, optional),

      Họ của khách hàng

    • customerId (integer, optional),

      Id của khách hàng

    • customerLastName (string, optional),

      Tên của khách hàng

    • customerPhoneNumber1 (string, optional),

      Số điện thoại 1 của khách hàng

    • customerPhoneNumber2 (string, optional),

      Số điện thoại 2 của khách hàng

    • deleted (boolean, optional),

    • departureDate (string, optional),

      Ngày nhận phòng

    • discountAmount (number, optional),

      Số tiền được giảm

    • discountDate (string, optional),

      Ngày sử dụng mã giảm giá

    • discountRedeemCode (string, optional),

      Mã liên kết đổi thưởng

    • discountRedeemId (string, optional),

      Id định danh liên kết đổi thường

    • discountVoucherCode (string, optional),

      Mã voucher

    • discountVoucherName (string, optional),

      Tên voucher

    • displayPriceInfo (BookingPriceInfo, optional),

    • equivFare (number, optional),

    • etickets (string, optional),

      Mã liên kết với nhà cung cấp, được sử dụng để nhận phòng

    • fromCity (string, optional),

    • fromLocationCode (string, optional),

    • fromLocationName (string, optional),

    • id (integer, optional),

      Id của booking

    • internalBookingNote (string, optional),

    • issuedByCode (string, optional),

      Xuất phòng bởi …

    • issuedDate (string, optional),

      Ngày xuất phòng

    • issuedStatus (string, optional) = [‘PENDING’, ‘TICKET_ON_PROCESS’, ‘SUCCEEDED’, ‘FAILED’],

      Trạng thái xuất phòng

      • PENDING: Đợi xuất phòng

      • TICKET_ON_PROCESS: Xuất phòng đang được xử lý

      • SUCCEEDED: Xuất phòng thành công

      • FAILED: Xuất phòng thất bại

    • markupValue (number, optional),

    • onlyPayLater (boolean, optional),

    • orgCode (string, optional),

      Mã tổ chức

    • ownerBooking (boolean, optional),

      Chủ sở hữu đặt chỗ

    • passengerNameRecords (string, optional),

      Mã liên kết với nhà cung cấp, được sử dụng để nhận phòng

    • paymentBy (string, optional),

      Thanh toán bởi …

    • paymentByCode (string, optional),

      Mã người thanh toán

    • paymentDate (string, optional),

      Thời gian thanh toán

    • paymentFee (number, optional),

      Phí thanh toán

    • paymentRefNumber (string, optional),

      Mã tham chiếu thanh toán

    • paymentStatus (string, optional) = [‘SUCCEEDED’, ‘FAILED’, ‘REFUNDED’, ‘PENDING’],

      Trạng thái thanh toán

      • PENDING: Chờ thanh toán

      • SUCCEEDED: Thanh toán thành công

      • FAILED: Thanh toán thất bại

      • REFUNDED: Hoàn tiền

    • paymentTotalAmount (number, optional),

      Tổng số tiền thanh toán

    • paymentType (string, optional) = [‘BALANCE’, ‘CREDIT’, ‘ATM_DEBIT’, ‘AIRPAY’, ‘VNPAYQR’, ‘VIETTELPAY’, ‘MOMO’, ‘ZALO’, ‘PAYOO’, ‘CASH’, ‘TRANSFER’, ‘PARTNER’, ‘OTHER’],

      Hình thức thanh toán

    • promotionID (Array[string], optional),

    • reasonCodePaymentFailed (string, optional),

    • refundBy (string, optional),

      Người hoàn trả

    • refundByCode (string, optional),

      Mã của người thực hiện hoàn trả

    • refundable (boolean, optional),

      Ngày hoàn trả

    • returnDate (string, optional),

      Ngày trả phòng

    • roundType (string, optional) = [‘RoundTrip],

    • saleChannel (string, optional) = [‘B2B’, ‘B2C’, ‘B2B2C’, ‘B2C_WEB’, ‘B2C_WEB_APP’, ‘B2C_MOBILE’],

      Kênh phân phối

    • serviceTax (number, optional),

      Thuế và phí

    • showPayLaterOption (boolean, optional),

    • showPayNowOption (boolean, optional),

    • status (string, optional) = [‘PENDING’, ‘BOOKING_ON_PROCESS’, ‘BOOKED’, ‘FAILED’, ‘CANCELLED’, ‘EXPIRED’],

      Trạng thái của booking

      • PENDING: Chờ xác nhận booking

      • BOOKING_ON_PROCESS: Booking đang được xử lý

      • BOOKED: Booking đã được xác nhận

      • FAILED: Booking thất bại

      • EXPIRED: Booking hết hạn

      • CANCELLED: Booking đã bị hủy

    • supplierBookingStatus (string, optional),

    • supplierType (string, optional) = [‘AIR’, ‘HOTEL’, ‘TOURS’, ‘TRAIN’, ‘SHIP’, ‘OTHER’],

      Loại nhà cung cấp

    • taxAddress1 (string, optional),

      Địa chỉ xuất hóa đơn dòng 1

    • taxAddress2 (string, optional),

      Địa chỉ xuất hóa đơn dòng 2

    • taxCompanyName (string, optional),

      Tên công ty xuất hóa đơn

    • taxNumber (string, optional),

      Mã số thuế cần xuất hóa đơn

    • taxPersonalInfoContact (string, optional),

      Người nhận hóa đơn

    • taxReceiptRequest (boolean, optional),

      Yêu cầu xuất hóa đơn hay không

    • timeToLive (string, optional),

      Thời gian chờ thanh toán, sau thời gian này trạng thái của booking sẽ chuyển sang EXPIRED

    • toCity (string, optional),

      Tên tỉnh, thành phố nơi đặt phòng khách sạn

    • toLocationCode (string, optional),

      Mã định danh khách sạn

    • toLocationName (string, optional),

      Tên khách sạn

    • totalFare (number, optional),

      Tổng giá phòng

    • totalSsrValue (number, optional),

    • totalTax (number, optional),

      Tổng số tiền thuế phí

    • transactionInfos (Array[BookingTransactionInfo], optional),

      Mảng đối tượng chứa thông tin giao dịch

      • id (integer, optional),

        Id định danh giao dịch

      • agencyMarkupValue (number, optional),

      • allowHold (boolean, optional),

        Cho phép giữ phòng hay không

      • bookingCode (string, optional),

        Mã dùng mô tả các thông tin cơ bản của booking

      • bookingDate (string, optional),

        Ngày tạo booking

      • bookingDirection (string, optional) = [‘TRIP’],

      • bookingNumber (string, optional),

        Mã dùng tham chiếu đến booking.

      • bookingRefNo (string, optional),

        Mã liên kết với nhà cung cấp

      • channelType (string, optional) = [‘ONLINE’, ‘OFFLINE’],

        Loại kênh bán

      • checkIn (string, optional),

        Ngày nhận phòng

      • checkOut (string, optional),

        Ngày trả phòng

      • destinationLocationCode (string, optional),

        Mã định danh khách sạn

      • detail (string, optional),

        Tên khách sạn

      • etickets (string, optional),

        Mã liên kết với nhà cung cấp, được sử dụng để nhận phòng

      • issuedDate (string, optional),

        Ngày xuất phòng

      • issuedStatus (string, optional) = [‘PENDING’, ‘TICKET_ON_PROCESS’, ‘SUCCEEDED’, ‘FAILED’],

        Trạng thái xuất phòng

        • PENDING: Đợi xuất phòng

        • TICKET_ON_PROCESS: Xuất phòng đang được xử lý

        • SUCCEEDED: Xuất phòng thành công

        • FAILED: Xuất phòng thất bại

      • markupCode (string, optional),

      • markupFormula (string, optional),

      • markupKey (string, optional),

      • markupValue (number, optional),

      • noAdult (integer, optional),

        Số người lớn

      • noChild (integer, optional),

        Số trể em

      • onlyPayLater (boolean, optional),

        Cho phép trả sau hay không

      • passengerNameRecord (string, optional),

        Mã liên kết với nhà cung cấp, được sử dụng để nhận phòng

      • paymentAmount (number, optional),

        Số tiền thanh toán

      • productSeqNumber (string, optional),

        Mã sản phẩm

      • refundable (boolean, optional),

        Có hoàn tiền khi hủy phòng hay không

      • saleChannel (string, optional) = [‘B2B’, ‘B2C’, ‘B2B2C’, ‘B2C_WEB’, ‘B2C_WEB_APP’, ‘B2C_MOBILE’],

        Kênh phân phối

      • serviceTax (number, optional),

        Thuế và phí

      • status (string, optional) = [‘PENDING’, ‘BOOKING_ON_PROCESS’, ‘BOOKED’, ‘FAILED’, ‘CANCELLED’, ‘EXPIRED’],

        Trạng thái của booking

        • PENDING: Chờ xác nhận booking

        • BOOKING_ON_PROCESS: Booking đang được xử lý

        • BOOKED: Booking đã được xác nhận

        • FAILED: Booking thất bại

        • EXPIRED: Booking hết hạn

        • CANCELLED: Booking đã bị hủy

      • supplierCode (string, optional),

        Mã nhà cung cấp

      • supplierName (string, optional),

        Tên nhà cung cấp

      • supplierType (string, optional) = [‘AIR’, ‘HOTEL’, ‘TOURS’, ‘TRAIN’, ‘SHIP’, ‘OTHER’]

        Loại sản phẩm

      • totalFare (number, optional),

        Tổng giá phòng

      • totalTax (number, optional)

        Tổng thuế và phí

      • baseFare (number, optional),

        Giá phòng không bao gồm thuế phí

    • travelerInfos (Array[BookingTravelerInfo], optional),

      Mảng đối tượng chứa thông tin người nhận phòng. Người nhận phòng phải là người lớn. Mỗi một phòng tương ứng với 1 phần tử của mảng.

      • bookingNumber (string),

        Mã tham chiếu đến booking

      • firstName (string),

        Tên đêm và tên người nhận phòng

      • surName (string)

        Họ của người nhận phòng

  • bookingNumber (string, optional),

    Mã dùng tham chiếu đến booking. Mã này là duy nhất.

  • bookingType (string, optional),

    Xác định điểm đến là trong nước hay quốc tế

    • DOME: Trong nước

    • INTE: Quốc tế

  • branchCode (string, optional),

    Mã chi nhánh

  • cacheType (string, optional) = [‘HOTEL’],

  • channelType (string, optional) = [‘ONLINE’, ‘OFFLINE’],

    Loại kênh đặt phòng

  • customerCode (string, optional),

    Mã khách hàng

  • groupPricedItineraries (Array[GroupPricedItinerary], optional),

  • hotelAvailability (HotelAvailability, optional),

  • hotelProduct (HotelProduct, optional),

    Đối tượng chứa thông tin phòng (Xem thêm ở response API checkout)

  • hotelProductPayload (HotelProductPayload, optional),

    Đối tượng chứa thông tin định danh sản phẩm

    • tripId (String, optional)

      Mã định danh kết quả search-all-rate

    • roomId (String, optional)

      Mã định danh phòng

    • ratePlanId (String, optional)

      Mã định danh tùy chọn giá

  • isPerBookingType (boolean, optional),

  • markupType (string, optional),

  • offlineBooking (OfflineBooking, optional),

  • orgCode (string, optional),

    Mã tổ chức

  • saleChannel (string, optional) = [‘B2B’, ‘B2C’, ‘B2B2C’, ‘B2C_WEB’, ‘B2C_WEB_APP’, ‘B2C_MOBILE’],

    Kênh phân phối

  • supplierType (string, optional) = [‘AIR’, ‘HOTEL’, ‘TOURS’, ‘TRAIN’, ‘SHIP’, ‘OTHER’],

    Loại nhà cung cấp

  • travelerInfo (TravelerInfo, optional),

  • updatedDate (string, optional)


4. API Cập nhật thông tin booking và giữ chỗ

POST: /api/v3/hotel/add-booking-traveller

Cập nhật các thông tin: Hành khách, người liên hệ, thông tin xuất hóa đơn, … và yêu cầu giữ chỗ

Request Body

Model

Request Body
  • bookingNumber (string, required),

    Mã tham chiếu đến booking

  • bookingContacts (Array[BookingContactDTO], required),

    Mảng đối tượng chứ thông tin người liên hệ

    • bookingNumber (string),

      Mã tham chiếu đến booking

    • phoneNumber1 (string, optional),

      Số điện thoại 1

    • email (string, optional),

      Địa chỉ email người liên hệ

    • surName (string)

      Họ người liên hệ

    • firstName (string),

      Tên đêm và tên người liên hệ

    • phoneCode1 (string, optional),

      Mã quốc gia

  • bookingTravelerInfos (Array[BookingTravelerInfoDTO], required),

    Mảng đối tượng chứa thông tin người nhận phòng. Người nhận phòng phải là người lớn. Mỗi một phòng tương ứng với 1 phần tử của mảng.

    • traveler (BookingTravelerDTO, optional)

      Thông tin người nhận phòng

      • bookingNumber (string),

        Mã tham chiếu đến booking

      • firstName (string),

        Tên đêm và tên người nhận phòng

      • surName (string)

        Họ của người nhận phòng

  • taxReceiptRequest (BookingTaxReceiptRequestDTO, optional)

    Yêu cầu xuất hóa đơn. Nếu không yêu cầu xuất hóa đơn thì để trống

    • bookingNumber (string, optional),

      Mã tham chiếu đến booking

    • taxAddress1 (string, optional),

      Địa chỉ công ty

    • taxCompanyName (string, optional),

      Tên công ty

    • taxNumber (string, optional),

      Mã số thuế

    • taxPersonalInfoContact (string, optional),

      Thông tin liên hệ người yêu cầu xuất hóa đơn

      Là chuỗi json của đối tượng:

      • name (string, required)

        Họ người liên hệ

      • fname (string, required)

        Tên đệm và tên người liên hệ

      • phone (string, required)

        Số điện thoại người liên hệ

      • email (string, required)

        Email người liên hệ

      • phonecode3 (string, required)

        Mã điện thoại

    • taxReceiptRequest (boolean, optional)

      Yêu cầu xuất hóa đơn

      • true: Yêu cầu xuất hóa đơn

Example

Response

Code 200

OK

Model
  • result (SearchAllRatesResult, optional),

    • bookingCode (BookingCode, optional),

      Mã định danh kết quả search-all-rate, mỗi lần gọi search-all-rate sẽ tạo ra tripId mới, nó được sử dụng khi đi thao tác đặt phòng

      • bookingCode (string, optional)

        Mã dùng mô tả các thông tin cơ bản của booking

      • bookingNumber (string, optional)

        Mã dùng tham chiếu đến booking

  • duration (integer, optional),

  • errors (Array[Error], optional),

  • infos (Array[Info], optional),

  • success (boolean, optional),

  • textMessage (string, optional)

Last updated