Bu genel bakış, sipariş uçtan uca akışını ve bu akışla sipariş karşılama web hizmetiniz arasındaki etkileşimi özetler.
Sıralama
Sipariş Son-Uca kullanıcı arayüzü, kullanıcılar siparişlerine menü öğeleri eklerken ve restoranın sunduğu hizmetlere bağlı olarak teslimat veya paket servisi seçeneklerinden birine karar verirken kullanıcıyla olan tüm etkileşimleri yönetir. Bu deneyim, veri feed'lerinizde bulunan Restaurant
, Service
ve Menu
öğeleriyle desteklenir.
Sonraki adım, kullanıcı tarafından oluşturulan Cart
öğesinin web hizmetiniz tarafından işlendiği alışveriş sepeti doğrulama aşamasıdır.
Ödeme İşlemi
Ödeme işlemi, Google'ın web hizmetinizin uç noktasına yaptığı ilk çağrıdır.
Cart
doğrulamasından web hizmetiniz sorumludur. Ürünlerin stok durumunu ve fiyatını onaylamanız, vergileri, indirimleri ve ücretleri hesaplayıp iade etmeniz ve sipariş teslimat adresini doğrulamanız gerekir.
Ödeme süreci şu sırayla gerçekleşir:
- Sipariş End-to-End hizmeti, sipariş tamamlama web hizmetinizin uç noktasına
Cart
içeren birCheckoutRequestMessage
gönderir. - Web hizmetinizin, mevcut fiyatlara, müsaitlik durumuna ve servis sağlayıcılara göre
Cart
'teki öğeleri doğrulaması gerekir. Ardından indirimleri, vergileri ve teslimat ücretlerini içeren toplam fiyatı hesaplarsınız. - Bitiş noktanız, başarılı istekler için değiştirilmemiş
Cart
içeren birCheckoutResponseMessage
ile yanıt verir. İşleme hatası bildirmek veya gerekirse küçük değişiklikler önermek içinCheckoutResponseMessage
içine birFoodErrorExtension
eklenebilir.
Cart
doğrulandıktan sonra kullanıcı, akışın sipariş gönderme aşamasına geçmeyi seçebilir.
Sipariş Gönderme İşlemi
Sipariş gönderme işlemi, kullanıcı sipariş verdiğinde tetiklenir. Web hizmetiniz, alışveriş sepetini yeniden doğrulamalı, internetten ödeme özelliği etkinse kart jetonunu işlemeli ve son olarak siparişin durumunu güncellemelidir.
Sipariş gönderme süreci şu sırayla gerçekleşir:
- Sipariş End-to-End hizmeti, sipariş tamamlama web hizmetinizin uç noktasına
Order
içeren birSubmitOrderRequestMessage
gönderir. Devam etmeden önce arka uçunuzun başka birCart
doğrulaması yapması gerekiyor. Web hizmetiniz,
Order
içinde bulunan ödeme ayrıntılarını işler ve genellikle aşağıdaki işlemleri gerçekleştirir:- Jeton doğrulaması, sahtekarlık ve diğer uygunluk kontrollerini gerçekleştirin.
- Kartı yetkilendirin ve isteğe bağlı olarak karttan ödeme alın.
Bitiş noktanız,
CREATED
("Sipariş verildi" satın alma durumu),CONFIRMED
("Kabul edildi" satın alma durumu) veyaREJECTED
("Reddedildi" satın alma durumu) durumuna sahip birOrderUpdate
içeren birSubmitOrderResponseMessage
ile yanıt verir.
Sipariş verildiğinde kullanıcı hem sizden hem de Ordering End-to-End kullanıcı arayüzünden sipariş durumu güncellemeleri bekler. Kullanıcıya sipariş onayı e-postası göndermeniz gerekir. Ayrıca, ilgili sipariş güncellemelerini Google'a göndermek için Asenkron Sipariş Güncelleme API'sini kullanırsınız.
Eşzamansız Sipariş Güncelleme İşlemi
Kullanıcılara gönderdiğiniz bildirimlerden bağımsız olarak, aşağıdaki etkinlikler için Google'a sipariş durumu güncellemeleri de göndermeniz gerekir:
CREATED
ileCONFIRMED
veCONFIRMED
ileIN_TRANSIT
arasında geçişler gibiOrderState
metriğindeki değişiklikler.- Sipariş öğelerinde fiyat veya stok durumu gibi değişiklikler.
- Kullanıcı, müşteri destek kanallarınızdan birinde destek isteği gönderdiğinde
Güncellemeler, web hizmeti uç noktanızdan OrderUpdate
içeren bir AsyncOrderUpdateRequestMessage
olarak gönderilir. Google bir AsyncOrderUpdateResponseMessage
ile yanıt verir.
Adım sırası şeması
Aşağıdaki görselde, sipariş tamamlama işlemlerinin web hizmetinizle nasıl etkileşimde bulunduğu gösterilmektedir. Büyütmek için tıklayın.
İstek karşılama uç noktanızı ayarlama
Sipariş Uçtan Uca işlemleri, web hizmetinizle iletişim kurmak ve yemek siparişlerinin işlenmesini, onaylanmasını ve güncellemelerini yönetmek için JSON mesajları kullanır. Sipariş uçtan uca web hizmetinizi tasarlarken, Sipariş uçtan uca hizmetinden istek mesajları alan ve mesajları Google hizmetine geri gönderebilen bir URL uç noktası tanımlamanız gerekir. Uygulamanız aşağıdaki koşulları karşılamalıdır:
- Web hizmetiniz, Sipariş Uçtan Uca hizmetinden
POST
isteği olarak JSON mesajı almalıdır. - Web hizmetiniz, İşlem Merkezi'nde belirttiğiniz sipariş tamamlama URL'si adlı herkese açık bir URL uç noktası sağlamalıdır. Siparişin tamamlandığı URL, ödeme yapmak ve sipariş göndermek için kullanılır. Uygulamanız her iki istek türünü de işlemelidir.
- Web hizmetiniz, Mesaj doğrulama yöntemini kullanarak Google'dan gelen mesajları doğrulayabilmelidir.
- URL uç noktasını uygulamanız, tek bir uç noktayla hem ödemeyi hem de sipariş tamamlamayı gerçekleştirebilmelidir. Ödeme için bir URL uç noktası ve sipariş gönderimi için ayrı bir uç noktanız olamaz.
İstemci Kitaplıkları
Araçlar bölümündeki istemci kodu oluşturucuyu kullanarak web hizmetinizi Fulfillment API spesifikasyonuna göre doğrulayabilirsiniz.