Skip to main content

Sandbox & Testing

Sandbox lets you exercise the full search → quote → book → retrieve → cancel flow without live inventory charges. This page summarizes how to test effectively.

Sandbox vs production

AspectSandboxProduction
API hosthttps://test-api.bundleport.com (recommended) or https://api.bundleport.com with sandbox keyshttps://api.bundleport.com with production keys
API keyssk_test_* from the dashboardsk_prod_*
BookingsTest data; no real reservationsReal reservations

Always use sandbox keys and the test API host when integrating.

Test connection codes

Your account receives one or more connection codes for sandbox integrations. Examples you may see in documentation (replace with codes assigned to your organization):

  • testb-hbds-1876 — common in examples for a major bedbank test connection
  • Additional codes are provisioned per integration; confirm yours in the dashboard or with support

Use the codes in settings.connectionCodes on every transactional call.

  1. SearchPOST /connect/hotels/v1/availability with dates far enough in the future, valid occupancies, and your sandbox connectionCodes.
  2. QuotePOST /connect/hotels/v1/prebooking with optionRefId from search.
  3. BookPOST /connect/hotels/v1/booking with holder, rooms, and the same connectionCodes. Set a unique clientReference per attempt (e.g. UUID) for reconciliation.
  4. RetrievePOST /connect/hotels/v1/bookingdetail with the returned bookingID.
  5. List (optional)POST /connect/hotels/v1/bookinglist filtered by date range or clientReference to verify a booking after timeouts or unclear responses.
  6. CancelPOST /connect/hotels/v1/cancel when your test policy allows it.

Debugging in sandbox

auditTransactions: true

Set settings.auditTransactions to true to include provider-level trace data in auditData (useful for support and integration debugging). Do not log raw audit payloads in production or commit them to source control.

testMode: true

Set settings.testMode to true when your integration supports it so downstream systems treat the traffic as non-production.

skipHotelCodesMapping (when applicable)

Some sandbox scenarios use hotel codes that are not yet mapped in the content catalog. Your integration may support skipping hotel-code mapping for availability in those cases—confirm with your technical contact.

Simulating real-world outcomes

  • No availability — tighten dates or use restrictive filters; empty options with tracing is a valid outcome.
  • Price change — compare search vs quote prices; handle warnings and re-quote before book.
  • Provider timeout / partial failure — check tracing.accessSpans and warnings; one supplier may fail while others succeed.
  • ON_REQUEST — booking may return pending confirmation; see Create a booking.

Test payment cards

If a booking requires a card in sandbox, use test card numbers only (e.g. vendor-documented test PANs). Never use real card data in sandbox.

Next steps