Skip to main content

Booking lifecycle

The supplier contract gives Kaptio one consistent lifecycle for accommodation, activities, and transfers. A supplier adapter translates each lifecycle action into the operations supported by that supplier.

Lifecycle at a glance

Search → Reserve → Book → Retrieve → Amend → Retrieve → Cancel
│ │
Cost then confirm Cost then confirm
StageWhat Kaptio requestsWhat the supplier adapter doesWhat Kaptio records
SearchAvailability and rates for dates, travellers, and product criteriaAuthenticates to the supplier, searches its inventory, and maps products, prices, policies, and availabilitySearch response and supplier product identifiers for the next action
ReserveHold the selected option where the supplier supports a holdCreates a supplier hold, or records a local pre-booking state when the supplier only supports immediate bookingTenant, itinerary context, selected product, and reservation status
BookConfirm the selected optionSends the booking request once and captures the supplier confirmationSupplier booking reference, confirmed status, and response snapshot
RetrieveRefresh the latest booking detailsReads the booking from the supplier using its referenceCurrent status and supplier-confirmed details
Cost amendmentQuote the impact of a proposed changeRequests a supplier quote or derives the available policy resultQuoted cost and any restrictions
Confirm amendmentApply the approved changeSubmits the amendment and retrieves the updated bookingUpdated booking details and status
Cost cancellationQuote the cancellation impactRequests the supplier's cancellation quote or evaluates the returned policyCancellation cost and deadline information
Confirm cancellationCancel the bookingSubmits the cancellation and captures the supplier resultCancelled status and supplier response
ReconcileCheck for changes made outside KaptioPolls or receives supplier updates and compares them with stored stateRefreshed status and an auditable change trail

Search and availability

A search starts in the Kaptio workflow with criteria such as destination, dates, number of travellers, rooms, or service type. KTAPI sends those criteria through Edge Connect using the common contract.

The adapter translates them into the supplier's search message and normalizes the response:

  • supplier product and rate identifiers,
  • availability status,
  • price and currency,
  • room, board, or service details,
  • cancellation and amendment policies,
  • request-only or confirmation conditions.

The normalized response means the Salesforce workflow does not need supplier-specific fields to present the available options.

Reserve and book

Suppliers do not all separate a temporary reservation from a confirmed booking.

  • If the supplier supports a hold, Reserve creates that hold and Book confirms it.
  • If the supplier only supports immediate booking, the adapter records the selection as a local reservation and waits until Book before calling the supplier.

The adapter documents the mapping for each supplier. It never creates a supplier booking during search, and it does not report a confirmed hold when the supplier did not provide one.

Duplicate-submission protection

Booking actions may be retried because of a browser refresh, a network interruption, or an upstream timeout. Edge Connect stores an idempotency result for each action.

If the same action arrives again, Edge Connect returns the stored response instead of creating a second supplier booking. The stored result is tenant-scoped and tied to the route and request identity.

See Performance and reliability for how duplicate protection, session reuse, caching, and reconciliation are applied to native adapters.

Retrieve

Retrieve asks the supplier for the current booking rather than relying only on the response captured when it was created. It is used:

  • after booking to confirm the supplier's final state,
  • after an amendment or cancellation,
  • during support investigation,
  • during reconciliation.

The supplier booking reference links the Kaptio item to the external booking. That reference is stored as structured booking state, not inferred from display text.

Amendments

Amendments use a cost-then-confirm pattern:

  1. Cost amendment describes the proposed change and requests its financial and operational impact.
  2. Kaptio presents the result for review.
  3. Confirm amendment applies the change only after approval.
  4. Retrieve refreshes the booking from the supplier.

If the supplier does not expose a separate quote operation, the adapter uses policy data already returned by the supplier where possible. If no reliable cost is available, the response says that explicitly; it does not assume a zero cost.

Cancellations

Cancellations follow the same safety pattern:

  1. Cost cancellation returns the supplier's current cancellation charge and policy.
  2. The user reviews the effect.
  3. Confirm cancellation submits the cancellation.
  4. Retrieve confirms the final supplier status.

A cancellation is not marked complete solely because the request was sent. The adapter records the outcome returned by the supplier, including request-only, pending, rejected, or confirmed states where relevant.

Supplier sessions

Some suppliers issue an authentication token that must be reused across calls. Edge Connect keeps that token in tenant-scoped session storage:

  1. Use an unexpired session when one exists.
  2. Log in when no valid session is available.
  3. If the supplier reports an expired session, invalidate it, log in again, and retry the business action once.
  4. Propagate any further failure instead of repeatedly submitting the action.

Supplier tokens and passwords are never included in logs or returned to Salesforce.

Reconciliation

A supplier booking may change outside Kaptio — for example, a supplier may confirm an on-request service or an operator may update it in the supplier portal.

Reconciliation checks the supplier's latest state and links it to the stored booking reference. Each run records its progress so it can resume without scanning the same range indefinitely.

Reconciliation complements Retrieve:

  • Retrieve refreshes one booking in response to a user or workflow action.
  • Reconciliation checks a set of bookings on a schedule or from supplier updates.

Errors and unsupported capabilities

Supplier errors are mapped into the common error contract while preserving the supplier's error code and useful description. The connectivity layer distinguishes:

  • authentication or expired-session errors,
  • supplier validation errors,
  • unavailable inventory,
  • transport or supplier service failures,
  • capabilities the supplier does not expose.

An unsupported capability is explicit. It is not converted into a successful response, an assumed zero cost, or a fabricated supplier reference.