Skip to main content

Domain Offers MIG

Accor availability allows any partner to retrieve hotel offers. Response is not paginated, nor streamed.

Version
1.55.0
Status
Coming soon
Incident
No incident

Overview

Accor has built an Availability Hub (NGA Domain Offers API) that allows any Partner to connect and access hotel offers in real-time.

Once connected, the Partner will benefit from this connection and will be able to:

  • Retrieve the best offers for one or more hotels for a given date and duration.
  • Retrieve calendar availability showing best offers for one or more hotels over a given period.
  • Retrieve all detailed offers for a specific hotel with room types, rate plans, and policies.
  • Retrieve a specific offer by its unique identifier, following the previous search.

As a Partner, you'll have to comply with the following steps:

  1. Connect to the Accor Availability Hub
  2. Test & Certify your connection with Accor
  3. Go live


Key Objectives

The NGA Domain Offers API provides unified and optimized access to Accor hotel offers, enabling distribution channels to search, compare, and retrieve offers for one or multiple hotels with support for multiple use cases: night stays, day-use reservations, family packages, group bookings, accessible rooms (PMR), spa & thalasso packages, and loyalty program benefits.


Features

Best Offers (Multi-Hotels)

Search for the best available offer across multiple hotels based on specified stay criteria. Supports GET and POST methods. Up to 300 hotels can be requested at once.

Endpoint: /hotels/best-offers

Calendar Best Offers

Retrieve a calendar of best offers over a specified period for a specific hotel. Ideal for flexible date planning and pricing visualization.

Endpoint: /hotels/{hotelId}/calendar/best-offers

Offers (Detailed Hotel Search)

Comprehensive search of all available offers for a hotel with complete details including rooms, policies, and additional products.

Endpoint: /hotels/{hotelId}/offers

Offer By ID

Retrieve a specific offer via its unique identifier (18 alphanumeric characters). Supports upsells with include=UPSELLS parameter.

Endpoint: /hotels/offers/{offerId}


Specific Use Cases

The API supports various specialized use cases:
Specific Use Cases

Global architecture

The NGA Domain Offers API is built on a Hexagonal Architecture pattern, ensuring clear separation between business domain, adapters, and REST API layers.


Architecture Layers

Use Cases


Data Flow

  1. Client (Web/Mobile/Partner) sends REST request with stay criteria
  2. REST Controller validates parameters and headers (clientId, auth)
  3. Service layer orchestrates business calls
  4. IdentificationFacade retrieves UserContext (clientId features, auth type)
  5. AuthenticationAdapter validates authentication (OAuth2/JWT/Basic)
  6. HotelFacade retrieves hotel data from cache
  7. BestOffersFacade or OffersFacade calls domain business logic
  8. ACRS Adapter transforms criteria → ACRS request (multi/single/pricing)
  9. ACRS Provider performs HTTP call to ACRS (Central Reservation System)
  10. Transform ACRS response → Domain Model
  11. Enrichment (exchange rates, policies, loyalty benefits)
  12. Transformer: Domain Model → DTO Response
  13. Return JSON to client (200 OK or 206 Partial if warnings)


Technical Stack

  • Java 25 with modern features (var, records, pattern matching)
  • Spring Boot 3.5.9 (Jakarta EE - not javax)
  • Architecture: Hexagonal (domain/adapter/rest)
  • Main Provider: ACRS via asynchronous HTTP client
  • Authentication: OAuth2, JWT, Basic Auth support per client
  • Rate Limiting: Protection against overload
  • Monitoring: Actuator endpoints (/health, /info)

About us

We are far more than a worldwide leader. We are 300,000 hospitality experts placing people at the heart of what we do, and nurturing real passion for service and achievement beyond limits. We take care of millions of guests in our 5,000 addresses.