Ellipse Gradient for Header

Duetto Integration Guide

Duetto integrates hospitality revenue, reservation, pricing, forecasting, and performance data with connected hotel systems through customer- or partner-specific interfaces that require confirmation.

Duetto integration options at a glance

Duetto publicly describes integrations with hospitality systems, including property-management systems, central reservation systems, booking engines, and distribution platforms, but its public materials do not confirm a versioned REST API, webhook model, file interface, batch API, or authentication scheme. The available interface may depend on the customer or partner arrangement. Martini can consume a confirmed Duetto or hospitality-platform API, receive selected supported notifications, run scheduled synchronization workflows, transform reservation and revenue data, and expose a normalized API to downstream systems. Authentication, access scope, pagination, rate limits, and read/write permissions should be confirmed before implementation.

Integration pointSupported by Duetto?Common use casesHow Martini supports it
REST APIsNot confirmedDuetto publicly describes integrations with hospitality systems, but a public, versioned REST API reference was not located. A confirmed API could support reservation, pricing, forecast, or performance data exchange.Martini can consume a confirmed Duetto or connected-platform REST API, handle pagination and incremental retrieval where available, transform payloads, and orchestrate writes to downstream systems.
GraphQL APIsNot confirmedNo official public Duetto GraphQL documentation was located, so GraphQL access should not be assumed.If Duetto or a connected hospitality platform provides GraphQL access, Martini can consume it using a configured API workflow; availability and schema must be confirmed first.
SOAP APIsNot confirmedNo official public Duetto SOAP documentation was located. SOAP should only be considered if a specific partner interface documents it.Martini can consume a confirmed SOAP service and transform its XML responses, but no Duetto SOAP capability is established by the supplied research.
Webhooks / outbound callbacksNot confirmedPublic integration material does not confirm customer-configurable webhooks or complete event coverage for reservations, pricing, forecasts, or availability.If selected notifications are provided, Martini can expose a receiving API or webhook workflow, validate the message, retrieve current data if necessary, and route the event.
Bulk / async / batch APIsNot confirmedNo public Duetto bulk, asynchronous, or batch API specification was located. Scheduled extraction may instead be available through a customer or partner arrangement.Martini can orchestrate scheduled or asynchronous processing when the relevant endpoint or export is confirmed, including checkpointing and item-level error handling.
File / attachment APIsNot confirmedNo official public Duetto file-import, file-export, or attachment API documentation was located.Martini can process confirmed file exchanges using workflows and transformation capabilities, but a Duetto file interface must be supplied by the vendor or partner.
Database / analytics accessNot confirmedDuetto is a hosted SaaS platform, and public documentation does not confirm direct database, JDBC, or analytical database access.Martini can load confirmed Duetto or source-system extracts into SQL or warehouse targets, without requiring direct access to Duetto's underlying database.
AuthenticationNot confirmedPublic sources do not identify whether Duetto access uses API keys, OAuth 2.0, bearer tokens, Basic Authentication, client certificates, or managed integration accounts.Martini can store confirmed credentials and connection settings in environment configuration or secrets, but the Duetto authentication and permission model must be provided before deployment.

How Duetto exposes data and business events

Duetto REST APIs

Duetto publicly describes integrations with external hospitality systems, but the supplied research does not confirm a public, versioned REST API or its resource schema. Any direct API access may be customer- or partner-specific.

Martini implementation pattern

Martini implementation pattern: when Duetto or a connected hospitality platform provides authenticated REST endpoints, Martini consumes them from a workflow, retrieves pages or date windows, maps the confirmed payloads to a canonical model, and writes the result to downstream systems. The workflow should record checkpoints and distinguish vendor capability from Martini processing.

Implementation sequence

Confirm the Duetto or partner API, resource model, and permissions
Configure the supplied authentication details as environment secrets
Retrieve reservations, rates, or performance data within supported filters
Process pages or bounded date windows and store a checkpoint
Map source fields to the canonical hospitality model
Apply validation, idempotency, and business rules before writing the target

Duetto webhook-style notifications

Public Duetto materials do not confirm general customer-configurable webhooks or complete event coverage. If a partner arrangement provides selected notifications, coverage should be treated as event-specific.

Martini implementation pattern

Martini implementation pattern: expose a receiving API or webhook workflow only for the events Duetto or the connected platform documents. Martini validates the notification, records its correlation information, retrieves the current resource when required, and routes the result to operational or analytical targets.

Implementation sequence

Confirm the supported event types and notification authentication
Receive the notification through a Martini API or webhook workflow
Validate the property, event, and source identifiers
Retrieve the current reservation or availability data if the event is only a notification
Apply deduplication and business rules
Write the result and record an outcome for replay or investigation

Scheduled hospitality data synchronization

A scheduled exchange may be available through a customer-specific Duetto integration, connected PMS, CRS, booking engine, or export arrangement, although no general Duetto batch interface is publicly confirmed.

Martini implementation pattern

Martini implementation pattern: use a scheduler-triggered workflow to retrieve or process the confirmed source, apply an overlap window where necessary, normalize hotel data, and load a target warehouse or operational application. The workflow can isolate item-level failures while preserving the source checkpoint.

Implementation sequence

Confirm the source system and available date or modification filters
Start the Martini workflow on an agreed schedule
Retrieve the bounded property, reservation, rate, or performance dataset
Normalize business dates, timestamps, currencies, and identifiers
Upsert valid items using stable source keys
Store checkpoints, failures, and replay information

Common Duetto integration patterns

Pattern 1: Synchronize reservations to a data warehouse

When to use this pattern

Use this pattern when reservation and stay data is exposed by Duetto or, more commonly, by a connected PMS, CRS, or booking platform and must be centralized for reporting or downstream operations.

Integration direction
Duetto or connected hospitality platform
Martini
Snowflake
Example Mapping
Duetto FieldCanonical FieldTarget Field
Property IDpropertyIdproperty_id
Reservation IDreservationIdreservation_id
Room TyperoomTypeIdroom_type_id
Modification TimestampmodifiedAtmodified_at
Martini implementation pattern

A scheduled Martini workflow retrieves incremental data using supported modification filters or an overlap window, maps reservations into a canonical schema, validates property and room-type mappings, and performs idempotent warehouse upserts. Transient failures receive bounded retries, while item-level validation failures are retained for replay.

Martini capabilities used
  • workflows
  • API consumption
  • scheduling
  • data mapping
  • business rules
  • error handling

Pattern 2: Distribute approved pricing recommendations

When to use this pattern

Use this pattern only when Duetto exposes a confirmed write-capable pricing interface or when an authorized connected system accepts Duetto recommendations for distribution.

Integration direction
Duetto
Martini
Oracle OPERA Cloud or SiteMinder
Example Mapping
Duetto FieldCanonical FieldTarget Field
Room TyperoomTypeIdroom_type_id
Rate PlanratePlanIdrate_plan_id
Recommended RateapprovedRaterate
Effective DateeffectiveDatestart_date
Martini implementation pattern

Martini retrieves approved recommendations, validates property, room type, rate plan, effective dates, minimum and maximum rate rules, restrictions, and manual overrides, then sends only eligible updates to the confirmed target. Duplicate prevention and explicit exception routing protect against unintended write-back.

Martini capabilities used
  • workflows
  • API consumption
  • data mapping
  • business rules
  • validation
  • error handling

Pattern 3: Load revenue performance into analytics

When to use this pattern

Use this pattern when Duetto or an approved partner interface exposes occupancy, ADR, RevPAR, revenue, pickup, forecast, or market-segment measures for extraction.

Integration direction
Duetto or connected hospitality platform
Martini
Snowflake
Example Mapping
Duetto FieldCanonical FieldTarget Field
Business DatebusinessDatebusiness_date
OccupancyoccupancyRateoccupancy_rate
Average Daily Rateadradr
RevenuerevenueAmountrevenue_amount
Martini implementation pattern

A scheduler starts a Martini workflow that extracts data by property and business date, normalizes time zones and currencies, validates measure completeness, and loads staged results into Snowflake. Source timestamps and extraction checkpoints support reconciliation and safe reruns.

Martini capabilities used
  • scheduling
  • workflows
  • data mapping
  • JSON handling
  • business rules
  • monitoring

Pattern 4: Process supported reservation notifications

When to use this pattern

Use this conditional pattern when Duetto or a connected PMS provides documented event notifications for reservation, availability, or related changes.

Integration direction
Duetto or connected PMS
Martini
Salesforce
Example Mapping
Duetto FieldCanonical FieldTarget Field
Event TypeeventTypesource_event_type
Reservation IDreservationIdreservation_id
Market SegmentmarketSegmentmarket_segment
Modification TimestampmodifiedAtlast_modified_at
Martini implementation pattern

Martini receives the supported notification through an API workflow, validates its signature or credential scheme if provided, deduplicates the event, and retrieves current data when the message is only a signal. It maps the result to Salesforce and sends malformed or unavailable events to an exception path.

Martini capabilities used
  • API exposure
  • webhooks
  • workflows
  • data mapping
  • validation
  • error handling

Applications commonly integrated with Duetto

Duetto operates within a broader hospitality technology landscape. The applications below are practical integration candidates based on common hotel architecture; a specific Duetto-certified relationship, endpoint, or write-back capability must be confirmed with Duetto or the relevant partner.

Application Scenario Direction Martini Pattern
Oracle OPERA Cloud Exchange reservations, room inventory, rates, occupancy, and property information for revenue-management workflows. Oracle OPERA Cloud → Martini → Duetto Martini can schedule or receive confirmed source data, map OPERA Cloud identifiers to Duetto property, room-type, rate-plan, and reservation concepts, and apply validation and idempotent upsert rules. Any pricing write-back should be gated by confirmed authorization and approval rules.
Cloudbeds Combine property-management and reservation data with Duetto forecasts, pricing processes, and performance analysis. Cloudbeds → Martini → Duetto A Martini workflow can retrieve or receive supported Cloudbeds data, normalize dates, currencies, room types, and rate plans, then route the result to the confirmed Duetto interface or an analytical target. Failed items can be isolated for replay.
Mews Exchange reservation, availability, property, and rate information for revenue analysis and pricing operations. Mews → Martini → Duetto Martini can orchestrate incremental extraction where supported, maintain property-specific mappings, validate identifiers, and send only approved data to the configured Duetto or downstream endpoint. The workflow can preserve source timestamps and correlation IDs.
Stayntouch Synchronize PMS reservations, room types, occupancy, and rate information with revenue processes. Stayntouch → Martini → Duetto Martini can run a scheduled workflow against the confirmed Stayntouch interface, transform PMS payloads into a canonical hospitality model, and apply duplicate detection using property, reservation, and modification identifiers before delivery.
SiteMinder Coordinate rates, availability, and restrictions across distribution channels when the configured hospitality architecture supports the flow. Duetto → Martini → SiteMinder Martini can validate approved rate recommendations, effective dates, room types, and restrictions before sending them to a confirmed SiteMinder interface. Rejections and unavailable mappings should be routed to an exception process rather than retried indefinitely.
Salesforce Provide commercial teams with property, booking, and revenue-performance information for account management and reporting. Duetto → Martini → Salesforce Martini can retrieve confirmed Duetto or source-system data, map properties, reservations, market segments, and performance measures to Salesforce objects, and use correlation keys to prevent duplicate updates.
Snowflake Centralize reservation, forecast, revenue, occupancy, and performance data for enterprise analytics. Duetto → Martini → Snowflake A scheduled Martini workflow can extract data through a confirmed API or export, normalize business dates and currencies, validate measures, and load staged data into Snowflake through the available database or ingestion interface.

How to build a Duetto integration in Martini

Objective

Establish which Duetto, PMS, CRS, booking-engine, or partner interface is available and define the source of truth for each data object.

Instructions in Martini

  • Obtain the applicable Duetto or partner integration specification
  • Confirm whether access is direct, partner-mediated, or through a connected hospitality platform
  • Document authentication, permissions, read/write scope, pagination, rate limits, and supported filters
  • Define ownership for reservations, inventory, rates, recommendations, and analytical measures

Objective

Configure the confirmed authentication method without embedding credentials in workflows or source code.

Instructions in Martini

  • Store API keys, tokens, certificates, or managed connection details in Martini environment configuration or secrets
  • Limit access to the properties and operations required by the integration
  • Confirm credential rotation and expiration procedures
  • Test authorization against a non-production account where available

Objective

Select a scheduler, receiving API, or other confirmed trigger based on the available Duetto interface and latency requirements.

Instructions in Martini

  • Use a scheduler for supported periodic extraction or export processing
  • Use a receiving API only for documented Duetto or partner notifications
  • Define overlap windows and checkpoints when event delivery or incremental filters are unavailable
  • Set execution limits appropriate to the vendor and target systems

Objective

Obtain reservations, rates, property configuration, or performance data from the confirmed source while preserving source context.

Instructions in Martini

  • Retrieve bounded date ranges or modification windows
  • Process pagination and continuation information when provided
  • Preserve property IDs, source identifiers, timestamps, and correlation IDs
  • Avoid assuming that Duetto product concepts have publicly standardized endpoint names

Objective

Convert hospitality payloads into a stable canonical model suitable for operational and analytical targets.

Instructions in Martini

  • Map Property, Room Type, Rate Plan, Reservation, Market Segment, and performance measures
  • Normalize business dates, event timestamps, currencies, taxes, fees, and gross or net treatment
  • Use stable identifiers instead of display names wherever possible
  • Record unmapped values for controlled configuration updates

Objective

Protect data quality and prevent unauthorized pricing or duplicate processing before writing to a target.

Instructions in Martini

  • Validate property, room-type, rate-plan, and market-segment mappings
  • Apply approval, effective-date, restriction, and manual-override rules to pricing flows
  • Use reservation or source update identifiers for idempotency
  • Route invalid or incomplete items to an exception path

Common Duetto data objects used in integrations

ObjectTypical UseCommon target systemsMartini handling
PropertyIdentifies the hotel or hospitality location managed in Duetto and scopes reservations, rates, inventory, and performance measures.PMS, CRS, data warehouse, SalesforceMartini maps stable property identifiers, preserves location and source-system context, and applies property-specific configuration rules.
Room TypeRepresents a sellable accommodation category used for availability, pricing, and revenue analysis.PMS, CRS, booking engine, distribution platformMartini maps source identifiers rather than relying only on display names and validates that the room type is active and configured for the target.
Rate PlanDefines a pricing or booking-rule structure associated with room inventory.PMS, CRS, booking engine, SiteMinderMartini validates rate-plan eligibility, effective dates, restrictions, and approval state before distributing or storing rate information.
ReservationRepresents a guest booking or reservation event received from a connected hospitality system.PMS, CRM, finance platform, data warehouseMartini uses reservation and property identifiers with modification timestamps for incremental synchronization, idempotent upserts, and replay.
Market SegmentClassifies demand, production, and revenue for analysis and forecasting.Data warehouse, Salesforce, reporting platformsMartini maps segment codes through a controlled configuration table and routes unmapped values to data-quality handling.
Forecast or Performance DataContains measures such as demand, occupancy, ADR, RevPAR, revenue, pickup, and related analytical values.Snowflake, SQL databases, BI platforms, SalesforceMartini normalizes business dates, time zones, currencies, and gross/net treatment before validation and warehouse loading.

Authentication and security considerations

Confirm the access model

Public Duetto materials do not identify the authentication scheme, token format, scopes, credential lifecycle, or webhook signing model. Confirm whether access uses partner credentials, an account-specific token, a managed integration account, or a connected hospitality platform.

Protect integration secrets

  • Store credentials and API keys in Martini environment configuration or secrets.
  • Limit permissions to the required properties, objects, and operations.
  • Do not assume PMS or CRS credentials can be used directly against Duetto.
  • Confirm rotation, expiration, and production access procedures before deployment.

Operational considerations for Duetto integrations

Plan for an unconfirmed interface

Obtain the applicable Duetto or partner specification before finalizing the design. Confirm endpoints, object identifiers, filters, pagination, rate limits, retry-after behavior, and read/write permissions.

Make synchronization repeatable

  • Use stable property, reservation, room-type, and rate-plan identifiers.
  • Use modification timestamps, versions, checkpoints, or bounded overlap windows for incremental processing.
  • Preserve business dates separately from event timestamps and retain source time-zone context.
  • Normalize currencies, taxes, fees, and gross or net revenue treatment.
  • Use bounded retries for transient failures and isolate item-level validation failures.
  • Test changes to room types, rate plans, market segments, properties, and distribution configuration.

Why use Martini instead of scripts or point-to-point integrations?

Coordinate multiple hospitality systems

Duetto integrations may involve Duetto, a PMS, a CRS, a booking engine, a distribution platform, and analytical targets. Martini centralizes orchestration, mappings, business rules, credentials, and error handling instead of scattering logic across scripts.

Support controlled change

Martini workflows can provide scheduled or API-led execution, reusable transformations, canonical models, idempotent processing, and explicit exception paths. This is useful when the available Duetto interface is customer-specific or changes as partner arrangements evolve.

Improve operational visibility

  • Separate retrieval, transformation, validation, and target-write stages.
  • Preserve correlation IDs, source payload context, checkpoints, and replay information.
  • Expose normalized APIs without requiring every consumer to understand Duetto-specific details.

Frequently asked questions

How can Duetto be integrated with enterprise systems?

Duetto integrations commonly involve hospitality source systems such as PMSs, CRSs, booking engines, and distribution platforms. The supplied research does not confirm a public Duetto API specification, webhook model, file interface, or authentication scheme, so the practical approach is to confirm the customer- or partner-specific interface first. Data can then be synchronized through the available API, notification, export, or connected-platform mechanism.

Can Martini integrate with Duetto?

Yes, Martini can integrate with Duetto when the required interface is made available. It can consume a confirmed Duetto or hospitality-platform API, receive documented notifications, run scheduled workflows, transform hospitality data, and expose APIs for downstream applications. The available Duetto access method and permissions must be confirmed before implementation.

Do I need a connector to integrate Duetto with Martini?

No. A dedicated Duetto connector is not required. Martini can use Duetto's confirmed native integration mechanisms, a connected PMS or CRS API, supported webhook-style notifications, exports, or other documented endpoints. A native Martini Duetto connector was not verified in the supplied research.

Is there any extra Lonti cost to integrate Duetto with Martini?

Lonti does not charge an additional per-connector or per-vendor fee to integrate Duetto. The integration is subject to the provisioned capacity of the Martini environment. Separate costs may apply from Duetto, a connected PMS or CRS, cloud infrastructure, or other third-party systems depending on subscriptions, usage, and deployment model.

Which Duetto integration method should an enterprise use?

The method depends on the customer or partner arrangement. A confirmed REST API would generally support controlled retrieval or write-back, while selected event notifications could support lower-latency processing. Scheduled extraction may be appropriate for performance data. Public Duetto GraphQL, SOAP, bulk, file, database, and general authentication capabilities were not confirmed.

Can Martini receive Duetto webhooks or callbacks?

Only if Duetto or the connected hospitality platform provides documented webhook or callback notifications for the required events. Public materials do not confirm general customer-configurable webhooks or complete event coverage. Martini can expose a receiving API and process selected supported notifications with validation and deduplication.

How does synchronization handle mapping, duplicates, and changing reservations?

Martini can map Property, Room Type, Rate Plan, Reservation, Market Segment, and performance data into a canonical model. Incremental synchronization should use modification timestamps, versions, or bounded overlap windows where available. Stable identifiers, property context, checkpoints, and idempotent upserts help prevent duplicate reservations and safely process updates.

Can Martini expose an API façade for Duetto data?

Yes. Martini can expose a controlled API that normalizes confirmed Duetto or connected-platform data for downstream applications. The façade can apply authorization, validation, transformation, business rules, and consistent error handling while keeping vendor-specific access details behind the integration workflow.