Cas d'utilisation
Suivez ces exemples pour vous assurer que votre balisage BusReservation est correctement structuré.
Confirmation de réservation de base
Intégrez le balisage suivant dans votre e-mail lorsque vous envoyez une confirmation de réservation.
L'application Google affiche les détails de la réservation le jour du trajet et indique à l'utilisateur quand partir pour l'arrêt de bus, en tenant compte du mode de transport et de la circulation. Si vous fournissez une URL d'enregistrement, comme illustré dans l'exemple suivant, l'application Google l'affiche à l'utilisateur 24 heures avant le trajet.
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
}
}
</script>
Microdonnées
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
</div>
Carte d'embarquement et billet
En plus d'une confirmation de réservation, vous pouvez déclencher une carte d'embarquement dans un e-mail distinct.
Les cartes de confirmation aident non seulement l'utilisateur à arriver à l'arrêt de bus à l'heure, mais elles lui présentent également le billet pendant le trajet. Pour ce faire, incluez des champs supplémentaires dans le balisage. Si des champs supplémentaires sont requis pour l'embarquement des passagers, incluez-les dans le champ additionalTicketText.
Pour les billets sans place assise réservée, ces champs sont les suivants : numSeats, ticketNumber, ticketToken.
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
Microdonnées
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
Pour les billets avec place assise réservée, ces champs sont les suivants : seatNumber, seatingType, ticketNumber, ticketToken.
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketedSeat": {
"@type": "Seat",
"seatNumber": "27B",
"seatingType": "Coach"
},
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
Microdonnées
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatNumber" content="27B"/>
<meta itemprop="seatingType" content="Coach"/>
</div>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
Exemple avec tous les champs compatibles
Pour référence, voici un exemple avec tous les champs compatibles renseignés :
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"url": "http://boltbus.com/view/123456",
"underName": {
"@type": "Person",
"name": "John Smith",
"email": "john@mail.com"
},
"programMembership": {
"@type": "ProgramMembership",
"memberNumber": "12345",
"program": "STA"
},
"bookingAgent": {
"@type": "Organization",
"name": "Bolt Bus NYC",
"url": "http://boltbus.com/"
},
"bookingTime": "2013-01-14T13:05:00-05:00",
"modifiedTime": "2013-03-14T13:05:00-05:00",
"confirmReservationUrl": "http://boltbus.com/confirm?id=123456",
"cancelReservationUrl": "http://boltbus.com/cancel?id=123456",
"modifyReservationUrl": "http://boltbus.com/edit?id=123456",
"checkinUrl": "http://boltbus.com/checkin?id=AB3XY2",
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"name": "?",
"busNumber": "63",
"busName": "Bolt Bus NY:Boston",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC",
"address": {
"@type": "PostalAddress",
"streetAddress": "625 8th Avenue",
"addressLocality": "New York",
"addressRegion": "NY",
"postalCode": "10018",
"addressCountry": "USA"
},
"directions": "Bus terminals are at floors 2-4 of the Port Authority building"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station",
"address": {
"@type": "PostalAddress",
"streetAddress": "Summer St.",
"addressLocality": "Boston",
"addressRegion": "MA",
"postalCode": "02111",
"addressCountry": "USA"
},
"directions": "Bus stops are at thewest side of the train station."
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"ticketNumber": "123XYZ",
"downloadUrl": "?",
"printUrl": "?",
"ticketToken": "qrCode:123456789",
"additionalTicketText": "?",
"price": "45.00",
"priceCurrency": "USD",
"underName": {
"@type": "Person",
"name": "Mary Smith"
},
"ticketedSeat": {
"@type": "Seat",
"seatingType": "Coach",
"seatNumber": "27",
"seatRow": "A"
}
}
}
</script>
Microdonnées
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<link itemprop="url" href="http://boltbus.com/view/123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
<meta itemprop="email" content="john@mail.com"/>
</div>
<div itemprop="programMembership" itemscope itemtype="http://schema.org/ProgramMembership">
<meta itemprop="memberNumber" content="12345"/>
<meta itemprop="program" content="STA"/>
</div>
<div itemprop="bookingAgent" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt Bus NYC"/>
<link itemprop="url" href="http://boltbus.com/"/>
</div>
<meta itemprop="bookingTime" content="2013-01-14T13:05:00-05:00"/>
<meta itemprop="modifiedTime" content="2013-03-14T13:05:00-05:00"/>
<link itemprop="confirmReservationUrl" href="http://boltbus.com/confirm?id=123456"/>
<link itemprop="cancelReservationUrl" href="http://boltbus.com/cancel?id=123456"/>
<link itemprop="modifyReservationUrl" href="http://boltbus.com/edit?id=123456"/>
<link itemprop="checkinUrl" href="http://boltbus.com/checkin?id=AB3XY2"/>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="name" content="?"/>
<meta itemprop="busNumber" content="63"/>
<meta itemprop="busName" content="Bolt Bus NY:Boston"/>
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="625 8th Avenue"/>
<meta itemprop="addressLocality" content="New York"/>
<meta itemprop="addressRegion" content="NY"/>
<meta itemprop="postalCode" content="10018"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus terminals are at floors 2-4 of the Port Authority building"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="Summer St."/>
<meta itemprop="addressLocality" content="Boston"/>
<meta itemprop="addressRegion" content="MA"/>
<meta itemprop="postalCode" content="02111"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus stops are at thewest side of the train station."/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="downloadUrl" content="?"/>
<meta itemprop="printUrl" content="?"/>
<meta itemprop="ticketToken" content="qrCode:123456789"/>
<meta itemprop="additionalTicketText" content="?"/>
<meta itemprop="price" content="45.00"/>
<meta itemprop="priceCurrency" content="USD"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="Mary Smith"/>
</div>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatingType" content="Coach"/>
<meta itemprop="seatNumber" content="27"/>
<meta itemprop="seatRow" content="A"/>
</div>
</div>
</div>
Tester le balisage
Vous pouvez valider votre balisage à l'aide de l' outil de test de balisage des e-mails. Collez votre code de balisage, puis cliquez sur le bouton Valider pour analyser le contenu et recevoir un rapport sur les erreurs éventuelles.
Spécification
Vérifiez les détails de votre e-mail pour voir si l'une de ces propriétés s'applique à votre réservation de bus. En balisant ces propriétés supplémentaires, vous permettez à Google d'afficher une description beaucoup plus riche de la réservation de bus à l'utilisateur.
| Propriété | Type | Description |
|---|---|---|
| reservationNumber | Texte | (Obligatoire) Numéro ou ID de la réservation. |
| url | URL | Page Web sur laquelle la réservation peut être consultée. |
| underName | Personne ou Organisation | (Obligatoire) Passager. |
| underName.name | Texte | (Obligatoire) Nom de la personne. |
| underName.email | Texte | Adresse e-mail. |
| programMembership | ProgramMembership | Toute adhésion à un programme de fidélité (voyageur fréquent, hôtel, etc.) appliquée à la réservation. |
| programMembership.memberNumber | Texte | Identifiant de l'adhésion. |
| programMembership.program | Texte | Nom du programme. |
| bookingAgent | Organization ou Person | Agent ou agence de réservation. Accepte également une chaîne (par exemple, ""). |
| bookingAgent.name | Texte | Nom de l'agent/du service. |
| bookingAgent.url | URL | Site Web de l'agent/du service. |
| bookingTime | DateTime | Date à laquelle la réservation a été effectuée. |
| modifiedTime | DateTime | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Heure à laquelle la réservation a été modifiée pour la dernière fois. |
| confirmReservationUrl | URL | Page Web sur laquelle la réservation peut être confirmée. |
| cancelReservationUrl | URL | Page Web sur laquelle la réservation peut être annulée. |
| modifyReservationUrl | URL | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Page Web sur laquelle la réservation peut être modifiée. |
| checkinUrl | URL | Page Web sur laquelle le passager peut s'enregistrer. |
| reservationStatus | ReservationStatus | (Obligatoire) État actuel de la réservation. |
| reservationFor | BusTrip | (Obligatoire) Informations sur le trajet en bus. |
| reservationFor.name | Texte | Nom du trajet en bus. |
| reservationFor.busNumber | Texte | Par exemple, 101. |
| reservationFor.busName | Texte | Par exemple, Bolt Express. |
| reservationFor.busCompany | Entreprise | (Obligatoire) Par exemple, Bolt NYC. Accepte également une chaîne (par exemple, "Bolt NYC"). |
| reservationFor.busCompany.name | Texte | (Obligatoire) Nom de l'entreprise. |
| reservationFor.departureBusStop | BusStop ou BusStation | (Obligatoire) Lieu de départ du bus. |
| reservationFor.departureBusStop.name | Texte | (Obligatoire) Nom de l'arrêt de bus. |
| reservationFor.departureBusStop.address | PostalAddress | Adresse de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.address.streetAddress | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Adresse de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.address.addressLocality | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Localité (par exemple, ville) de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.address.addressRegion | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Région (par exemple, État) de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.address.postalCode | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Code postal de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.address.addressCountry | Texte ou Pays | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Pays de l'arrêt / de la gare routière de départ. |
| reservationFor.departureBusStop.directions | Texte | Itinéraire vers l'arrêt de bus. |
| reservationFor.departureTime | DateTime | (Obligatoire) Heure de départ du bus. |
| reservationFor.arrivalBusStop | BusStop ou BusStation | (Obligatoire) Lieu d'arrivée du bus. |
| reservationFor.arrivalBusStop.name | Texte | (Obligatoire) Nom de l'arrêt de bus. |
| reservationFor.arrivalBusStop.address | PostalAddress | Adresse de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.address.streetAddress | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Adresse de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.address.addressLocality | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Localité (par exemple, ville) de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.address.addressRegion | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Région (par exemple, État) de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.address.postalCode | Texte | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Code postal de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.address.addressCountry | Texte ou Pays | (Recommandé pour les cartes de confirmation/les réponses de la recherche) Pays de l'arrêt / de la gare routière d'arrivée. |
| reservationFor.arrivalBusStop.directions | Texte | Itinéraire vers l'arrêt de bus. |
| reservationFor.arrivalTime | DateTime | (Obligatoire) Heure d'arrivée du bus. |
| reservedTicket | Ticket | Informations sur le billet. |
| reservedTicket.ticketNumber | Texte | Numéro ou ID du billet. |
| reservedTicket.downloadUrl | URL | . |
| reservedTicket.printUrl | URL | . |
| reservedTicket.ticketToken | Texte ou URL | Si l'image du code-barres est hébergée sur votre site, la valeur du champ correspond à l'URL de l'image, ou à un URI de code-barres ou QR, tel que "barcode128:AB34" (codes-barres ISO-15417), "qrCode:AB34" (codes QR), "aztecCode:AB34" (codes Aztec), "barcodeEAN:1234" (codes EAN) et "barcodeUPCA:1234" (codes UPCA). |
| reservedTicket.additionalTicketText | Texte | Texte explicatif supplémentaire concernant le billet. |
| reservedTicket.price | Texte | Prix total du billet. |
| reservedTicket.priceCurrency | Texte | Devise (au format ISO 4217 à 3 lettres) du prix du billet. |
| reservedTicket.underName | Personne ou Organisation | Personne ou organisation à laquelle le billet est destiné. |
| reservedTicket.underName.name | Texte | Nom de la personne. |
| reservedTicket.ticketedSeat | Siège | Emplacement du siège réservé (par exemple, 27B). . |
| reservedTicket.ticketedSeat.seatingType | Texte | Type/classe du siège. |
| reservedTicket.ticketedSeat.seatNumber | Texte | Emplacement du siège réservé. |
| reservedTicket.ticketedSeat.seatRow | Texte | Emplacement de la rangée du siège réservé. |