Property Feed Specification v3.0

Costa del Home XML feed provides a fully automated way to keep properties on the website up to date and synchronized with listing agencies' real estate software.

The sample feed and XSD schema can be downloaded using links in the resources box. The XSD file contains comments explaining the file structure. A link to a free online validator is also provided where XML documents can be tested against XSD schema.

In addition to the downloadable resources a detailed description of the XML file structure is provided below.

Feed Processing

The XML feed must validate against the XSD schema file. Failed validation will prevent the import from starting.

The properties are updated daily from a 'live' URL of the feed. All the images are getting downloaded to our servers and the website serves them from there. We record the download URL of every image and re-download them only after URL change. Please make sure the image URLs contain last updated timestamp or file checksum in case it is possible for the images to change with no change in the URL.

XML File Details

The root element of the XML file (<properties>...</properties>) contains 3 mandatory attributes.

Root Element Attribute Mandatory Value
properties Yes 1 or more property elements as described further.
type Yes Must be: costadelhome.com
version Yes Must be: 3.0
created_at Yes Date and time the feed has been created in UTC format (e.g. 2014-01-27T16:25:05Z).

Property element details <property>...</property>

Child Element Attribute Mandatory Value
last_updated_at Yes Date and time the property has been updated for the last time.
Valid value: UTC date time, e.g. 2014-01-27T16:25:05Z
reference Yes Property reference must be unique in the feed. The value will be used to match the property against existing one on subsequent feed processing.
Valid value: text, 1 to 15 characters.
is_sale No Is the property listed for sale?
Valid values: true, false
is_short_term No Is the property available for holiday rent?
Valid values: true, false
is_long_term No Is the property available for long term rent?
Valid values: true, false
property_type Yes The type of the property.
Valid values: apartment, country-house, penthouse, plot, townhouse, villa
bedrooms No Number of bedrooms
Valid value: integer
bathrooms No Number of bathrooms
Valid value: integer
parking_spaces No Number of parking spaces
Valid value: integer
province Yes The code of province of Spain where the property is located.
Valid values: list of province codes
city Yes The name of the city where the property is located.
Valid value: text up to 100 characters, e.g. Marbella, Fuengirola, Madrid
suburb No The name of the suburb within the city where the property is located.
Valid value: text up to 100 characters, e.g. Golden Mile, Elviria, Atocha
urbanization No The name of the urbanization where the property is located.
Valid value: text up to 100 characters.
latitude No Latitude of the location of the property, or latitude of the center of the suburb the property is located in.
Valid value: decimal number.
longitude No Longitude of the location of the property, or longitude of the center of the suburb the property is located in
Valid value: decimal number.
build_size No Build size in square meters.
Valid value: integer
plot_size No Plot size in square meters.
Valid value: integer
terrace_size No Terrace size in square meters.
Valid value: integer
floor_number No Floor number, 0 being the ground floor.
Valid value: integer
exclusive_listing No Does the agency have an exclusive listing agreement in force signed with the owner? The information will be used to dispute potential duplicate listings issues.
Valid values: true, false
sale_price No List price of the property for sale in Euros.
Valid value: integer
hide No Should the price be hidden on the website.
Valid values: true, false
furnished No Is the property offered for rent furnished?
Valid values: true, false
monthly_price No Long term rental price per month in Euros.
Valid value: integer
rental_deposit No Long term rental deposit to be paid by the tenant in Euros.
Valid value: integer
rental_commission No Long term rental commission to be paid by the tenant in Euros.
Valid value: integer
property_tax No Property tax (IBI) per year in Euros.
Valid value: integer
garbage_tax No Garbage tax (Basura) per year in Euros.
Valid value: integer
community_fees No Community fees per month in Euros.
Valid value: integer
available_from No The date the long term rental property is available from.
Valid value: date in the following form YYYY-MM-DD
weekly_price_from No Low season price per week in Euros.
Valid value: integer
weekly_price_to No High season price per week in Euros.
Valid value: integer
sleeps No Number of people the holiday rental is suited for.
Valid value: integer
energy_rating No Energy rating of the property.
Valid values: A, B, C, D, E, F, G
orientation No Property orientation.
Valid values: east, north, north-east, north-west, south, south-east, south-west, west
contact_person No The agency staff member who should be assigned to the property.
Valid value: a contact_person element as described further.
descriptions Yes Property descriptions.
Valid value: a descriptions element as described further.
features No Property features.
Valid value: a features element as described further.
photos Yes Property photos.
Valid value: a photos element as described further.

Contact Person Element Details <contact_person>...</contact_person>

The contact person must match one of the staff members present in the admin interface.

Child Element Mandatory Value
name No First name. Must be exactly the same as specified in the admin interface.
Valid value: text, 1 to 100 characters.
surname No Last name. Must be exactly the same as in the admin interface.
Valid value: text, 1 to 100 characters.

Descriptions Element Details <descriptions>...</descriptions>

The descriptions element must contain one or more description elements. Description in English or Spanish is mandatory.

Child Element Attribute Mandatory Value
language Yes The language code of the description.
Valid values: list of language codes
text No The text of the description.
Valid value: text, can be enclosed in CDATA tags

Photos Element Details <photos>...</photos>

The photos element must contain between 5 and 30 photo elements:

Child Element Mandatory Value
photo Yes
5 - 30
The URL of the photo. Photos should be 800 x 600 px or larger. The recommended size is 2000 x 1500 px.
Valid value: URL

Features Element Details <features>...</features>

The features element can contain up to 100 feature elements:

Child Element Mandatory Value
feature No One of the feature codes listed below.
Valid values: 24-hour-security or frontline-beach or swimming-pool, etc.

List of Valid Features

Code Description
24-hour-security 24 Hour Security
air-conditioning Air Conditioning
alarm-system Alarm System
beachside Beachside. Only applicable to areas where beach side can be distinguished from the rest of the area, i.e. mountain side. Not to be confused with the Frontline Beach feature.
close-to-park Close to Park
close-to-schools Close to Schools
double-glazing Double Glazing
fireplace Fireplace
frontline-beach Frontline Beach
frontline-golf Frontline Golf
gated-complex Gated Complex
golf-views Golf Views
gym Gym
heated-swimming-pool Heated Swimming Pool
heating Heating. It can be a central heating or AC with the heating mode.
lift Lift
modern Modern Style
mountain-views Mountain Views
newly-built Newly Built. Property never lived in.
park-views Park Views
pool-views Pool Views
private-garden Private Garden
renovation-required Renovation Required
rustic Rustic Style
sauna Sauna
sea-views Sea Views
solar-power Solar Power
storage-room Storage Room
swimming-pool Swimming Pool. Can be skipped if Heated Swimming Pool feature is present.
tennis-paddle-court Tennis and/or Paddle Court
underfloor-heating Underfloor Heating
walking-distance-to-amenities Walking Distance to Amenities
walking-distance-to-beach Walking Distance to the Beach

List of Valid Province Codes

Code Province Name
C A Coruña
VI Álava
AB Albacete
A Alicante
AL Almería
O Asturias
AV Ávila
BA Badajoz
PM Balears
B Barcelona
BU Burgos
CC Cáceres
CA Cádiz
S Cantabria
CS Castellón
EA Ceuta, Melilla
CR Ciudad Real
CO Córdoba
CU Cuenca
GI Girona
GR Granada
GU Guadalajara
SS Guipúzcoa
H Huelva
HU Huesca
J Jaén
LO La Rioja
GC Las Palmas
LE León
L Lleida
LU Lugo
M Madrid
MA Málaga
MU Murcia
NA Navarra
OR Ourense
P Palencia
PO Pontevedra
SA Salamanca
TF Santa Cruz de Tenerife
SG Segovia
SE Sevilla
SO Soria
T Tarragona
TE Teruel
TO Toledo
V Valencia
VA Valladolid
BI Vizcaya
ZA Zamora
Z Zaragoza

List of Valid Description Languages

Code Language Name
ar Arabic
dk Danish
nl Dutch
en English
et Estonian
fi Finnish
fr French
de German
hu Hungarian
it Italian
lt Lithuanian
no Norwegian
pl Polish
pt Portuguese
ru Russian
es Spanish
se Swedish

Changes History

Date Summary
23/02/2017 v3.2 – Deprecated the headline node inside the description. If supplied it will be merged with the text of the description. Added support for descriptions in more languages.
04/06/2016 v3.0 – Added support for property features and orientation. Removed the swimming_pool and new_home tags in favour of equivalent features. Added support for Country House property type.
22/01/2016 v2.0 – Added support for properties available for sale, long and short term rent at the same time. Changed the price tag to sale_price. Added new property fields: floor_number, property_tax, garbage_tax, community_fees, energy_rating.
10/02/2015 v1.1 – Added support for multiple property descriptions in different languages.
10/02/2014 v1.0 – First version released.