Portal Setup
- Production supplier credentials are added and the intended suppliers are enabled in the production portal.
- A production API key has been created in the portal.
- Your production backend uses
https://api.unifystays.com, not the sandbox base URL. - The production API key is stored only in protected server-side configuration.
Customer Flow
- Destination autocomplete returns a selected place and hotel correctly.
- The guest form sends a nationality
iso_codefrom the Nationalities API. - Search results use the selected destination ID, stay dates, occupancy, and nationality.
- Instant-mode search refreshes live prices while the customer views results.
- Room options are requested again for the selected hotel before checkout.
- The room SSE connection collects
provider_optionsuntildoneand tolerates one supplier failing without discarding other options. - Prebook sends the
hotel_idandbooking_tokenfrom the same selected option context. - Mapped and unmapped rooms both reach checkout; a null
unifystays_roomdoes not block booking. - The checkout presents any price or availability change returned by prebook.
- Create Booking sends every prebook
room_allocation_idexactly once with guest counts matching its occupancy. - Every booking attempt has one unique
Idempotency-Key. - Your system polls booking status after booking creation and cancellation.
Failure Handling
- Customers receive a clear recovery path for expired room or prebooking tokens.
- Hotel/token mismatch and room allocation/occupancy errors return the customer to a recoverable checkout state.
- Your integration retries only safe requests and reuses the same idempotency key for a booking retry.
- Support tooling records the returned
X-Request-Idfor failed calls. - Rate-limit and server-error responses use delayed retries rather than immediate loops.
Ready to Go Live
Once live, enable additional supported suppliers from the Unifystays portal.
Your application keeps the same API contract, search flow, and booking flow.