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. Search — POST /connect/hotels/v1/availability with dates far enough in the future, valid occupancies, and your sandbox connectionCodes.
  2. Quote — POST /connect/hotels/v1/prebooking with optionRefId from search.
  3. Book — POST /connect/hotels/v1/booking with holder, rooms, and the same connectionCodes. Set a unique clientReference per attempt (e.g. UUID) for reconciliation.
  4. Retrieve — POST /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. Cancel — POST /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​