W tym omówieniu opisujemy proces składania zamówień w Zamów przez Google i interakcję z usługą realizacji zamówień.
Kolejność
Interfejs Order with Google obsługuje wszystkie interakcje z użytkownikiem podczas dodawania pozycji do zamówienia i podejmowania decyzji o odbiorze lub dostawie, w zależności od usług oferowanych przez restaurację. Ta funkcja korzysta z elementów Restaurant
, Service
i Menu
znajdujących się w Twoich plikach danych.
Następnym krokiem jest etap weryfikacji koszyka, w którym powstała przez użytkownika usługa Cart
, która została przetworzona przez usługę internetową.
Działanie w momencie płatności
Działanie Checkout to pierwsze wywołanie Google do punktu końcowego usługi internetowej.
Za weryfikację Cart
odpowiada Twoja usługa internetowa. Musisz potwierdzić dostępność i ceny produktów, obliczyć i zwrócić podatki, rabaty i opłaty, a także zweryfikować adres dostawy zamówienia.
Proces płatności przebiega w tej kolejności:
- Usługa Order with Google wysyła
CheckoutRequestMessage
, który zawiera elementCart
do Twojego punktu końcowego usługi internetowej realizacji zamówień. - Twoja usługa internetowa musi zweryfikować produkty w:
Cart
na podstawie aktualnych cen, dostępności i dostawców usług. Potem obliczasz łączną cenę, która obejmuje rabaty, podatki i opłaty za dostawę. - W punkcie końcowym odpowiada
CheckoutResponseMessage
zawierający niezmodyfikowanyCart
na potrzeby udanych żądań.CheckoutResponseMessage
może zawieraćFoodErrorExtension
, aby powodować błąd przetwarzania lub zaproponować drobne zmiany, jeśli to konieczne.
Po sprawdzeniu znaczników Cart
użytkownik może przejść do etapu przesyłania zamówienia.
Prześlij działanie związane z zamówieniem
Działanie polegające na przesłaniu zamówienia jest wywoływane, gdy użytkownik składa zamówienie. Usługa internetowa musi ponownie zweryfikować koszyk, przetworzyć token karty (jeśli płatności online są włączone) i zaktualizować stan zamówienia.
Proces składania zamówienia przebiega w tej kolejności:
- Usługa Order with Google wysyła
SubmitOrderRequestMessage
, który zawiera elementOrder
do Twojego punktu końcowego usługi internetowej realizacji zamówień. Twój backend musi wykonać kolejną weryfikacjęCart
, zanim przejdziesz dalej. Twoja usługa internetowa przetwarza dane do płatności znajdujące się w
Order
, zwykle wykonując te czynności:- Weryfikuj tokeny, oszustwo i inne kontrole.
- Autoryzuj kartę i opcjonalnie ją obciążaj.
Twój punkt końcowy zawiera
SubmitOrderResponseMessage
z elementemOrderUpdate
o stanieCREATED
("zamówiony; stan zakupu),CONFIRMED
("zaakceptowany i stan zakupu) lubREJECTED
("odrzucony" stan zakupu).
Po złożeniu zamówienia użytkownik oczekuje, że będzie otrzymywać aktualizacje stanu zarówno od Ciebie, jak i przez interfejs Order with Google. Musisz wysłać użytkownikowi e-maila z potwierdzeniem zamówienia. Oprócz tego do wysyłania do Google odpowiednich aktualizacji zamówień służy interfejs API aktualizacji zamówienia asynchronicznego.
Asynchroniczne działanie aktualizacji zamówienia
Niezależnie od powiadomień użytkownika, musisz także przesłać do Google aktualne informacje o stanie zamówienia dotyczące tych zdarzeń:
- zmiany w
OrderState
, np. przejście zCREATED
naCONFIRMED
orazCONFIRMED
naIN_TRANSIT
; - zmiany pozycji zamówień, np. cena lub dostępność;
- Za każdym razem, gdy użytkownik wywoła żądanie pomocy z jednego z Twoich kanałów obsługi klienta.
Aktualizacje są wysyłane z punktu końcowego usługi internetowej jako właściwość AsyncOrderUpdateRequestMessage
zawierająca OrderUpdate
. Google odpowiada AsyncOrderUpdateResponseMessage
.
Diagram sekwencji
Poniższy przykład przedstawia sposób wykonywania działań realizacji zamówień w Twojej usłudze internetowej. Kliknij, aby powiększyć.
Konfigurowanie punktu końcowego realizacji
Działania „Zamów przez Google” używają komunikatów JSON do komunikacji z usługą internetową oraz przetwarzania, potwierdzania i aktualizowania zamówień do jedzenia. Podczas projektowania usługi internetowej Zamów przez Google musisz zdefiniować punkt końcowy adresu URL, który będzie odbierać wiadomości od żądań usługi Zamów przez Google i zwrócić wiadomości do usługi Google. Implementacja musi spełniać te wymagania:
- Twoja usługa internetowa musi być w stanie odbierać wiadomość JSON jako żądanie
POST
z usługi Order with Google. - Usługa internetowa musi udostępniać publicznie dostępny punkt końcowy – nazywany adresem URL realizacji – określonym w portalu dla partnerów. Adres URL realizacji pozwala sprawdzić i przesłać zamówienia. Implementacja musi obsługiwać oba typy żądań.
- Usługa internetowa musi mieć możliwość weryfikowania wiadomości od Google za pomocą metody weryfikacji wiadomości.
- Implementacja punktu końcowego adresu URL musi obejmować zarówno realizację, jak i realizację zamówień za pomocą jednego punktu końcowego. Nie możesz mieć jednego punktu końcowego adresu URL do płatności i osobnego punktu końcowego do przesyłania zamówień.
Biblioteki klienta
Generator kodu klienta w sekcji Narzędzia jest dostępny w celu sprawdzenia poprawności usługi internetowej pod kątem zgodności ze specyfikacją interfejsu API Funding Choices.