XooCode(){

ReservationStatusType

ReservationStatusType is a schema.org StatusEnumeration for the state of a Reservation. It is the value of reservationStatus.

It has 4 members:

  • ReservationConfirmed: reservation is confirmed and the customer should expect the booking to be honoured.
  • ReservationHold: reservation is on hold pending some action (payment, document submission).
  • ReservationPending: reservation requested but not yet confirmed by the provider.
  • ReservationCancelled: reservation has been cancelled.

Full example of schema.org/ReservationStatusType json-ld markup

The markup is verified as valid with Rich Results Test from Google.

schema.org/ReservationStatusType
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FlightReservation",
  "reservationNumber": "XOO-7A9K2",
  "reservationStatus": "https://schema.org/ReservationConfirmed",
  "underName": { "@type": "Person", "name": "Jane Xoo" },
  "reservationFor": {
    "@type": "Flight",
    "flightNumber": "XOO123",
    "departureAirport": { "@type": "Airport", "iataCode": "AVP", "name": "Wilkes-Barre / Scranton International" },
    "arrivalAirport": { "@type": "Airport", "iataCode": "JFK" },
    "departureTime": "2026-06-14T09:30:00-04:00"
  }
}
</script>

Gmail schema

Like OrderStatus, reservationStatus powers Gmail's inbox tracker for flight / hotel / restaurant reservations. Accurate status is the difference between a live tracker chip and a broken one.

Minimal valid version

The smallest markup that still produces a valid ReservationStatusType entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/ReservationStatusType (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Reservation",
  "reservationNumber": "XOO-7A9K2",
  "reservationStatus": "https://schema.org/ReservationConfirmed"
}
</script>

Google rich results this unlocks

ReservationStatusType is a structural type. It does not produce a rich result on its own.

Its value comes from combining it with a primary type whose markup earns a rich result (Article, Product, Event, and so on). ReservationStatusType becomes the trunk that the primary type branches off viamainEntityorbreadcrumb. Include it on every page as the backbone of your markup.

Common ReservationStatusType mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    ReservationConfirmed for a pending booking

    Wrong
    Marking pending bookings as Confirmed
    Right
    ReservationPending until the provider confirms

    Premature Confirmed state sets customer expectations that cannot be met if the booking is then denied.

About the example data

A confirmed flight reservation booked through XooAir.

Comments

Loading comments...

Leave a comment