# Changelog

## Version 1.1 Changes

The following changes were introduced to support payments and suburbs.

* Added the `payments` field to bookings to allow a partner App to associate payments with a booking.
* Added the `suburb` field inside the `customer.address` field for the customer’s suburb.


### Booking entity

| New/updated Field | Description | Change | Change Description |
|  --- | --- | --- | --- |
| payments | Optional list of payments associated with a booking. | New | Added to handle scenarios where the partner App wished to associate a payment with a booking. For example, if a partner App wanted to represent a deposit payment on a booking. |
| customer.address.suburb | Suburb of the customer | New | New field representing the customer’s suburb. |


### For Apps

* Payments on a booking created/updated by the App will be sent to the POS.
* Customer's suburb details on a booking created/updated by the App will be sent to the POS.


### For POS systems

* Bookings can contain an optional list of payments from the App
* Customer's suburb details can also be received in bookings.


## Version 1.0 Changes

The following changes were made in version 1.0 of Booking released in 2021.

### HTTP Headers

The following HTTP headers were changed:

| Header | Description | Changes |
|  --- | --- | --- |
| Accept | Contains the requested API version | Added |


Introduces a new Asset concept that allows consumers to book different types of entities. As of now we support `Room`
and `Table` assets. With more to come in future releases

Supports additional fields, more details in the documentation:

* `startTime` - start time for the booking
* `endTime` - end time for the booking
* `notes` - notes specific to the booking.
* `bookingStatus` - current status of the booking
* `customer` - customer making the booking
* `asset` - asset information of the booking


Deprecated fields:

* `status` - status of the booking, in favor of `bookingStatus` which supports `asset` agnostic statuses.


### For Apps

* New bookings that are created in your booking system will be sent to the POS.
* Update details of existing bookings.


### For POS systems

* Create walk-in from the POS, currently only supported for `Table` asset.
* Update an existing Booking.
* Retrieve & filter a list of bookings from the POS
* Retrieve a list of changes that have been made to a booking