Create hotel payment link
sabre_hotel_card_linkCreates a one-time payment page for one rate. Inputs: the rate_key and rooms from sabre_hotel_rates_coded, the guest's name as on their ID, e-mail and phone, and the expected_total and currency copied from that rate row. The page shows the price, deposit and cancellation terms; the guest accepts them and enters their card there, and the booking is made when they submit and the hotel confirms. Card details are entered only on that page; this tool takes none. loyalty_id is the guest's own number with the hotel's loyalty programme, not an advisor's number; it is filed on the booking. Points, elite nights and your status benefits apply as usual, on top of the partner benefits. A stay with children: the link can only be made for the adults, from the adults-only rate key and a rate with free cancellation; the stay is booked as N adults, children and child_ages record the party, and after booking the advisor (flybestorg@gmail.com) confirms the children and any changes (extra-person charge or bedding) with the hotel and gets back to them. No link is made for a non-refundable or prepaid rate with children; those requests go to flybestorg@gmail.com with hotel, dates, room and rate, number of adults and the children's ages. allow_deposit / allow_nonrefundable permit such a rate to be offered; the page then asks the guest for consent. Creating the page sends the guest and stay details to FlyBest's booking service and the reservation system; nothing is booked until the guest submits the page and the hotel confirms. The booking then appears in my_trips.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | The guest's own e-mail address, required: the hotel sends its confirmation and any later change to it, so without it the property cannot reach the traveller. | ||
| phone | No | ||
| rooms | No | Rooms in ONE segment, all for the same guest and the same room type — the way an agent sells two rooms on one PNR. The rate_key comes from sabre_hotel_rates_coded with the same rooms=N: a two-room key and a one-room key are entirely different keys and only the two-room one sells two rooms, and its total is already the whole stay. Rooms sold together share one segment and CANNOT be cancelled individually. Different room types cannot share a sell — for that, book the first room and then mint a second link with add_to_pnr set to the locator it returned. LIVE on production since 2026-09-11 (certified on CERT: one segment carrying NumberOfUnits=2). | |
| adults | No | ||
| surname | Yes | ||
| check_in | Yes | YYYY-MM-DD | |
| children | No | ||
| currency | Yes | REQUIRED. The currency of expected_total, copied from the SAME rate row — the hotel's OWN currency, not USD. The commit compares the whole tuple, so a wrong currency refuses the booking AFTER the guest has typed their card. | |
| rate_key | Yes | from sabre_hotel_rates_coded | |
| check_out | Yes | YYYY-MM-DD | |
| add_to_pnr | No | An EXISTING Sabre locator this room should JOIN instead of creating a new PNR. THIS is how one guest gets a king AND a suite on one record: Sabre refuses to put two room types in one sell, so book the first room normally, then mint a second link with this set to the locator it returned. Each segment keeps its OWN rate, its own deposit and its own cancellation policy, and they can be cancelled separately. Leave it out for an ordinary booking. | |
| chain_code | No | ||
| child_ages | No | ||
| given_name | Yes | ||
| hotel_code | Yes | Sabre property code | |
| hotel_name | No | ||
| loyalty_id | No | the guest's own programme number with the hotel's chain (not an advisor ID), filed on the segment when the room is booked | |
| allow_deposit | No | permits a deposit rate — one whose card is charged now — to be offered; the page asks the guest for consent | |
| expected_total | Yes | the all-in total of the chosen rate row, e.g. 288.09 - a moved rate aborts the booking | |
| expected_deposit | No | the deposit figure from the rates row (deposit_amount) as shown to the payer. OPTIONAL since 2026-09-26: the page charges the hotel's own deposit as long as it is within the stay total, and reports what it took — a deposit that moved no longer refuses at the guest's card. Pass it when you have it so the guest sees the difference. | |
| allow_nonrefundable | No |