Im Rahmen der End-to-End-Integration von Reservierungen im Actions Center können Sie festlegen, dass Ihre Händler Zahlungen von Nutzern erhalten, wenn diese eine Buchung, einen Termin oder eine Reservierung vornehmen. Google arbeitet mit Zahlungsabwicklern zusammen, um die Tokenisierung einzurichten. Die Zahlungsabwickler verwenden dann eindeutige Tokens, um Händler sicher zu bezahlen.
Bei Buchungen, die durch Zahlungen gesichert sind, rendern wir im Bezahlvorgang ein Modul Zahlungsinformationen. Hier kann der Nutzer seine Kreditkarteninformationen eingeben.
Unterstützung für 3DS1 und 3DS2 ist verfügbar. Informationen zur Implementierung findest du in dieser Anleitung.
Voraussetzungen
Damit deine Händler Zahlungen über das Actions Center erhalten können, musst du die folgenden Anforderungen erfüllen:
- Du musst einen unterstützten Zahlungsabwickler verwenden. Die aktuelle Liste der unterstützten Abwickler findest du auf der Google Pay-Website.
- Tokenisierte Zahlungen müssen gemäß den Nutzungsbedingungen deines Zahlungsabwicklers akzeptiert werden.
- Schließen Sie den hier beschriebenen Prozess zur Bestätigung der Identität und des Unternehmens ab.
- Die Zahlung kann nicht für Buchungen aktiviert werden, für die eine asynchrone Bestätigung erforderlich ist.
Änderungen an Feeds und Buchungsservern für Zahlungen
Zahlungen werden über ein Opt-in-Verfahren auf Händlerebene ausgeführt. Du musst Zahlungen für jeden Händler aktivieren, der Zahlungen für eine seiner Dienste erhalten muss. Damit Zahlungen möglich sind, müssen Änderungen an den Feeds und am Buchungsserver vorgenommen werden.
Feeds
- Händlerfeed: Gib die Zahlungsinformationen über den
tokenization_parameter
im Feldtokenization_config
an. Die Menge hängt vom ausgewählten Zahlungsabwickler ab. Das Set ist der gleiche Satz vonpaymentMethodTokenizationParameters.parameters
, der bei einer Einbindung an Google Pay übergeben würde. - Dienstleistungs-/Verfügbarkeitsfeeds:Lege die Zahlungsanforderungen für den jeweiligen Anwendungsfall fest. Weitere Informationen findest du unter Anwendungsfälle für Zahlungen.
Buchungsserver
- Implementieren Sie je nach Art der Zahlungen die
CreateBooking
-Methode. - Google sendet Zahlungstokens im Feld
payment_processing_parameters.unparsed_payment_method_token
als Teil vonCreateBookingRequest
. Dies ist dieselbepaymentData
, die bei einer Google Pay-Integration bei einem Callback empfangen würde. - Füge in die
CreateBookingResponse
eine PaymentInformation-Nachricht ein, die den Zahlungstyp, den Status, die Transaktions-ID sowie die Preis- und Gebührenstruktur angibt. - Setzen Sie das Feld
payment_information.payment_processed_by
inCreateBookingResponse
aufPROCESSED_BY_PARTNER
.
Anwendungsfälle für Zahlungen
Bei der Entscheidung, ob du für jeden dieser Anwendungsfälle Zahlungen annehmen möchtest, lies bitte unsere Zahlungsrichtlinien und sorge dafür, dass du alle relevanten Richtlinien einhältst.
Es gibt folgende Anwendungsfälle für Zahlungen:
- Komplett vorausbezahlte Buchungen
- Buchungen, für die eine Anzahlung erforderlich ist
- Gebühren bei Nichterscheinen
- Buchungen, für die eine Kreditkarte erforderlich ist
Weitere Informationen zur Implementierung der einzelnen Anwendungsfälle findest du in der Anleitung zum Konfigurieren von Zahlungen.
Komplett vorausbezahlte Buchungen
Abbildung 1 zeigt den Ablauf der Aktivitäten zwischen den Nutzern, dir (dem Planungspartner), Google und dem Zahlungsabwickler.
- Die Kosten für die Dienstleistung sind zu 100 % zu begleichen. Mit anderen Worten: Die Dienstleistungen müssen zum Zeitpunkt der Buchung vollständig bezahlt werden.
-
Setze das Feld
prepayment_type
für diesen Dienst aufREQUIRED
. - Setze das Feld
require_credit_card
für diesen Dienst aufREQUIRE_CREDIT_CARD_CONDITIONAL
.
Anzahlungen und Gebühren bei Nichterscheinen
Anzahlungen und Gebühren bei Nichterscheinen werden auf ähnliche Weise eingerichtet. Abbildung 2 zeigt den Ablauf dieser Aktivitäten zwischen den Nutzern, Ihnen (dem Planungspartner), Google und dem Zahlungsabwickler.
Anzahlungen und Gebühren bei Nichterscheinen können verwendet werden, um dafür zu sorgen, dass Nutzer zu ihrer Buchung erscheinen.
- Die Kreditkarte des Nutzers kann vorab oder zu einem späteren Zeitpunkt mit einer Anzahlung belastet werden.
- Erscheint der Nutzer nicht zur Buchung, kann ihm eine Gebühr in Rechnung gestellt werden.
- Bei Bedarf können Anzahlungen und Gebühren bei Nichterscheinen zusammen für eine Buchung angewendet werden.
- Auch wenn keine Vorauszahlung erforderlich ist, muss der Buchungsserver auf die CreateBooking-Anfrage mit einer
PaymentInformation
antworten, die einepayment_transaction_id
enthält. Diese muss eindeutig sein. Diepayment_transaction_id
muss nicht vom Zahlungsabwickler bereitgestellt werden, sondern kann vom Buchungsserver generiert werden.
Anzahlungen und Gebühren bei Nichterscheinen können für Händler auf der Dienstebene oder auf der Verfügbarkeit des Slots angegeben werden. Wenn du sie auf der Ebene des verfügbaren Slots angibst, werden dadurch die Definitionen der Dienstebene überschrieben.
- Wenn du Anzahlungen aktivieren möchtest, lege das Feld
deposit
im Dienstleistungs- oder Verfügbarkeitsslot fest. - Wenn du Gebühren bei Nichterscheinen aktivieren möchtest, lege das Feld
no_show_fee
im Dienstleistungs- oder Verfügbarkeitsslot fest. - Setze das Feld
require_credit_card
im Dienstleistungs- oder Verfügbarkeitsslot aufREQUIRE_CREDIT_CARD_CONDITIONAL
. - Optional: Legen Sie
prepayment_type
aufREQUIRED
oderOPTIONAL
fest.
Kreditkarte erforderlich
In anderen Anwendungsfällen ist zum Zeitpunkt der Buchung eine Kreditkarte erforderlich.
- Setze das Feld
require_credit_card
auf Serviceebene oder Verfügbarkeitsslotebene eines Händlers aufREQUIRE_CREDIT_CARD_ALWAYS
.
Stornierungen und Erstattungen
Stornierungen und Erstattungen werden entweder vom Partner (Sie) oder vom Nutzer über das Actions Center veranlasst. In beiden Fällen musst du die CancellationPolicy
einhalten, die auf der Serviceebene festgelegt und dem Nutzer beim Buchen des Buchungsvorgangs mitgeteilt wurde.
Wenn Sie CancellationPolicy
nicht angeben, wird davon ausgegangen, dass jede Stornierung innerhalb des durch min_advance_online_canceling
definierten Stornierungsfensters, das auf Serviceebene festgelegt wurde, erstattungsfähig ist.
Wenn min_advance_online_canceling
nicht definiert ist, ist der Wert 0, d. h., sie kann jederzeit abgebrochen werden.
Wenn du die Kündigung im Actions Center deaktivieren möchtest, wende dich bitte an deinen Google-Ansprechpartner.
Änderungen an Echtzeitaktualisierungen- Nachdem Sie dem Nutzer eine Erstattung gewährt haben, müssen Sie eine Aktualisierung der Echtzeitaktualisierung für die Buchung senden, um den Zahlungsstatus der Buchung zu ändern. Legen Sie
update_mask
aufstatus,payment_information.prepayment_status
undpayment_information.prepayment_status = PREPAYMENT_REFUNDED
undstatus = CANCELED
fest.- Verwende die neuen
BookingStatus = CANCELED
undPrepaymentStatus = PREPAYMENT_REFUNDED
. Der AufzählungswertCANCELED_AUTOMATIC_REFUND
wurde sowohl für die Maps Booking API als auch für gRPC-Vorlagen eingestellt.
- Verwende die neuen
- Wenn das Actions Center eine
UpdateBookingRequest
sendet und dadurch eine Erstattung für den Nutzer auslöst, lege in derUpdateBookingResponse
booking.payment_information.prepayment_status = PREPAYMENT_REFUNDED
fest.