The hoteliga API

ExtraCharge

The ExtraCharge resource provides information about extra charges.

Resources
Resource Description
GET /v1/ExtraCharges Get list of available extra charges
GET /v1/ExtraCharge/Categories Get list of available extra charge categories
POST /v1/ExtraCharge/Pos Create a new extra charge
PUT /v1/ExtraCharge/UpdatePos Update an extra charge
Object properties
Name Type Description
Id int Unique identifier of invoice
categoryId int Unique identifier of extra charges category
isIbeEnabled int 0 = is not listed in booking engine options
1 = is listed in booking engine options
priority int ...
unitPrice decimal (##.##) Price for one unit of extra charge
titles array Array of localized titles
descriptions array Array of localized descriptions

GET /v1/ExtraCharges

Get all available extra charges

Example Response

<?xml version="1.0"?>
<ExtraCharges>
  <ExtraCharge id="1" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>1.00</UnitPrice>
    <Titles>
      <Title languageCode="de">Minibar</Title>
      <Title languageCode="en">Minibar</Title>
      <Title languageCode="fr">Minibar</Title>
      <Title languageCode="it">Minibar</Title>
      <Title languageCode="en" isMain="1">Minibar</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="2" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">Restaurant</Title>
      <Title languageCode="en">Restaurant</Title>
      <Title languageCode="fr">Restaurant</Title>
      <Title languageCode="it">Restaurant</Title>
      <Title languageCode="en" isMain="1">Restaurante</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="3" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">Bar/ Cafeteria</Title>
      <Title languageCode="en">Bar/ Cafeteria</Title>
      <Title languageCode="fr">Bar/ Cafétéria</Title>
      <Title languageCode="it">Bar/ Cafetería</Title>
      <Title languageCode="en" isMain="1">Bar/ Cafetería</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="4" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">Extras</Title>
      <Title languageCode="en">Extras</Title>
      <Title languageCode="fr">Extras</Title>
      <Title languageCode="it">Extras</Title>
      <Title languageCode="en" isMain="1">Extras</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="5" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">extra bed</Title>
      <Title languageCode="en">extra bed</Title>
      <Title languageCode="fr">lit supplémentaire</Title>
      <Title languageCode="it">extra bed</Title>
      <Title languageCode="en" isMain="1">cama extra</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="6" categoryId="0" isIbeEnabled="1" priority="0">
    <UnitPrice>20.00</UnitPrice>
    <Titles>
      <Title languageCode="en">Champagne</Title>
      <Title languageCode="fr">Champagne</Title>
      <Title languageCode="de">Champagne</Title>
      <Title languageCode="it">Champagne</Title>
      <Title languageCode="en" isMain="1">cava</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="7" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">suplemento toallas</Title>
      <Title languageCode="en">suplemento toallas</Title>
      <Title languageCode="fr">suplemento toallas</Title>
      <Title languageCode="it">suplemento toallas</Title>
      <Title languageCode="en" isMain="1">suplemento toallas</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
  <ExtraCharge id="8" categoryId="0" isIbeEnabled="0" priority="0">
    <UnitPrice>0.00</UnitPrice>
    <Titles>
      <Title languageCode="de">tourist tax</Title>
      <Title languageCode="en">tourist tax</Title>
      <Title languageCode="fr">taxe de séjour</Title>
      <Title languageCode="it">tassa di soggiorno</Title>
      <Title languageCode="en" isMain="1">Tasa Turística</Title>
    </Titles>
    <Descriptions />
  </ExtraCharge>
</ExtraCharges>
    
[
   {
      "id":1,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":1.00,
      "titles":[
         {
            "title":"Minibar",
            "languageCode":"de"
         },
         {
            "title":"Minibar",
            "languageCode":"en"
         },
         {
            "title":"Minibar",
            "languageCode":"fr"
         },
         {
            "title":"Minibar",
            "languageCode":"it"
         },
         {
            "title":"Minibar",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":2,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"Restaurant",
            "languageCode":"de"
         },
         {
            "title":"Restaurant",
            "languageCode":"en"
         },
         {
            "title":"Restaurant",
            "languageCode":"fr"
         },
         {
            "title":"Restaurant",
            "languageCode":"it"
         },
         {
            "title":"Restaurante",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":3,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"Bar/ Cafeteria",
            "languageCode":"de"
         },
         {
            "title":"Bar/ Cafeteria",
            "languageCode":"en"
         },
         {
            "title":"Bar/ Cafétéria",
            "languageCode":"fr"
         },
         {
            "title":"Bar/ Cafetería",
            "languageCode":"it"
         },
         {
            "title":"Bar/ Cafetería",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":4,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"Extras",
            "languageCode":"de"
         },
         {
            "title":"Extras",
            "languageCode":"en"
         },
         {
            "title":"Extras",
            "languageCode":"fr"
         },
         {
            "title":"Extras",
            "languageCode":"it"
         },
         {
            "title":"Extras",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":5,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"extra bed",
            "languageCode":"de"
         },
         {
            "title":"extra bed",
            "languageCode":"en"
         },
         {
            "title":"lit supplémentaire",
            "languageCode":"fr"
         },
         {
            "title":"extra bed",
            "languageCode":"it"
         },
         {
            "title":"cama extra",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":6,
      "categoryId":0,
      "isIbeEnabled":1,
      "priority":0,
      "unitPrice":20.00,
      "titles":[
         {
            "title":"Champagne",
            "languageCode":"en"
         },
         {
            "title":"Champagne",
            "languageCode":"fr"
         },
         {
            "title":"Champagne",
            "languageCode":"de"
         },
         {
            "title":"Champagne",
            "languageCode":"it"
         },
         {
            "title":"cava",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":7,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"suplemento toallas",
            "languageCode":"de"
         },
         {
            "title":"suplemento toallas",
            "languageCode":"en"
         },
         {
            "title":"suplemento toallas",
            "languageCode":"fr"
         },
         {
            "title":"suplemento toallas",
            "languageCode":"it"
         },
         {
            "title":"suplemento toallas",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   },
   {
      "id":8,
      "categoryId":0,
      "isIbeEnabled":0,
      "priority":0,
      "unitPrice":0.00,
      "titles":[
         {
            "title":"tourist tax",
            "languageCode":"de"
         },
         {
            "title":"tourist tax",
            "languageCode":"en"
         },
         {
            "title":"taxe de séjour",
            "languageCode":"fr"
         },
         {
            "title":"tassa di soggiorno",
            "languageCode":"it"
         },
         {
            "title":"Tasa Turística",
            "languageCode":"en",
            "isMain":1
         }
      ],
      "descriptions":[
      ]
   }
]

GET /v1/ExtraCharge/Categories

Get all available extra charge categories

Example Response

<?xml version="1.0"?>
<ExtraChargeCategories>
  <Category>
    <id>1</id>
    <title>Minibar</title>
  </Category>
  <Category>
    <id>2</id>
    <title>Restaurante</title>
  </Category>
  <Category>
    <id>3</id>
    <title>Extras</title>
  </Category>
  <Category>
    <id>4</id>
    <title>Bar/Cafetería</title>
  </Category>
  <Category>
    <id>5</id>
    <title>Lavandería</title>
  </Category>
  <Category>
    <id>6</id>
    <title>cama extra</title>
  </Category>
  <Category>
    <id>7</id>
    <title>Tasa Turistica</title>
  </Category>
</ExtraChargeCategories>
[
   {
      "id":1,
      "title":"Minibar"
   },
   {
      "id":2,
      "title":"Restaurante"
   },
   {
      "id":3,
      "title":"Extras"
   },
   {
      "id":4,
      "title":"Bar/Cafetería"
   },
   {
      "id":5,
      "title":"Lavandería"
   },
   {
      "id":6,
      "title":"cama extra"
   },
   {
      "id":7,
      "title":"Tasa Turistica"
   }
]

POST /v1/ExtraCharge/Pos

Add a new extra charge in a reservation. This is a special-purpose method for integrating with Point of Sale (ordering) systems, like the ones that are used in restaurants. It requires a prior setting in hoteliga web application; a generic extra charge item needs to be set so that any charge coming from the POS will be added to a reservation using the room name/title. In this special-purpose method we use the room name/title as the POS is unaware of the reservation ID. Note: you can pass either 'timeStamp' parameter or 'lastName' parameter or both, other parameters are required

Request parameters

Name Value
items Items to add
sum Total price
timeStamp Date in format "yyyy-MM-dd"
roomTitle Room title
lastName Customer LastName

Response

The result is HTTP 200 code status.

Example Request

<?xml version="1.0" encoding="UTF-8"?>
<Items>
	<Name>Wine</Name>
	<Price>7</Price>
	<Quantity>1</Quantity>
</Items>
<Items>
	<Name>Cake</Name>
	<Price>8</Price>
	<Quantity>1</Quantity>
</Items>
<Sum>15</Sum>
<TimeStamp>2019-06-26T17:53:20.179807+03:00</TimeStamp>
<RoomTitle>01</RoomTitle>
<LastName>Cinder</LastName>
{
    "Items": [
        {
            "Name": "Wine",
            "Price": 7,
            "Quantity": 1
        },
        {
            "Name": "Cake",
            "Price": 8,
            "Quantity": 1
        }
    ],
    "Sum": 15,
    "TimeStamp": "2019-06-26T17:53:20.179807+03:00",
    "RoomTitle": "01",
    "lastName": "Cinder"
}
        

PUT /v1/ExtraCharge/UpdatePos

Add a new extra charge in a reservation. This is a special-purpose method for integrating with Point of Sale (ordering) systems, like the ones that are used in restaurants. It requires a prior setting in hoteliga web application; a generic extra charge item needs to be set so that any charge coming from the POS will be updated to a reservation using the room name/title. In this special-purpose method we use the room name/title as the POS is unaware of the reservation ID. Note: you can pass either 'timeStamp' parameter or 'lastName' parameter or both, other parameters are required

Request parameters

Name Value
items Items to add
timeStamp Date in format "yyyy-MM-dd"
roomTitle Room title
lastName Customer LastName

Response

The result is HTTP 200 code status.

Example Request

<?xml version="1.0" encoding="UTF-8"?>
<Items>
	<Name>Wine</Name>
	<Price>7</Price>
	<Quantity>1</Quantity>
</Items>
<Items>
	<Name>Cake</Name>
	<Price>8</Price>
	<Quantity>1</Quantity>
</Items>
<TimeStamp>2019-06-26T17:53:20.179807+03:00</TimeStamp>
<RoomTitle>01</RoomTitle>
<LastName>Cinder</LastName>
{
    "Items": [
        {
            "Name": "Wine",
            "Price": 7,
            "Quantity": 1
        },
        {
            "Name": "Cake",
            "Price": 8,
            "Quantity": 1
        }
    ],
    "TimeStamp": "2019-06-26T17:53:20.179807+03:00",
    "RoomTitle": "01",
    "lastName": "Cinder"
}