Data Formats
Export and API response formats: JSON, OTA XML, OCTO, CSV, and accounting integrations.
Overview
Ananas GDS distributes data in multiple industry-standard formats to maximise compatibility with tour operator systems, channel managers, PMS platforms, and accounting software. On the live v1 pull API the
format is negotiated with the
Accept
header; on export requests it is a parameter.
| Format | How to get it | Best for |
|---|---|---|
| REST JSON |
v1 API default; Export Center
json
|
Modern integrations, web apps, custom backends. |
| Generic XML |
v1 API with
Accept: application/xml
|
Systems that consume XML but not a specific travel standard. Same structure as the JSON, on all five v1 endpoints (facts, photos, stop-sale, invoices, rooming). |
| OTA XML |
Export Center
xml_ota
|
GDS connections, legacy travel systems (OpenTravel 2003B standard). |
| AlpineBits OTA XML | POST /api/v1/alpinebits/ |
DACH-market PMS / channel managers pushing availability via the AlpineBits HotelData standard. |
| OCTO JSON |
Export Center
octo
|
Tours and activities operators using the OCTO standard. |
| CSV |
Export Center
csv
; generic import/export URLs
|
Spreadsheet import, data analysis, bulk exchange with any system (availability round-trips through the symmetric generic import/export endpoints). |
| Xero CSV |
Export Center
xero
|
Invoice export for Xero accounting software. |
| QuickBooks IIF |
Export Center
quickbooks
|
Invoice export for QuickBooks Desktop/Online. |
| EN 16931 e-invoice XML |
/api/einvoice/{id}/
out,
/api/einvoice/import/
in
|
Legal structured e-invoicing: UBL/XRechnung and CII/ZUGFeRD, both directions. |
| Accounting CSV | /api/einvoice/export/csv/ |
Semicolon-delimited, BOM-prefixed invoice ledger for German Excel and bookkeeping tools. |
REST JSON (Default)
The default format for all v1 API endpoints. Responses follow a consistent structure with snake_case field names. All timestamps are ISO 8601 in UTC. Send
Accept: application/xml
on any v1 endpoint to receive the same envelope as generic XML instead.
{
"property_id": 42,
"hotel_name": "Grand Palace Hotel",
"stars": 5,
"rooms": 120,
"main_info": {
"check_in": "14:00",
"check_out": "11:00",
"pets_allowed": false,
"languages": ["en", "de", "ar"]
},
"photos": [
{
"id": 1,
"url": "https://ik.imagekit.io/ananas/photo_1.jpg",
"category": "exterior",
"caption": "Main entrance"
}
],
"stop_sales": {
"2026-07-15": { "status": 1, "allotment": 5 },
"2026-07-16": { "status": 0, "allotment": 10 }
}
}
OTA XML
Conforms to the OpenTravel Alliance 2003B schema. Used for GDS integration via Amadeus, Sabre, and Travelport connections. Property data maps to
OTA_HotelDescriptiveContentRS
; availability maps to
OTA_HotelAvailRS
.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelDescriptiveContentRS
xmlns="http://www.opentravel.org/OTA/2003/05"
Version="1.0">
<HotelDescriptiveContents>
<HotelDescriptiveContent
HotelName="Grand Palace Hotel"
HotelCityCode="DXB"
HotelCode="GDS-42">
<HotelInfo>
<Descriptions>
<MultimediaDescriptions>
<MultimediaDescription>
<TextItems>
<TextItem Language="en">
<Description>5-star luxury hotel...</Description>
</TextItem>
</TextItems>
</MultimediaDescription>
</MultimediaDescriptions>
</Descriptions>
</HotelInfo>
</HotelDescriptiveContent>
</HotelDescriptiveContents>
</OTA_HotelDescriptiveContentRS>
OCTO JSON
The Open Connectivity for Tours & Experiences standard. Primarily used by tour operator platforms integrating activity and tour data. The OCTO exporter maps Ananas GDS property and availability data to
OCTO
Supplier
,
Product
, and
Availability
objects.
{
"id": "avail-2026-07-15",
"localDateTimeStart": "2026-07-15T00:00:00+00:00",
"localDateTimeEnd": "2026-07-15T23:59:59+00:00",
"status": "AVAILABLE",
"vacancies": 10,
"capacity": 10,
"pricingFrom": []
}
CSV Export
CSV exports are available for facts, photos metadata, stop sale calendars, and invoices. Each scope has its own column schema. CSV files use UTF-8 encoding with BOM for Excel compatibility and comma delimiters.
Facts CSV Columns
property_id, hotel_name, stars, rooms, check_in, check_out, address, country, city, phone, email, website, last_updated.
Stop Sale CSV Columns
property_id, hotel_name, date, status_code, status_label, allotment, room_type, source.
Invoices CSV Columns
invoice_number, direction, from_company, to_company, subject, amount, currency, status, issue_date, due_date, paid_at.
Accounting Formats
Invoice data can be exported in formats compatible with popular accounting packages. These exports are available via the Export Center in Developer Tools.
| Format | Description |
|---|---|
| Xero CSV | Contact, Description, Quantity, Unit Amount, Account Code, Tax Type — maps directly to Xero's invoice import template. |
| QuickBooks IIF | Intuit Interchange Format. Compatible with QuickBooks Desktop 2020+ and QuickBooks Online via third-party IIF importers. |
Requesting a Format
For the v1 public API, format is determined by the API key configuration. For bulk exports via the Export Center, specify
format
in the export creation request body:
POST /api/dev/integrations/exports/create/
Authorization: Token <token>
Content-Type: application/json
{
"format": "xml_ota",
"scope": "facts",
"filters": {
"property_ids": [42, 43],
"updated_after": "2026-01-01"
}
}