FAQs

FAQ Home
Contact
Guest Policy
Room, Rate Plan Setup
Cancellation Policy
Error
Onboard
Rate Calculation
Photo
Other


Contact

How should I set the Contact Info?

Please provide "ContactProfileType="PhysicalLocation" which is used for address

<ContactInfo ContactProfileType="PhysicalLocation">

<Addresses>

            <Address Language="en-US">

              <AddressLine>213 Street Name.</AddressLine>

              <CityName>Bangkok</CityName>

              <PostalCode>10250</PostalCode>

              <CountryName>TH</CountryName>

            </Address>

          </Addresses>

</ContactInfo>

Please provide "ContactProfileType="General" which is used for user login, booking notification, and contact for Agoda

<ContactInfo ContactProfileType="PhysicalLocation">

<Names>

            <Name>

              <GivenName>John</GivenName>

              <Surname>Smith</Surname>

            </Name>

          </Names>

<Phones>

            <Phone PhoneNumber="+123456789"/>

          </Phones>

          <Emails>

            <Email>[email protected]</Email>

          </Emails>

</ContactInfo>

Will these email/phone number be shared with the guest?

No, we do not shared pushed email or phone with guest at the moment


Guest Policy

How can I set GuestInfo (age policy/child stay free) in the Property call?

Whats the difference between child_age_to and max_child_age ?

  • ChildAgeTo = we consider guest as children from this age and below.
  • MaxChildAge = we will collect extra bed price from this age and above


Room, Rate Plan Setup

How can I set RoomConfiguration in Room call?

We pushed room creation / update with amenities and received , but some amenities are missing in YCS Room Setup. Did the API fail?

No. If the API response returns , the request was successfully ingested and processed.
Some amenities may not appear in the YCS Room Setup checklist because certain AmenityCodes are classified by Agoda as “All Room Type” (global) facilities and are stored at property level rather than at the individual room-type level.

Which AmenityCodes are treated as “All Room Type” (global) facilities?

In Agoda’s content processing pipeline (e.g., CPAPI/CPP), the following codes are commonly treated as global facilities. When sent via API, they may be mapped to property-level storage (e.g., hotel_all_room_facility) instead of room-level storage:

25 — Air conditioning
31 — Wireless internet
32 — LAN internet
33 — Safe box
75 — Non-smoking rooms

Why do these amenities show on Agoda Front-End (FE) but not in YCS?

Because the Agoda Front-End (FE) can display amenities sourced from both property-level (global) and room-level data.
Meanwhile, YCS UI checklists (Property Facilities / Room Setup) typically focus on items that are room-specific and manually toggleable per room type. To avoid duplication and conflicting overrides, global facilities inherited by all room types may be hidden in the room-level UI.

How can product (mapping room and rate) be deleted?

Product is always in overwrite mode so our system would take whatever is the latest push of that particular rate plan.

Therefore, if there's a mistake in product creation, a new request push would correct the mistake by overwriting the existing product.

How can we link multiple rooms to one rate plan?

Product is in OVERWRITE mode by default. Please note that Rate plan is the core of the mapping.

  • If multiple requests pushed for the same rate plan ID, we will take only the latest (overwrite).
  • If they are different rate plan IDs, then it will not overwrite.
  • In case you'd like to link multiple room type ids to one rate plan, we suggest to include multiple room type ids in the same request as per below example.


Cancellation Policy

How can I set cancellation policy?

Please make sure you push cancellation policy to Agoda, either at the property level or hotelproduct level. Otherwise, Agoda will default the cancellation policy to “Cancel 1 day prior to arrival date, the first-night charge, No Show, the first-night charge”.

If there are cancellation policies at both level or more than one policy, Agoda will apply the strictest one.



Error

Why did I get "Authorization error" when trying to create a room or rate plan?

After you create a property, we will save the data into our database tables. There will be a delay in our system for around 5 minute before you can start pushing the room or rate plan, or sign contract.

Why did I get error code 1201 "API key is not authorized for Property id: xxx" when I try to push SetARI/SetARIv2 or GetProduct?

There will be around 1 min delay time after HotelProduct creation and ARI update.

Why did I get "Home should have 1 rate plan." error? / Why did I get "Restrictions - limit 1 room" error?

This is a validation for single unit vacation rentals (Agoda Homes) to have only 1 rate plan and 1 room type per property.

Property will be categorized as single-unit vacation rentals when:

  • GuestRoomInfo->Quantity = 1
  • HotelCategory is matched with one of the below:

Why do I get error when trying to push a property with certain chain ID?

Certain chain ID must be added to your API key first in our backend set up to allow property to be created with that chain ID using your API Key.

Why do I get error 'Limit exceed for creation' when it was working perfectly before?

On our backend set up, each API key has certain property allowance. This error generates only when the allowance is met. Please contact Agoda support to increase the allowance for you.

Why do I keep receiving 'hotel is already exist" error?

It is because the property is flagged as duplication with an existing property on Agoda. Below are the criteria for duplication logic.

  • Non-chain: Same property name / same location (check lat/long by first 3 decimals)
  • Chain: same external id within the same chain id

What are the list of attributes that cannot be updated via API?

There are certain attributes that cannot be updated via content push API.

Some will get an error warning that the value of the attribute cannot be updated while some will just simply be ignored.



Onboard

Will all properties under the same email account got signed/auto-lived after host/Property Manager signed via hostContractsSign call or signed in Host Manage?

In this version, the following HotelCategories will be auto-signed/live from the email account signing, regardless of room quantity:

How the Contract work?

  • The contract signing from the property owner is mandatory in order to reach the fraud check step and eventual activation of the property
  • If the contract is not signed, no fraud check or activation will be done.
  • For inidividual property, please use hotelContractsSign call. For vacation rentals property manager who have multiple Agoda Homes properties under the same email account, please use hostContractsSign call.
  • If CM does not want to implement contract signing, property owner can sign the contract in Agoda extranet (YCS or Host Manage).

How can I create a test hotel and see end-to-end process?

End-to-end process is available in production environment only so we suggest you to push a test property to production in Test city. Below are coordinates and details of the Test city.

longitude = 43.029842376709

latitude = -11.5976982116699

Country code = KM

City name = Test City

How long does it take for a property to live on Agoda?

Usually it takes 24-48 hours for a property to live on Agoda by the automated flow given that all required criteria are met.

  • Images > 3
  • Main Image
  • Contract Signed

Once these 3 criteria are met, the automation flow will submit the property to fraud check stage and when it passes fraud check, the property will be activated on Agoda.

Is there a wait-time between each request when creating a property?

Yes, we recommend 10 minutes wait-time between each creation request when pushing a new property to Agoda.

  • Property Creation Request
  • Room Creation Request
  • Rate Plan Creation Request
  • Product Creation Request

What are mandatory attributes in order to get vacation rental properties to go live?

  • RentalLicense
  • Direction
  • HouseRule
  • LocalRecommendation

Why does my properties got deleted?

Properties will be deleted if they do not go live after 60 days of initial onboarding. In order for property to go live, all required criteria must be met.

  • Images > 3
  • Main Image
  • Contract Signed

Once these 3 criteria are met, the automation flow will submit the property to fraud check stage and when it passes fraud check, the property will be activated on Agoda.

Why I received error 9216 when creating the property?

Some countries are blocked from being onboarded as Single Unit Non‑Hotel Accommodations (sNHA) via CPAPI. To resolve, create the property as a multi-unit (mNHA) or as a supported hotel-type accommodation using the accommodation type IDs provided in the documentation.

List of accommodation type and ID for mNHA.

Accommodation TypeID
Hotel34
Serviced Apartment120
Guest House141
Hostel33
Resort37
Bed and Breakfast135
Inn111
Motel35
Ryokan38
Riad115

List of countries not allowed for sNHA (Single-Unit Non Hotel Accommodation)

Click to view full list of countries (160)
CodeCountry
AFAfghanistan
AGAntigua & Barbuda
AIAnguilla
ALAlbania
AMArmenia
ANNetherlands Antilles
AOAngola
ARArgentina
ASAmerican Samoa
AWAruba
AZAzerbaijan
BABosnia Herzegovina
BBBarbados
BDBangladesh
BFBurkina Faso
BIBurundi
BJBenin
BLSaint Barthelemy
BMBermuda
BOBolivia
BQBonaire, Sint Eustatius and Saba
BRBrazil
BSBahamas
BTBhutan
BVBouvet Island
BWBotswana
BYBelarus
BZBelize
CACanada
CCCocos (Keeling) Islands
CDDemocratic Republic of the Congo
CFCentral African Republic
CGRepublic of Congo
CICote D'ivoire
CKCook Islands
CLChile
CMCameroon
COColombia
CRCosta Rica
CUCuba
CVCape Verde
CWCuracao
CXChristmas Island
CYCyprus
DJDjibouti
DMDominica
DODominican Republic
DZAlgeria
ECEcuador
EEEstonia
EGEgypt
EHWestern Sahara
EREritrea
ETEthiopia
FKFalkland Islands
FMFederated States of Micronesia
FOFaroe Islands
GAGabon
GDGrenada
GEGeorgia
GFFrench Guiana
GHGhana
GMGambia
GNGuinea
GPGuadeloupe
GQEquatorial Guinea
GSSouth Georgia Islands
GTGuatemala
GWGuinea-Bissau
GYGuyana
HNHonduras
HTHaiti
IOBritish Indian Ocean Territory
IQIraq
IRIran
JMJamaica
KEKenya
KGKyrgyzstan
KIKiribati
KNSaint Kitts And Nevis
KPNorth Korea
KYCayman Islands
KZKazakhstan
LBLebanon
LCSaint Lucia
LRLiberia
LSLesotho
LTLithuania
LVLatvia
LYLibya
MAMorocco
MDMoldova
MEMontenegro
MFSaint Martin (France)
MGMadagascar
MHMarshall Islands
MKNorth Macedonia
MLMali
MNMongolia
MQMartinique
MRMauritania
MSMontserrat
MWMalawi
MXMexico
MZMozambique
NANamibia
NCNew Caledonia
NENiger
NFNorfolk Island
NGNigeria
NINicaragua
NRNauru
NUNiue
OMOman
PAPanama
PEPeru
PGPapua New Guinea
PKPakistan
PMSaint Pierre and Miquelon
PNPitcairn Islands
PRPuerto Rico
PWPalau
PYParaguay
REReunion
RORomania
RSSerbia
RURussia
RWRwanda
SBSolomon Islands
SDSudan
SGSingapore
SHSaint Helena
SKSlovakia
SLSierra Leone
SNSenegal
SOSomalia
SRSuriname
SSSouth Sudan
STSao Tome and Principe
SVEl Salvador
SXSint Maarten (Netherlands)
SYSyria
SZEswatini
TCTurks & Caicos Islands
TDChad
TFFrench Southern and Antarctic Lands
TGTogo
TJTajikistan
TKTokelau
TLTimor-Leste
TMTurkmenistan
TNTunisia
TOTonga
TTTrinidad & Tobago
TVTuvalu
TZTanzania
UAUkraine
UGUganda
USUnited States
UYUruguay
UZUzbekistan
VAHoly See (Vatican City)
VCSt. Vincent & Grenadines
VEVenezuela
VGBritish Virgin Islands
VIU.S. Virgin Islands
VUVanuatu
WFWallis and Futuna
WSSamoa
YEYemen
YTMayotte
YUYugoslavia
ZMZambia
ZWZimbabwe

Rate Calculation

Does Agoda take commission from surcharges/fees?

Surcharges/fees created via Content API will be flagged as 'Agoda do not take commission'. However, partner can select to allow/not allow Agoda to take the commission on surcharges in our extranet. The commission would be the same % as room price.

Please visit this link for more details: <https://agodapropertypartnerhelp.zendesk.com/hc/en-us/articles/360001445708-How-do-I-manage-additional-fees-> .

How Agoda calculate the booking price?

Please refer to this article <https://agodapropertypartnerhelp.zendesk.com/hc/en-us/articles/360051821373-How-do-I-calculate-my-booking-rates->.

What is the meaning of each Fees' ChargeType?

  • PGPB = Per Guest Per Booking
  • PB = Per Booking
  • PGPN = Per Guest Per Night
  • PRPB = Per Room Per Booking
  • PN = Per Night
  • PAPB = Per Adult Per Booking
  • PCPB = Per Child Per Booking
  • PAPN = Per Adult Per Night
    PCPN = Per Child Per Night

What is the meaning of each Fees' ApplyType?

M = Mandatory (Agoda Collect) where Agoda will collect the fee when the booking is made
E = External (Property Collect) where property owner will collect the fee upon arrival



Photo

Why images pushed are not processed?

Image URL must be whitelisted on Agoda first before images can be processed. Please also note that image URL must be accessible via internet browser.

In case image URL is already whitelisted, it could be server performance issue. Please contact Agoda Support to check on case-by-case basis.

How can images be updated or added?

All images including the existing ones must be included in the property request with OVERLAY or DELTA mode. Images are OVERWRITE by default, therefore, if property would like to add more images, channel manager must include existing images + new images in the request, otherwise, images would be deleted.

Image / photo requirements

  • Minimum picture dimension is 800 x 600 px
  • Maximum file size is 10 MB
  • Supported file formats are jpeg, jpg, png

What are the requirements for image URLs submitted via Content Push API?

All image URLs must meet the following criteria:

  • Must be a direct HTTPS URL
  • Must be publicly accessible without authentication
  • Must be stable and non-expiring
  • Must not require tokens, cookies, session validation, or custom request headers
  • Must not depend on temporary or time-limited access mechanisms

Agoda retrieves image content asynchronously after receiving the API request. Therefore, the image must remain accessible at the provided URL at the time of ingestion.

If the system cannot retrieve the image from the provided URL, the image will not be processed or displayed.

We pushed room images via /cm/rooms (overlay with fewer images) but the extranet still shows the old images. Did the API fail?

No. If the API returned success, the request was processed — but /cm/rooms uses DELTA (additive) image logic and will not remove existing room images. Please refer to examples below:

Example 1:
If a room already has 4 images and the request sends 2 new images, the room will end up having 6 images in total, rather than replacing the previous ones.
Example 2:
If a room has 4 images (A, B, C, D) and the request sends 2 images (A, B), there will be no change, since images A and B already exist in the system.
Result: The room will still display 4 images (A, B, C, D).

Limitation: Currently, the API does not support removing or syncing (overlaying) room-level images. If any images need to be removed, this must be done manually via the YCS UI.
In summary, the Room API only supports adding or updating images, but not removing or replacing existing ones.



Other

What are the attributes that can be updated using DELTA update?

  • Property Route:
    • Service
    • Channel
    • CancelPolicy
    • ChildAgeBand
  • Room Route:
    • AmenityCode
    • Text Language
  • RatePlan Route:
    • ChannelCode

Transaction Time

  • Transaction limit: 10 requests/second - PRODUCTION
  • 1 min delay time after HotelProduct creation and ARI update -Both PRODUCTION & SANDBOX
  • 1 min delay time after property creation and the next request for that specific property - Both PRODUCTION & SANDBOX

How does Delta (partial update) request work?

We do have support for a partial update for 1-many fields except for image in property, room, and rate plan requests. Normally, by sending an Overlay request, you need to send all data for the particular property, room, or rate plan. Otherwise, we will delete the information if it does not present in the request.

By sending a Delta request, we have provided the ability to ignore the particular 1-many fields if there is no change related to that field. We will only process the information by using the Status attribute.

If you send the Delta request. We will process only the service that presents in the request using the Status (Active, Inactive). Let says you send a request with 4 (Active), 5 (Inactive), 6 (Active). We will add services 4, 6 and remove service 5. Service 3 will remain.

In case you send the Delta request without any service, all services of the property will be kept as it is.

For the Delta request, if any element does not have the Status attribute, we will put Active as a default.

Please note the Status attribute is applicable for the Delta request only. If you send a New or Overlay request, the Status will be ignored.