Ayak Türleri
Alışveriş sepeti
Siparişle ilgili ayrıntıların yanı sıra isteğin teslim alma için olup olmadığı bilgisini içerir veya teslimatla ilgili. Bir alışveriş sepetinde teslimat bilgileri, bahşiş ve teslimat bilgileri de yer alır. girin.Cart
nesnesi, Checkout AppRequest
.f içinde tanımlanır.
Alışveriş sepetinin bir kopyasını Checkout AppResponse
sayfanıza eklerseniz
Aşağıdaki tabloda Cart
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam |
Bu nesnenin türü. Üst Cart nesnesi Proposed Order'ın bir parçasıysa bu alanı atlayın. Değer: |
|
id |
String |
Alışveriş sepetinin isteğe bağlı kimliği. |
|
merchant |
Merchant |
Bu alışveriş sepetiyle ilişkilendirilmiş satıcı. |
|
lineItems |
Liste<LineItem > |
Zorunlu. Kullanıcının sipariş ettiği mal veya hizmetlerin listesi. En az 1 öğe içermelidir. |
|
promotions |
Liste<Promotion > |
Bu alışveriş sepetine uygulanan promosyon. Şu anda yalnızca bir promosyon desteklenmektedir. |
|
notes |
String |
Sipariş veya teslimat talimatlarıyla ilgili notlar. |
|
extension |
FoodCartExtension |
Kullanıcıyla ilgili ayrıntıları (ör. sipariş karşılama tercihleri) tanımlar. |
Aşağıdaki örnekte bir Cart
öğesi gösterilmektedir:
1. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.Cart", "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Cucina Venti" }, "lineItems": [ { "name": "Sizzling Prawns Dinner", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "16", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }
2. Örnek
{ "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }, { "name": "Chicken Shwarma Wrap", "type": "REGULAR", "id": "sample_item_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/offer/id2", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "8" } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Greek Salad", "type": "REGULAR", "id": "sample_item_offer_id_3", "offerId": "https://www.exampleprovider.com/menu/item/offer/id3", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Prawns Biryani", "type": "REGULAR", "id": "sample_item_offer_id_4", "offerId": "https://www.exampleprovider.com/menu/item/offer/id4", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "15", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }
İletişim
Siparişi alan kişiyle ilgili ayrıntıları belirtir. Yalnızca aşağıdaki ülkelerde kullanılabilir:AppResponse
.
Aşağıdaki tabloda Contact
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
displayName |
String |
Siparişi alan kişinin, sizin görüntülenmesini istediğiniz adı. firstName ve lastName belirtilmediyse bu alanı kullanın. Örnek: |
|
email |
String |
Siparişi alan kişinin e-posta adresi. Örnek: |
|
firstName |
String |
Siparişi alan kişinin adı. Örnek: |
|
lastName |
String |
Siparişi alan kişinin soyadı. Örnek: |
|
phoneNumber |
String |
Ülke kodu dahil olmak üzere siparişi alan kişinin telefon numarası. Örnek: |
|
emailVerified |
Boole |
Siparişi alan kişinin Google hesabıyla giriş yapıp yapmadığını belirtir. |
Aşağıdaki örnekte bir Contact
öğesi gösterilmektedir:
Örnek
{ "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" }
CustomPushMessage
İsteğinOrderUpdate
değerini içerir.
Aşağıdaki tabloda CustomPushMessage
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
orderUpdate |
OrderUpdate |
Zorunlu. Siparişle ilgili bilgiler güncellendi. |
Aşağıdaki örnekte bir CustomPushMessage
öğesi gösterilmektedir:
Örnek
{ "orderUpdate": { "actionOrderId": "sample_action_order_id", "orderState": { "state": "IN_TRANSIT", "label": "Order is on the way" }, "inTransitInfo": { "updatedTime": "2017-07-17T12:00:00Z" }, "updateTime": "2017-07-17T12:00:00Z", "orderManagementActions": [ { "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }, { "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }, { "type": "CALL_RESTAURANT", "button": { "title": "Call restaurant", "openUrlAction": { "url": "tel:+16505554679" } } } ], "receipt": { "userVisibleOrderId": "userVisibleId1234" }, "infoExtension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" } } }
DeliveryInfo
Aşağıdaki tabloda DeliveryInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
deliveryTimeIso8601 |
String |
ISO 8601 zaman damgası biçiminde tahmini teslimat süresi: "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" ya da süre biçimi: "P(n)Y(n)M(n)DT(n)H(n)M(n)S". Örneğin, PT90M 90 dakikalık bir süreyi temsil eder. "PT0M" varsayılan değeri, tercih edilen teslimat süresinin mümkün olan en kısa sürede olduğunu gösterir. Referans: https://en.wikipedia.org/wiki/ISO_8601#United_date_and_time_representations. Ödeme yanıtı sırasında bu tahmini teslimat süresini güncellemek için bu seçeneği kullanın. Örnek: |
Aşağıdaki örnekte bir DeliveryInfo
öğesi gösterilmektedir:
Örnek
{ "deliveryTimeIso8601": "PT90M" }
Sorumluluk Reddi Beyanı
Aşağıdaki tabloda Disclaimer
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
predefinedMessage |
PredefinedMessage |
Zorunlu. Ödeme sırasında önceden tanımlanmış sorumluluk reddi beyanı mesajlarını göstermek için |
|
feeAmount |
Money |
İş ortağı, bu sipariş için satıcıdan N tutarında ödeme alacak. |
|
feeAmountRange |
FeeAmountRange |
İş ortağı, restorandan sipariş başına N ila M tutarında bir ücret alır. |
|
feePercent |
Number |
İş ortağı, bu sipariş için satıcıdan% N bir ücret alır. |
|
feePercentRange |
FeePercentRange |
İş ortağı, satıcıdan sipariş başına% N ila% M oranında bir ücret alır. |
Aşağıdaki örnekte bir Disclaimer
öğesi gösterilmektedir:
1. Örnek
{ "predefinedMessage": "NEW_YORK_DELIVERY_FEE_TIP_DISCLAIMER" }
2. Örnek
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE" }
3. Örnek
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feePercent": 25 }
4. Örnek
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feePercentRange": { "minFeePercent": 20, "maxFeePercent": 30 } }
Örnek 5
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feeAmount": { "currencyCode": "AUD", "units": 2, "nanos": 500000000 } }
6. Örnek
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feeAmountRange": { "minFeeAmount": { "currencyCode": "AUD", "units": 2, "nanos": 500000000 }, "maxFeeAmount": { "currencyCode": "AUD", "units": 10, "nanos": 0 } } }
Hata
Error
türü aşağıdaki olası değerlere sahiptir:
CLOSED
: Restoran, sipariş sırasında hizmet verilmemiştir.NO_CAPACITY
: Kullanılabilir hizmet kapasitesi yoktur (örneğin, yoğun saatler nedeniyle yaşanan geçici kesinti).NO_COURIER_AVAILABLE
: Teslimat personeli sınırlı olduğundan sipariş işlenemiyor.REQUIREMENTS_NOT_MET
: Siparişi kabul etmeyle ilgili kısıtlamalar karşılanmadı (örneğin, minimum sepet boyutu).UNAVAILABLE_SLOT
: Sipariş, DeliveryInfo veya PickupInfo tarafından belirtilen zamanında yerine getirilemiyor.OUT_OF_SERVICE_AREA
: Sipariş, kullanıcının adresine teslim edilemez.PROMO_EXPIRED
: Promosyonun süresi dolduğundan uygulanamadı.PROMO_NOT_APPLICABLE
: Diğer promosyon kodu hatalarından hiçbiri geçerli değilse promosyon kodu uygulanamadığından tüm durumları yakalayan genel hata kodu.PROMO_NOT_RECOGNIZED
: Kupon kodu tanınmadı.PROMO_ORDER_INELIGIBLE
: Geçerli sipariş bu kupon için uygun değil.PROMO_USER_INELIGIBLE
: Geçerli kullanıcı bu kuponu almak için uygun değil.AVAILABILITY_CHANGED
: Öğe artık mevcut değil veya isteği yerine getirmek için yeterli sayıda öğe yok.INCORRECT_PRICE
: Ücretlerde veya toplamda fiyat hataları var.INVALID
: Bir Satır Öğesi, FulfillmentOption veya Promosyon, geçersiz veri içeriyor.NOT_FOUND
: Bir Satır Öğesi, FulfillmentOption veya Promosyon bulunamıyor.PRICE_CHANGED
: Bir öğenin fiyatı değişti.
FeeAmountRange
Aşağıdaki tabloda FeeAmountRange
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
minFeeAmount |
Money |
Alınan ücret tutarının alt sınırı. |
|
maxFeeAmount |
Money |
Alınan ücret tutarının üst sınırı. |
FeePercentRange
Aşağıdaki tabloda FeePercentRange
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
minFeePercent |
Number |
Alınan ücret yüzdesinin alt sınırı. |
|
maxFeePercent |
Number |
Alınan ücret yüzdesinin üst sınırı. |
FoodCartExtension
Kullanıcıyla ilgili, sipariş karşılama tercihleri gibi ayrıntıları içerir.
Aşağıdaki tabloda FoodCartExtension
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam |
Bu uzantının türü. Bu alan her zaman "type.googleapis.com/google.actions.v2.orders.FoodCartExtension" olarak ayarlanır. Değer: |
|
contact |
Contact |
Siparişi alan kişinin iletişim bilgileri. Ayrıntılar arasında kişinin adı, telefon numarası ve e-posta adresi yer alır. |
|
fulfillmentPreference |
FulfillmentOption |
Zorunlu. Kullanıcının sipariş karşılama tercihi. |
|
location |
Location |
CheckoutRequestMessage'daki bu alan, sipariş teslimat içinse gerekli olan teslimat adresini belirtir. Paket servisi veya gel-al siparişler için bu alan mesaja dahil edilmez. |
Aşağıdaki örnekte bir FoodCartExtension
öğesi gösterilmektedir:
1. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } }
2. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } }, "contact": { "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" } }
FoodErrorExtension
İstek işlenirken oluşan bir veya daha fazla hatayı tespit eder. Aşağıdaki tablodaFoodErrorExtension
türünün alanları açıklanmaktadır.
Hatalar CheckoutResponse
içinde gönderilebilir.
Aşağıdaki tabloda FoodErrorExtension
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam | Zorunlu. Bu uzantının türü. Değer: |
|
foodOrderErrors |
Liste<FoodOrderError > |
Zorunlu. Oluşan hataları açıklayan FoodOrdersError nesneleri dizisi. Alışveriş sepeti veya öğe başına bir hata kullanılması önerilir. En az 1 öğe içermelidir. |
|
correctedProposedOrder |
ProposedOrder |
Şu durumda zorunludur:
Düzeltme içeren yeni bir Proposed Order. Orijinal Proposed Order'da kurtarılabilir hatalar varsa bu nesneyi döndürün. Örneğin, alışveriş sepetindeki bir veya daha fazla satır öğesinin fiyatının değişmesi kurtarılabilir bir hatadır. Geçerli bir ProposedOrders'a sahip olan kurtarılabilir hatalar, kullanıcının alışveriş sepetini incelemesini gerektirmek yerine, onay aşamasına ilerletilir. |
|
paymentOptions |
PaymentOptions |
Şu durumda zorunludur:
Kullanıcı için belirlenen varsayılan ödeme seçenekleri. |
|
additionalPaymentOptions |
Liste<PaymentOptions > |
Kullanıcıya sunulan alternatif ödeme seçenekleri. |
Aşağıdaki örnekte bir FoodErrorExtension
öğesi gösterilmektedir:
Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodErrorExtension", "foodOrderErrors": [ { "error": "PRICE_CHANGED", "id": "sample_item_offer_id_1", "description": "The price has changed.", "updatedPrice": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, { "error": "PRICE_CHANGED", "id": "sample_item_offer_id_2", "description": "The price has changed.", "updatedPrice": { "currencyCode": "USD", "units": "8" } } ], "correctedProposedOrder": { "id": "sample_corrected_proposed_order_id_1", "otherItems": [ { "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }, { "name": "Delivery fee", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 500000000 } }, "type": "TAX" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }, { "name": "Chicken Shwarma Wrap", "type": "REGULAR", "id": "sample_item_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/offer/id2", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "8" } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Greek Salad", "type": "REGULAR", "id": "sample_item_offer_id_3", "offerId": "https://www.exampleprovider.com/menu/item/offer/id3", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Prawns Biryani", "type": "REGULAR", "id": "sample_item_offer_id_4", "offerId": "https://www.exampleprovider.com/menu/item/offer/id4", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "15", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "36", "nanos": 730000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] } }, "paymentOptions": { "googleProvidedOptions": { "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:publishableKey": "pk_live_stripe_client_key", "stripe:version": "2017-04-06" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "JCB", "VISA" ], "prepaidCardDisallowed": true } } }
FoodItemExtension
Gıda öğeleri için eklentileri tanımlar.
Aşağıdaki tabloda FoodItemExtension
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam | Zorunlu. Bu uzantının türü. Bu alan her zaman "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" değerine ayarlanır. Değer: |
|
options |
Liste<FoodItemOption > |
Seçenek, eklenti öğesi veya eklenti grubu içeren bir eklenti grubu olabilir. |
Aşağıdaki örnekte bir FoodItemExtension
öğesi gösterilmektedir:
Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1, "subOptions": [ { "id": "10239138", "offerId": "912391723", "name": "Fries", "price": { "currencyCode": "USD", "units": "2", "nanos": 230000000 }, "quantity": 1 } ] } ] }
FoodItemOption
Aşağıdaki tabloda FoodItemOption
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
id |
String |
Google tarafından atanan benzersiz kimlik. Food OrderError veya Async OrderUpdateRequest gönderirken bir alışveriş sepetinin aynı offerId değerine sahip birden fazla öğe içerdiği durumları ayırt etmek için bu alanı kullanın. Örnek: |
|
offerId |
String |
Öğenin teklif kimliği. Örnek: |
|
name |
String |
Seçenek adı. Örnek: |
|
price |
Money |
||
note |
String |
Seçenekle ilgili not. |
|
quantity |
Number |
Öğe olan seçenekler için öğe sayısıdır. Örnek: |
|
subOptions |
Liste<FoodItemOption > |
Varsa seçeneğin alt seçenekleri. Örnek: |
Aşağıdaki örnekte bir FoodItemOption
öğesi gösterilmektedir:
1. Örnek
{ "id": "10293231", "offerId": "1918491", "name": "Honey Mustard", "price": { "currencyCode": "USD", "units": "1", "nanos": 250000000 }, "quantity": 5 }
2. Örnek
{ "id": "123166552", "offerId": "912849184", "name": "Make It A Meal", "price": { "currencyCode": "USD", "units": "3", "nanos": 730000000 }, "quantity": 1, "subOptions": [ { "id": "10239138", "offerId": "912391723", "name": "Fries", "price": { "currencyCode": "USD", "units": "2", "nanos": 230000000 }, "quantity": 1 }, { "id": "57159183", "offerId": "81837123", "name": "Drink", "price": { "currencyCode": "USD", "units": "3", "nanos": 130000000 }, "quantity": 1 } ] }
FoodOrderError
CheckoutResponse
'daki hatalarla ilgili ayrıntıları içerir.
Aşağıdaki tabloda FoodOrderError
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
error |
Error |
Zorunlu. |
|
id |
String | Şu durumda zorunludur:
Bu alan, öğe düzeyindeki hatalar için gereklidir. Menü öğeleri için Google tarafından atanan LineItem.id veya eklentiler için FoodItemOption.id öğesidir. |
|
description |
String |
Hatanın açıklaması. Bu açıklama dahili günlük kaydı içindir ve kullanıcılar tarafından görülemez. |
|
updatedPrice |
Money |
Şu durumda zorunludur:
Hataya neden olan bir öğenin yeni fiyatıdır. Bu yalnızca hata "PRICE_CHANGED" olduğunda gereklidir. |
|
availableQuantity |
Tamsayı | Şu durumda zorunludur:
Hataya neden olan öğenin kullanılabilir yeni miktarı. Bu yalnızca hata "GEÇERSİZ" olduğunda gereklidir veya "NOT_FOUND" olarak görünür. Değer, "INVALID" için sıfır olmalıdır ve "NOT_FOUND" olarak da bilinir. |
Aşağıdaki örnekte bir FoodOrderError
öğesi gösterilmektedir:
1. Örnek
{ "error": "CLOSED", "description": "This store is currently reachable. Please try again later." }
2. Örnek
{ "error": "PRICE_CHANGED", "id": "french_fries", "description": "The price has changed.", "updatedPrice": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }
FoodOrderExtension
Siparişle ilgili sipariş karşılama bilgilerini içerir.
Aşağıdaki tabloda FoodOrderExtension
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam |
Bu uzantının türü. Bu alan her zaman "type.googleapis.com/google.actions.v2.orders.FoodOrdersExtension" değerine ayarlanır. Değer: |
|
availableFulfillmentOptions |
Liste<FulfillmentOption > |
Sipariş için mevcut sipariş karşılama seçeneklerini gösterir. |
|
optinForRemarketing |
Boole |
Kullanıcının pazarlama kanallarınıza dahil olma isteği. Varsayılan olarak, kullanıcının izni olmadan pazarlama içeriği gönderemezsiniz. optinForYeniden Pazarlama true ise kullanıcıyı abone yapabilirsiniz. optinForRemarketing false (yanlış) değerinde veya mevcut değilse sisteminizdeki abonelik durumunu olduğu gibi tutmanız gerekir. Kullanıcılar, bu özelliğin kapsamı dışında kalmayı Google üzerinden değil, yalnızca pazarlama kanallarınızda belirtilen bir abonelik iptali işleviyle gerçekleştirebilir. Bu işaret yalnızcaSubmit OrderRequestMessage'da bulunur. |
Aşağıdaki örnekte bir FoodOrderExtension
öğesi gösterilmektedir:
1. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] }
2. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2020-08-20T11:41:00Z" } ], "optinForRemarketing": true }
FulfillmentOption
FulfillmentOption
nesnesini aşağıdaki şekillerde kullanabilirsiniz:
-
Checkout AppRequest
içinde veSubmit AppRequest
,Cart.extension.fulfillmentPreference
: Kullanıcının tercihini depolar (teslimat) veya teslim alma). Ödeme isteği gönderildiğinde fiyat her zaman 0 olur. -
Checkout AppResponse
ayında,ProposedOrder.extension.availableFulfillmentOptions
: Bir veya daha fazla yayınlanma seçeneği tanımlar (şu anda yalnızca bir seçenek desteklenir). Varsayılan seçeneği şurada birLineItem
olarak belirtirsiniz:ProposedOrder.otherItems
.offerId
FulfillmentOption
kimliğiProposedOrder.otherItems
içindeLineItem
belirtilmiş.
Aşağıdaki tabloda FulfillmentOption
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
offerId |
String |
Bu sipariş karşılama seçeneğinin (varsa) benzersiz tanımlayıcısı. |
|
fulfillmentInfo |
FulfillmentOptionInfo |
Zorunlu. |
|
expiresAt |
ISO Zaman Damgası |
Bu sipariş karşılama seçeneğinin süresinin dolacağı zaman. |
|
price |
Money |
Bu seçeneğin maliyeti. |
Aşağıdaki örnekte bir FulfillmentOption
öğesi gösterilmektedir:
Örnek
{ "offerId": "offer5", "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2019-05-02T00:00:00-07:00", "price": { "currencyCode": "USD", "units": "5", "nanos": 230000000 } }
FulfillmentOptionInfo
FulfillmentInfo
ile ilgili bilgileri tanımlar.
Aşağıdaki tabloda FulfillmentOptionInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
Aşağıdaki tesis gruplarından tam olarak biri gereklidir. | |||
delivery |
1. Grup | DeliveryInfo |
Varsa teslimat sırasını belirtir. |
pickup |
2. Grup | PickupInfo |
Varsa teslim alma siparişini belirtir. |
Resim
Aşağıdaki tabloda Image
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
sourceUrl |
String | Zorunlu. Resmin URL'si. Resim en az 72x72 piksel olmalıdır. En iyi sonuçlar için en az 216x216 piksel boyutunda bir resim kullanın. Resim boyutu 6 MB'tan ve çözünürlüğü 64 megapikselden küçük olmalıdır. |
LineItem
Bir alışveriş sepetinin içeriğini (Cart.lineItems
) veya
sipariş (ProposedOrder.otherItems
).
Aşağıdaki tabloda LineItem
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
id |
String | Şu durumda zorunludur:
Alışveriş Sepetindeki Satır Öğesi (ProposedOrders.cart.lineItems[0].id) için bu, Google tarafından siparişi oluştururken oluşturulan benzersiz kimliktir. Teslimat ücretleri ve vergiler gibi öğelerin eklenmesinde kullanılan Proposed Order (ProposedOrders.otherItems[0].id) içindeki bir Satır Öğesi için kimliğin değeri sağlayıcı tarafından tanımlanır. Örneğin, bir alışveriş sepetinde aynı üründen farklı hazırlama talimatları olan iki tane vardır (örneğin, farklı malzemeleri olan iki orta boy pizza). Bu durumda, her iki öğe de aynı temel offerId değerine sahiptir. Bir öğenin reddedildiğini belirtmek için sipariş güncelleme isteği gönderdiğinizde, netleştirme işareti olarak bu kimliği kullanın. Başka bir deyişle, pizzalardan biri belirli bir malzemesi olmadığı için reddedilirse kimlik, Google'ın hangi siparişten bahsettiğinizi belirlemesine yardımcı olur. Bu alan, otherItems dışında zorunludur. |
|
name |
String | Zorunlu. Satır öğesinin adı. Bu, kullanıcının görebildiği bir dizedir ve mümkünse cümle biçiminde olmalıdır ("Teslimat ücreti", "Hizmet ücreti", "Vergi" gibi). Bu alan, kullanıcılar için 100 karakter olacak şekilde kısaltılır. |
|
type |
LineItemType |
Zorunlu. |
|
quantity |
Tamsayı | Şu durumda zorunludur:
Dahil edilen öğe sayısı. ProposedOrders.otherItems için geçerli değildir. |
|
description |
String |
Öğenin açıklaması. |
|
price |
Price |
Zorunlu. Öğe veya öğelerin fiyatıdır. Bu değer, bu satır öğesi için tüm ürün veya hizmetlerin toplam fiyatını yansıtır (başka bir deyişle, tüm eklentilerin maliyetini ekleyip miktarla çarpar). Örneğin: 10 TL'lik bir öğenin miktarı 3 ise fiyat 30 TL olur. Taban fiyatı 5 ABD doları ve 1 ABD doları eklenti olan bir pizzanın fiyatı 6 ABD doları olur. Taban fiyatı 5 TL olan ve her birinin eklentisi 1 TL olan iki pizzanın (miktar = 2) fiyatı 12 TL olur. Her Satır Öğesi'nin fiyatı "0" olsa bile bir fiyatı olmalıdır. Tür İNDİRİM ise, değeri negatif olarak belirtin (ör. "-2"). |
|
subLines |
Liste<SublineNote > |
İsteğe bağlıdır ve yalnızca tür "REGULAR" ise geçerlidir. Ödeme isteği ve sipariş gönderme isteğindeki bu alana kullanıcının öğeye özel bir not gönderilebilir. Notu gönderildiğinde satıcının aldığından emin olun. Bu değer, istekte subLines[0].note olarak yer alır. Bu, istekte mevcut olduğunda bu alanda sağlanan tek değerdir. En fazla 1 öğe içermelidir. |
|
offerId |
String | Şu durumda zorunludur:
Öğenin MenuItem öğesinin teklif kimliği. ProposedOrders.otherItems için geçerli değildir. |
|
extension |
FoodItemExtension |
Gıda öğeleri için eklentileri tanımlar. |
Aşağıdaki örnekte bir LineItem
öğesi gösterilmektedir:
1. Örnek
{ "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }
2. Örnek
{ "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }
LineItemType
LineItemType
türü aşağıdaki olası değerlere sahiptir:
REGULAR
: Mal satır öğesi. Cart.lineItems için geçerlidir.TAX
: Vergi satır öğesi. ProposedOrders.otherItems için geçerlidir.DISCOUNT
: İndirim satır öğesi. Fiyatın negatif olması gerektiğini unutmayın. ProposedOrders.otherItems için geçerlidir.GRATUITY
: Bahşiş satır öğesi. Genel olarak kullanıcı tarafından seçilen bir ipucuna yönelikSubmit OrderRequestMessage için ayrılmıştır. ProposedOrders.otherItems için geçerlidir.DELIVERY
: Yayınlama satır öğesi. ProposedOrders.otherItems için geçerlidir.SUBTOTAL
: Ara toplam satır öğesi. ProposedOrders.otherItems için geçerlidir.FEE
: Diğer türler tarafından kapsanmayan ek satır öğesi. ProposedOrders.otherItems için geçerlidir.
Konum
Yemek siparişi için bir adres belirtir.Location
türü,
Cart
özelliğini kullanın.
Kesinleşmiş konum,
TransactionDecisionValue
kullanıcı siparişi verirse. Teslim alma belirten siparişlerde konum
hiç dahil edilmez (boş bile değil).
Aşağıdaki tabloda Location
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
coordinates |
Coordinates |
||
formattedAddress |
String |
Konumun görünen adresi. Örnek: |
|
postalAddress |
PostalAddress |
||
zipCode |
String |
Örnek: |
|
city |
String |
Şehrin adı. Örnek: |
|
notes |
String |
Kapı kodları gibi konumla ilgili notlar. En fazla 500 karakter uzunluğunda olmalıdır. Örnek: |
Aşağıdaki örnekte bir Location
öğesi gösterilmektedir:
Örnek
{ "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" }
Satıcı
Aşağıdaki tabloda Merchant
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
id |
String |
Satıcının kimliği. Belirtilmişse Restoran feed'indeki Restaurant.@id ile eşleşir. Örnek: |
|
name |
String | Zorunlu. Satıcının kullanıcı tarafından görülebilen adı. Örnek: |
Aşağıdaki örnekte bir Merchant
öğesi gösterilmektedir:
Örnek
{ "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }
Para
Aşağıdaki tabloda Money
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
currencyCode |
String | Zorunlu. ISO 4217 biçiminde, 3 harfli para birimi kodu. Örnek: |
|
units |
String |
Tutarın tam birimi. Örneğin, currencyCode "USD" ise "1" olur. birimi bir ABD doları. Örnek: |
|
nanos |
Tamsayı |
Tutarın nano (10^-9) birimlerinin sayısı. Değer -999.999.999 ile +999.999.999 (bu değerler dahil) arasında olmalıdır. Şu kuralları kullanın: Birimler pozitifse nanos değeri pozitif veya sıfır olmalıdır. Birim sayısı sıfırsa nanos değeri pozitif, sıfır veya negatif olabilir. Birimler negatifse nanos değeri negatif veya sıfır olmalıdır. Örneğin, -1,75 dolar birim = -1 ve nano = -750.000.000 şeklinde ifade edilir. Örnek: |
Aşağıdaki örnekte bir Money
öğesi gösterilmektedir:
1. Örnek
{ "currencyCode": "USD", "units": "36", "nanos": 730000000 }
2. Örnek
{ "currencyCode": "EUR", "units": "10" }
Sipariş
Aşağıdaki tablodaki vergiler, ücretler ve teslimat ücretleri dahil olmak üzere son siparişi içerir. ödeme bilgileri de dahildir. Bu nesne, işleminiz tarafındanSubmit AppRequest
Aşağıdaki tabloda Order
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
finalOrder |
ProposedOrder |
Zorunlu. Emri sağlayan önerilen sıra. |
|
googleOrderId |
String | Zorunlu. Google tarafından atanan sipariş kimliği. Bu kimlik, bir siparişin tüm yaşam döngüsü boyunca sabit olmalıdır. Bu kimlik son kullanıcı tarafından görülemez. |
|
orderDate |
ISO Zaman Damgası | Zorunlu. Siparişin oluşturulduğu tarih ve saat. |
|
paymentInfo |
PaymentInfo |
Zorunlu. Bu sipariş için yapılan ödemeye karşılık gelen ödeme bilgileri. |
Aşağıdaki örnekte bir Order
öğesi gösterilmektedir:
Örnek
{ "finalOrder": { "cart": { "notes": "Guest prefers their food to be hot when it is delivered.", "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Cucina Venti" }, "lineItems": [ { "name": "Sizzling Prawns Dinner", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "16", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } }, "contact": { "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" } } }, "otherItems": [ { "name": "Service fee", "type": "FEE", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } } }, { "name": "Tax", "type": "TAX", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 370000000 } } }, { "name": "Tip", "type": "GRATUITY", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 590000000 } } } ], "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "23", "nanos": 710000000 } }, "id": "sample_final_order_id", "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ], "optinForRemarketing": true } }, "googleOrderId": "sample_google_order_id", "orderDate": "2017-07-17T12:00:00Z", "paymentInfo": { "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd" }, "paymentType": "PAYMENT_CARD" } }
OrderUpdate
Aşağıdaki tabloda, listelenen siparişlerinizin sipariş güncellemesiAppResponse
kapsamındadır.
Aşağıdaki tabloda OrderUpdate
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
actionOrderId |
String | Zorunlu. Güncellemenin gönderildiği sırayı tanımlamak için kullanılan, entegratörün sistemindeki siparişin benzersiz kimliği. receive.user_visible_order_id, OrderUpdate'de "CREATED" öğesi için en az bir kez sağlanmamışsa bu kimlik, Google sipariş kartında gösterilen kullanıcı tarafından görülebilen bir kimlik olacaktır. |
|
orderState |
OrderState |
Zorunlu. Siparişin yeni durumu. |
|
lineItemUpdates |
Harita<Dize, LineItemUpdate > |
||
updateTime |
ISO Zaman Damgası | Zorunlu. Siparişin güncellendiği saat. |
|
orderManagementActions |
Liste<OrderManagementAction > |
Destek ekibiyle iletişime geçme ve sipariş ayrıntılarını görüntüleme gibi sipariş sonrası işlemler. En az 1 öğe ve En fazla 6 öğe. |
|
rejectionInfo |
RejectionInfo |
Şu durumda zorunludur:
|
|
cancellationInfo |
CancellationInfo |
Şu durumda zorunludur:
|
|
inTransitInfo |
InTransitInfo |
Bu alan kullanımdan kaldırılmıştır. |
|
fulfillmentInfo |
FulfillmentInfo |
Bu alan kullanımdan kaldırılmıştır. |
|
receipt |
Receipt |
Şu durumda zorunludur:
Makbuzda, kullanıcının görebildiği sipariş kimliğini sağlayın. |
|
totalPrice |
Price |
Siparişin toplam fiyatı. |
|
infoExtension |
FoodOrderUpdateExtension |
Sipariş güncellemesiyle ilgili daha fazla ayrıntı (ör. tahmini teslimat veya teslim alma aralığı) tanımlar. |
Aşağıdaki örnekte bir OrderUpdate
öğesi gösterilmektedir:
Örnek
{ "actionOrderId": "sample_action_order_id", "orderState": { "state": "CONFIRMED", "label": "Provider confirmed" }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "41", "nanos": 600000000 } }, "lineItemUpdates": { "sample_item_id_1": { "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "reason": "This item has an updated price." } }, "receipt": { "userVisibleOrderId": "userVisibleId1234" }, "updateTime": "2017-07-17T12:00:00Z", "orderManagementActions": [ { "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }, { "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }, { "type": "CALL_RESTAURANT", "button": { "title": "Call restaurant", "openUrlAction": { "url": "tel:+16505554679" } } } ], "infoExtension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" } }
PickupInfo
Aşağıdaki tabloda PickupInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
pickupTimeIso8601 |
String |
ISO 8601 zaman damgası biçiminde tahmini teslim alma süresi: "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" ya da süre biçimi: "P(n)Y(n)M(n)DT(n)H(n)M(n)S". Örneğin, PT90M 90 dakikalık bir süreyi temsil eder. "PT0M" varsayılan değeri, tercih edilen teslim alma süresinin mümkün olan en kısa sürede olduğunu gösterir. Referans: https://en.wikipedia.org/wiki/ISO_8601#United_date_and_time_representations. Ödeme yanıtı sırasında tahmini teslim alma süresini güncellemek için bu ayarı kullanın. Örnek: |
Aşağıdaki örnekte bir PickupInfo
öğesi gösterilmektedir:
Örnek
{ "pickupTimeIso8601": "PT90M" }
PostalAddress
Aşağıdaki tabloda PostalAddress
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
regionCode |
String | Zorunlu. İki harfli ülke kodudur. Örnek: |
|
postalCode |
String |
Posta kodu. Örnek: |
|
administrativeArea |
String |
Bir ülke veya bölgenin posta adresleri için kullanılan en yüksek idari alt bölüm. Bu bir eyalet, il, oblast veya vilayet olabilir. Örnek: |
|
locality |
String |
Bu konumun şehir veya ilçesidir. Dünyada yerlerin iyi tanımlanmadığı veya bu yapıya uymadığı bölgelerde, yerelliği belirtmeyin ve bunun yerine addressLines alanını kullanın. Örnek: |
|
addressLines |
Liste<Dize> |
Açık adresi belirtmek için kullanabileceğiniz bir veya daha fazla satır. Bu alan, belirsiz konumlar içerebileceği için değiştirilmemelidir. Örnek: |
|
recipients |
Liste<Dize> |
Bir siparişin alıcılarının listesi. Bu alan yalnızca billingAddress |
Aşağıdaki örnekte bir PostalAddress
öğesi gösterilmektedir:
Örnek
{ "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }
Fiyat
Aşağıdaki tabloda Price
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
type |
Enum [
"ESTIMATE",
"ACTUAL"
] |
Zorunlu. Promosyon kuponu kodu. |
|
amount |
Money |
Zorunlu. |
Tanıtım
Aşağıdaki tabloda Promotion
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
coupon |
String | Zorunlu. Promosyon kuponu kodu. |
ProposedOrder
Aşağıdaki tabloda ProposedOrder
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
id |
String |
Teklif edilen siparişin isteğe bağlı kimliği. |
|
cart |
Cart |
Zorunlu. Kullanıcının öğeleri. |
|
otherItems |
Liste<LineItem > |
Sağlayıcı tarafından eklenen öğeler (ör. teslimat ücretleri, diğer ücretler ve vergiler). otherItems, kullanıcı tarafından eklenen bahşiş ve/veya indirimi de içerebilir. En fazla 10 öğe içermelidir. |
|
image |
Image |
Teklif edilen siparişle ilişkilendirilen resim. |
|
totalPrice |
Price |
Zorunlu. Teklif edilen siparişin toplam fiyatı. |
|
extension |
FoodOrderExtension |
Zorunlu. Yemek siparişleriyle ilgili sipariş karşılama bilgilerini tanımlar. |
|
disclaimers |
Liste<Disclaimer > |
Sipariş verilmeden önce kullanıcı arayüzünde gösterilecek sorumluluk reddi beyanı mesajlarına karşılık gelir. |
Aşağıdaki örnekte bir ProposedOrder
öğesi gösterilmektedir:
Örnek
{ "id": "sample_proposed_order_id_1", "otherItems": [ { "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }, { "name": "Delivery fee", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 500000000 } }, "type": "TAX" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }, { "name": "Chicken Shwarma Wrap", "type": "REGULAR", "id": "sample_item_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/offer/id2", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "8" } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Greek Salad", "type": "REGULAR", "id": "sample_item_offer_id_3", "offerId": "https://www.exampleprovider.com/menu/item/offer/id3", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Prawns Biryani", "type": "REGULAR", "id": "sample_item_offer_id_4", "offerId": "https://www.exampleprovider.com/menu/item/offer/id4", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "15", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "36", "nanos": 730000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] } }
SublineNote
Aşağıdaki tabloda SublineNote
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
note |
String | Zorunlu. |
Zaman damgası
Aşağıdaki biçimdeki tarih ve saat:
"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z"
.
TransactionDecisionValue
Order
değerini içerir.
Aşağıdaki tabloda TransactionDecisionValue
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
order |
Order |
Zorunlu. Ödeme ayrıntılarıyla birlikte sipariş verilecek. |
Aşağıdaki örnekte bir TransactionDecisionValue
öğesi gösterilmektedir:
Örnek
{ "order": { "finalOrder": { "cart": { "notes": "Guest prefers their food to be hot when it is delivered.", "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Cucina Venti" }, "lineItems": [ { "name": "Sizzling Prawns Dinner", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "16", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } }, "contact": { "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" } } }, "otherItems": [ { "name": "Service fee", "type": "FEE", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } } }, { "name": "Tax", "type": "TAX", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 370000000 } } }, { "name": "Tip", "type": "GRATUITY", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 590000000 } } } ], "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "23", "nanos": 710000000 } }, "id": "sample_final_order_id", "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ], "optinForRemarketing": true } }, "googleOrderId": "sample_google_order_id", "orderDate": "2017-07-17T12:00:00Z", "paymentInfo": { "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd" }, "paymentType": "PAYMENT_CARD" } } }
Sipariş Karşılama
AppRequest
Aşağıdaki tabloda AppRequest
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
isInSandbox |
Boole |
Sonraki işlemlerin korumalı alan ortamında yapılıp yapılmadığını belirtir. |
|
conversation |
Conversation |
||
inputs |
Liste<Input > |
Zorunlu. Alışveriş sepetini ödeme için beklenen bağımsız değişkenleri içerir. Tam olarak 1 öğe içermelidir. |
Aşağıdaki örnekte bir AppRequest
öğesi gösterilmektedir:
1. Örnek
{ "isInSandbox": true, "inputs": [ { "intent": "actions.foodordering.intent.CHECKOUT", "arguments": [ { "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.Cart", "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Cucina Venti" }, "lineItems": [ { "name": "Sizzling Prawns Dinner", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "16", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } } } ] } ] }
2. Örnek
{ "isInSandbox": true, "inputs": [ { "intent": "actions.intent.TRANSACTION_DECISION", "arguments": [ { "transactionDecisionValue": { "order": { "finalOrder": { "cart": { "notes": "Guest prefers their food to be hot when it is delivered.", "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Cucina Venti" }, "lineItems": [ { "name": "Sizzling Prawns Dinner", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "16", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } }, "contact": { "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" } } }, "otherItems": [ { "name": "Service fee", "type": "FEE", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } } }, { "name": "Tax", "type": "TAX", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 370000000 } } }, { "name": "Tip", "type": "GRATUITY", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 590000000 } } } ], "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "23", "nanos": 710000000 } }, "id": "sample_final_order_id", "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ], "optinForRemarketing": true } }, "googleOrderId": "sample_google_order_id", "orderDate": "2017-07-17T12:00:00Z", "paymentInfo": { "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd" }, "paymentType": "PAYMENT_CARD" } } } } ] } ] }
CheckoutRequestMessage
CheckoutRequestMessage
, bir AppRequest
actions.foodordering.intent.CHECKOUT
amacıyla.
SubmitOrderRequestMessage
SubmitOrderRequestMessage
, bir AppRequest
actions.foodordering.intent.TRANSACTION_DECISION
amacıyla.
Konuşma
Conversation
yalnızca bir oturuma özeldir. Birden fazla hesabı birbirine bağlamak için
Gerekirse Checkout
ve SubmitOrder
İşlemleri birlikte yapın.
Aşağıdaki tabloda Conversation
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
conversationId |
String | Zorunlu. Görüşmenin benzersiz kimliği. |
Aşağıdaki örnekte bir Conversation
öğesi gösterilmektedir:
Örnek
{ "conversationId": "CQnJ7Z4i7UmvEZ9ph3AxyZRJ" }
Giriş
Alışveriş sepetini ödeme için beklenen bağımsız değişkenler.
Aşağıdaki tabloda Input
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
intent |
Enum [
"actions.foodordering.intent.CHECKOUT",
"actions.intent.TRANSACTION_DECISION"
] |
Zorunlu. "actions.foodordering.intent.checkOUT" olarak ayarlayın ödeme isteği mesajı VEYA "actions.intent.TRANSACTION_DECISION" için sipariş isteği mesajı göndermek için. |
|
arguments |
Liste<Argument > |
Zorunlu. Ödemesi yapılacak alışveriş sepetini veya verilecek siparişi içerir Tam olarak 1 öğe içermelidir. |
Argüman
Kullanıcının göz atmak istediği gıda öğeleriyle ilgili ayrıntıları içerir. Ödeme için yalnızca uzatma geçerlidir. Sipariş gönderme için yalnızca transactionDecisionValue geçerlidir
Aşağıdaki tabloda Argument
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
Aşağıdaki tesis gruplarından tam olarak biri gereklidir. | |||
extension |
1. Grup | Cart |
Kullanıcının ödeme yapmak istediği gıda öğeleriyle ilgili ayrıntılar. |
transactionDecisionValue |
2. Grup | TransactionDecisionValue |
Verilecek siparişi ve ödeme ayrıntılarını içerir. |
Sipariş Karşılama Yanıtı
AppResponse
Aşağıdaki tabloda AppResponse
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
expectUserResponse |
Devam |
False (yanlış) değerine ayarlayın. Değer: |
|
finalResponse |
FinalResponse |
Zorunlu. Alışveriş sepeti ödeme işlemine verdiğiniz yanıtı içerir. |
Aşağıdaki örnekte bir AppResponse
öğesi gösterilmektedir:
1. Örnek
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "checkoutResponse": { "proposedOrder": { "id": "sample_proposed_order_id_1", "otherItems": [ { "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }, { "name": "Delivery fee", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 500000000 } }, "type": "TAX" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }, { "name": "Chicken Shwarma Wrap", "type": "REGULAR", "id": "sample_item_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/offer/id2", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "8" } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Greek Salad", "type": "REGULAR", "id": "sample_item_offer_id_3", "offerId": "https://www.exampleprovider.com/menu/item/offer/id3", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Prawns Biryani", "type": "REGULAR", "id": "sample_item_offer_id_4", "offerId": "https://www.exampleprovider.com/menu/item/offer/id4", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "15", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "36", "nanos": 730000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] } }, "paymentOptions": { "googleProvidedOptions": { "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\": false }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" } }, "additionalPaymentOptions": [ { "actionProvidedOptions": { "paymentType": "ON_FULFILLMENT", "displayName": "Cash on delivery." } } ] } } } ] } } }
2. Örnek
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "orderUpdate": { "actionOrderId": "sample_action_order_id", "orderState": { "state": "CONFIRMED", "label": "Provider confirmed" }, "receipt": { "userVisibleOrderId": "userVisibleId1234" }, "updateTime": "2017-07-17T12:00:00Z", "orderManagementActions": [ { "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }, { "type": "CUSTOMER_SERVICE", "button": { "title": "Call customer service", "openUrlAction": { "url": "tel:+18005554679" } } }, { "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }, { "type": "CALL_RESTAURANT", "button": { "title": "Call restaurant", "openUrlAction": { "url": "tel:+16505554679" } } } ], "infoExtension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" } } } } ] } } }
3. Örnek
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "error": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodErrorExtension", "foodOrderErrors": [ { "error": "CLOSED", "description": "The restaurant is closed." } ] } } } ] } } }
4. Örnek
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "checkoutResponse": { "proposedOrder": { "otherItems": [ { "name": "Delivery Fees", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 370000000 } }, "type": "TAX" }, { "name": "Promotion", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": 0 } }, "id": "OWG_ACTIVE_CODE", "type": "DISCOUNT" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "promotions": [ { "coupon": "OWG_ACTIVE_CODE" } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "14", "nanos": 860000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2018-04-10T01:20:08.471Z" } ] } }, "paymentOptions": { "googleProvidedOptions": { "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:publishableKey": "pk_live_stripe_client_key", "stripe:version": "2017-04-06" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "VISA", "JCB" ], "prepaidCardDisallowed": true, "billingAddressRequired": true } } } } } ] } } }
CheckoutResponseMessage
CheckoutResponseMessage
, AppResponse
ve
checkoutResponse
veya error
StructuredResponse
.
SubmitOrderResponseMessage
SubmitOrderResponseMessage
, AppResponse
ve
StructuredResponse
içinde orderUpdate
.
FinalResponse
Alışveriş sepetinde ödeme işlemine verdiğiniz yanıt veyaSubmit OrderRequestMessage.
Aşağıdaki tabloda FinalResponse
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
richResponse |
RichResponse |
Zorunlu. CheckoutRequestMessage veyaSubmitOrdersRequestMessage için verdiğiniz yanıtı içerir. |
CheckoutResponse
Aşağıdaki tabloda CheckoutResponse
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
proposedOrder |
ProposedOrder |
Zorunlu. İşlem için kullanılması önerilen sipariş. |
|
paymentOptions |
PaymentOptions |
Zorunlu. Kullanıcı için varsayılan ödeme seçeneği belirlendi. |
|
additionalPaymentOptions |
Liste<PaymentOptions > |
Kullanıcıya sunulan alternatif ödeme seçenekleri. |
Aşağıdaki örnekte bir CheckoutResponse
öğesi gösterilmektedir:
Örnek
{ "proposedOrder": { "id": "sample_proposed_order_id_1", "otherItems": [ { "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }, { "name": "Delivery fee", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 500000000 } }, "type": "TAX" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/offer/id1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "subLines": [ { "note": "Notes for this item." } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension", "options": [ { "id": "sample_addon_offer_id_1", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "name": "Honey Mustard", "price": { "currencyCode": "USD" }, "quantity": 1 }, { "id": "sample_addon_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id2", "name": "BBQ Sauce", "price": { "currencyCode": "USD", "nanos": 500000000 }, "quantity": 1 } ] } }, { "name": "Chicken Shwarma Wrap", "type": "REGULAR", "id": "sample_item_offer_id_2", "offerId": "https://www.exampleprovider.com/menu/item/offer/id2", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "8" } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Greek Salad", "type": "REGULAR", "id": "sample_item_offer_id_3", "offerId": "https://www.exampleprovider.com/menu/item/offer/id3", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "9", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } }, { "name": "Prawns Biryani", "type": "REGULAR", "id": "sample_item_offer_id_4", "offerId": "https://www.exampleprovider.com/menu/item/offer/id4", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "15", "nanos": 990000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P90M" } } }, "location": { "coordinates": { "latitude": 37.788783, "longitude": -122.41384 }, "formattedAddress": "1350 CHARLESTON ROAD, MOUNTAIN VIEW, CA, United States", "zipCode": "94043", "city": "Mountain View", "postalAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }, "notes": "Gate code is #111" } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "36", "nanos": 730000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] } }, "paymentOptions": { "googleProvidedOptions": { "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\": false }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" } }, "additionalPaymentOptions": [ { "actionProvidedOptions": { "paymentType": "ON_FULFILLMENT", "displayName": "Cash on delivery." } } ] }
Öğe
Alışveriş sepeti ödeme işlemine verdiğiniz yanıtı veya Send OrderRequestMessage yanıtını içerir.
Aşağıdaki tabloda Item
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
structuredResponse |
StructuredResponse |
Zorunlu. |
RichResponse
Alışveriş sepeti ödemesine verdiğiniz yanıtı içerir.
Aşağıdaki tabloda RichResponse
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
items |
Liste<Item > |
Zorunlu. Tam olarak 1 öğe içermelidir. |
StructuredResponse
CheckoutResponseMessage için bu aşağıdakilerden biri olabilir: CheckoutResponse Başarılı bir ödeme olduğunu belirtir. VEYA FoodErrorExtension: Ödeme sırasında bir hata olduğunu gösterir. Yanıt, düzeltilmiş bir Proposed Order ve PaymentOptions veya PaymentOptions bulunmayan bir hata mesajı içerebilir. Send OrderResponseMessage için yalnızca orderUpdate geçerlidir.
Aşağıdaki tabloda StructuredResponse
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
Aşağıdaki tesis gruplarından tam olarak biri gereklidir. | |||
checkoutResponse |
1. Grup | CheckoutResponse |
Ödemesi yapılmış ürünler, vergiler ve indirimler. |
error |
2. Grup | FoodErrorExtension |
Alışveriş sepeti öğelerinde gözlemlenen hatalar. Hatanın yapısına bağlı olarak bu mülk, düzeltilmiş bir Proposed Order ve PaymentOptions veya PaymentOptions içermeyen bir hata mesajı içerebilir. |
orderUpdate |
3. Grup | OrderUpdate |
Eşzamansız sipariş güncellemeleri
Bu bölümde, istekleri oluşturan üst düzey türler ve tipik yemek siparişi verme yerleşik eylem etkileşiminin yanıtları.AsyncOrderUpdateRequestMessage
Sipariş gönderildikten ve onaylandıktan sonra kullanıcıyı değişiklikler konusunda bilgilendirir. Örneğin, kullanıcıya siparişin nakliye sürecinde olduğunu veya fiyatı değişti. Daha fazla bilgi edinmek için şu sayfaya bakın:Aşağıdaki tabloda AsyncOrderUpdateRequestMessage
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
isInSandbox |
Boole |
Bu güncellemenin gönderildiği siparişin korumalı alan ödemesi olduğunu belirtir. |
|
customPushMessage |
CustomPushMessage |
Zorunlu. İstekle ilgili OrderUpdate'i içerir. |
Aşağıdaki örnekte bir AsyncOrderUpdateRequestMessage
öğesi gösterilmektedir:
Örnek
{ "isInSandbox": true, "customPushMessage": { "orderUpdate": { "actionOrderId": "sample_action_order_id", "orderState": { "state": "IN_TRANSIT", "label": "Order is on the way" }, "inTransitInfo": { "updatedTime": "2017-07-17T12:00:00Z" }, "updateTime": "2017-07-17T12:00:00Z", "receipt": { "userVisibleOrderId": "userVisibleId1234" }, "orderManagementActions": [ { "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }, { "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }, { "type": "CALL_RESTAURANT", "button": { "title": "Call restaurant", "openUrlAction": { "url": "tel:+16505554679" } } } ], "infoExtension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" } } } }
AsyncOrderUpdateResponseMessage
AsyncOrderUpdateRequestMessage
başarıyla gönderildikten sonra Google yanıt verir
bir HTTP 200 durumuna ve boş bir gövdeye sahip olmalıdır. Güncelleme başarısız olduysa
Google, sipariş güncellemesinin neden başarısız olduğuyla ilgili ayrıntılarla yanıt verir.
Sipariş güncelleme türleri
Düğme
Kullanıcı etkileşimi sağlamak için ekleyebileceğiniz bir kullanıcı arayüzü öğesini tanımlar.
Aşağıdaki tabloda Button
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
title |
String | Zorunlu. Görüntü etiketi. Oluşturma işleminin düzgün çalışması için cümle düzeninde en fazla 30 karakter kullanın. Örnek: |
|
openUrlAction |
OpenUrlAction |
Zorunlu. |
Aşağıdaki örnekte bir Button
öğesi gösterilmektedir:
Örnek
{ "title": "Send us feedback", "openUrlAction": { "url": "mailto:person@example.com" } }
CancellationInfo
Aşağıdaki tabloda CancellationInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
reason |
String | Zorunlu. OrderState.state "CANCELLED" olduğunda, reddin görüntülenebilir metin nedeni. Örnek: |
Aşağıdaki örnekte bir CancellationInfo
öğesi gösterilmektedir:
Örnek
{ "reason": "Insufficient inventory" }
FoodOrderUpdateExtension
Bu tür, kullanıcıya siparişin ne zaman tamamlanacağına dair tahmini bir aralık sağlar
teslim edilmiş veya teslim alınmaya hazır
olacaktır. Bu uzantıyı
OrderUpdate
bilgi olduğunda veya son gönderilmesinden bu yana değişmişse.
Kullanıcının sipariş karşılama aralığı için ölçülü bir tahminde ve beklentilerin tutarlı bir şekilde karşılandığını gösterir. Örneğin, siparişin 24 saat içinde saat 13:00'te teslim edilecekse trafik koşullarına bağlı dalgalanmalarla tutarlı (ör. bugün saat 12:45'te) 13:15'e kadar.
ISO 8601 süresi veya zaman damgası,
updateTime
, OrderUpdate
(aslında "şimdi")
updateTime
ve duration
.
"Şimdi" olmadıkça bu biçimi kullanma aslında makul bir beklentidir.
ISO 8601 aralığı, başlangıcından bitiş noktasına kadarki aralık anlamına gelecek şekilde yorumlanır. izin verilir.
Aşağıdaki tabloda FoodOrderUpdateExtension
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
@type |
Devam |
Bu uzantının türü. Bu alan her zaman "type.googleapis.com/google.actions.v2.orders.FoodOrdersUpdateExtension" değerine ayarlanır. Değer: |
|
estimatedFulfillmentTimeIso8601 |
String |
Siparişin teslim edileceği veya teslim alınmaya hazır olacağı tahmini zaman. Dize ISO 8601 biçiminde olmalı ve tek bir sabit zaman yerine bir aralığa karşılık gelmelidir. Kabul edilebilir kurallar şunlardır: Aralıklar, Süreler ve Tarihler/Saatler. Bu alan, bilgiler kullanılabilir hale geldiğinde ya da erken veya gecikmeli teslimler gibi bir değişiklik olduğunda, Submit OrderResponseMessage ya da Async OrderUpdateRequestMessage üzerinden gönderilebilir. Örnek: |
|
foodOrderErrors |
Liste<FoodOrderError > |
Sipariş sonrası meydana gelen hataları açıklar. Alışveriş sepeti veya öğe başına bir hata kullanılması önerilir. reddedionInfo'da yer almayan tüm hatalar için Food OrderUpdateExtension.Food OrderErrors öğesini kullanın. En az 1 öğe içermelidir. |
Aşağıdaki örnekte bir FoodOrderUpdateExtension
öğesi gösterilmektedir:
1. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" }
2. Örnek
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "foodOrderErrors": [ { "error": "NO_CAPACITY", "description": "Sorry, the restaurant cannot take your order right now." } ] }
FulfillmentInfo
Aşağıdaki tabloda FulfillmentInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
Aşağıdaki tesis gruplarından tam olarak biri gereklidir. | |||
deliveryTime |
1. Grup | ISO Zaman Damgası |
Food OrderingUpdateExtension mesajında estimatedFulfillmentTimeIso8601'i kullanın |
pickupTime |
2. Grup | ISO Zaman Damgası |
Food OrderingUpdateExtension mesajında estimatedFulfillmentTimeIso8601'i kullanın |
Aşağıdaki örnekte bir FulfillmentInfo
öğesi gösterilmektedir:
1. Örnek
{ "deliveryTime": "2017-05-10T02:36:38.803Z" }
2. Örnek
{ "pickupTime": "2019-12-26T07:24:27.803Z" }
InTransitInfo
Aşağıdaki tabloda InTransitInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
updatedTime |
ISO Zaman Damgası |
Food OrderingUpdateExtension mesajında estimatedFulfillmentTimeIso8601'i kullanın |
Aşağıdaki örnekte bir InTransitInfo
öğesi gösterilmektedir:
Örnek
{ "updatedTime": "2017-05-10T02:36:38.803Z" }
LineItemUpdate
Aşağıdaki tabloda LineItemUpdate
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
orderState |
OrderState |
||
price |
Price |
||
reason |
String |
Değişikliğin nedeni. Fiyat değişiklikleri için gereklidir. |
Aşağıdaki örnekte bir LineItemUpdate
öğesi gösterilmektedir:
Örnek
{ "orderState": { "state": "CONFIRMED", "label": "Provider confirmed" }, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "5", "nanos": 500000000 } }, "reason": "Menu updated prices." }
OpenUrlAction
Aşağıdaki tabloda OpenUrlAction
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
url |
String | Zorunlu. Düğme tıklanarak veya dokunularak tetiklenen işlem. Geçerli ön eklerin listesi orderManagementActionType öğesine bağlıdır. "EMAIL": Önek "mailto" olmalıdır. "CALL": Önek "tel" olmalıdır. "CUSTOMER_SERVICE": Önek "mailto", "tel", "http" veya "https" olmalıdır. Örnek: |
OrderManagementAction
Sipariş yönetimi, kullanıcıların sipariş sonrası desteği alabilmelerini sağlar ve
gönderme siparişindeki her OrderUpdate
AppResponse
ve bunu izleyen her bir
AsyncOrderUpdateRequestMessage
Belirli bir sipariş için gönderilen sipariş yönetimi işlemleri
durumu.
Örneğin, "CREATED" durumu bilginiz varsa, CUSTOMER_SERVICE
müşteri destek telefonu. Ardından, "ONAYLANDI" eyalet, CUSTOMER_SERVICE
restorana geçebilmek için en iyi nokta haline gelirse
aktarmalısınız. Benzer bir şekilde, sipariş "FULFILLED" durumuna getirildiğinde eyalet,
CUSTOMER_SERVICE
, destek e-posta adreslerinize başvurabilir.
Aşağıdaki tabloda OrderManagementAction
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
type |
OrderManagementActionType |
Zorunlu. |
|
button |
Button |
Zorunlu. |
Aşağıdaki örnekte bir OrderManagementAction
öğesi gösterilmektedir:
1. Örnek
{ "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }
2. Örnek
{ "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }
OrderManagementActionType
OrderManagementAction
ile ilgili türleri tanımlar.
OrderManagementActionType
türü aşağıdaki olası değerlere sahiptir:
CUSTOMER_SERVICE
: Sipariş onayı sayfasında gösterilecek müşteri hizmetlerinin e-posta adresi ve/veya iletişim numarası. Bu zorunludur. openUrlAction.url öneki "mailto", "tel", "http" veya "https" olmalıdır.EMAIL
: Yalnızca sipariş ayrıntıları sayfasında e-posta işlemi openUrlAction.url öneki "mailto" olmalıdır.CALL_DRIVER
: Yalnızca sipariş ayrıntıları sayfasında arama işlemi yapılabilir. openUrlAction.url öneki "tel" olmalıdır.CALL_RESTAURANT
: Yalnızca sipariş ayrıntıları sayfasında arama işlemi yapılabilir. openUrlAction.url öneki "tel" olmalıdır.
OrderState
Siparişin mevcut durumu. OrderState
olan her state
değeri ayrıca
şu adresteki satın alma durumuna karşılık gelir:
myaccount.google.com adresinde oturum açın.
Aşağıdaki tabloda OrderState
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
state |
OrderStateEnum |
Zorunlu. |
|
label |
String | Zorunlu. Durum için kullanıcı tarafından görülebilen görüntüleme dizesi. Normal tümce düzeni kullanın. Örnek: |
Aşağıdaki örnekte bir OrderState
öğesi gösterilmektedir:
Örnek
{ "state": "CONFIRMED", "label": "Provider confirmed" }
OrderStateEnum
OrderState
ile ilgili türleri tanımlar.
OrderStateEnum
türü aşağıdaki olası değerlere sahiptir:
CREATED
: Sipariş, entegrasyon uzmanı tarafından oluşturuldu ve sağlayıcının onayını bekliyor. "Sipariş verildi"ye karşılık gelir satın alma durumu.CONFIRMED
: Sipariş, sağlayıcı tarafından onaylandı ve etkin. "Kabul edildi"ye karşılık gelir satın alma durumu.REJECTED
: Sipariş, entegrasyon uzmanı veya sağlayıcı tarafından reddedildi. "Reddedildi"ye karşılık gelir satın alma durumu.CANCELLED
: Kullanıcı, siparişi iptal etti. "İptal edildi" durumuna karşılık gelir satın alma durumu.IN_PREPARATION
: Yiyecek hazırlanıyor. "Durum bilinmiyor" durumuna karşılık gelir satın alma durumu.READY_FOR_PICKUP
: Yiyecekler teslim alınmaya hazır. "Teslim alma için hazır" durumuna karşılık gelir satın alma durumu.IN_TRANSIT
: Sipariş teslim ediliyor. "Devam ediyor" durumuna karşılık gelir satın alma durumu.FULFILLED
: Kullanıcı, siparişi aldı. "Teslim alındı" durumuna karşılık gelir satın alma durumu.
Fatura
Bu türü bir sipariş gönderAppResponse
,
Burada OrderState
değeri "CONFIRMED", "FULFILLED" veya "IN_TRANSIT" olur. Makbuzu şu adrese gönder:
userVisibleOrderId
öğesinin kullanıma sunulacağı zaman. Herhangi bir
daha sonraki güncellemelerde makbuzu gönderebilirsiniz.
Aşağıdaki tabloda Receipt
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
userVisibleOrderId |
String | Zorunlu. Sipariş "CONFIRMED", "IN_TRANSIT" veya "FULFILLED" ise gereklidir. Bu alan, söz konusu siparişle ilgili kullanıcılara yönelik tek kimliktir (genellikle restoranın sipariş kimliğidir) ve hem entegrasyon uzmanının makbuzunda hem de Google sipariş kartında gösterilir. Kullanıcı, sağlayıcı ve entegratör aracılığıyla müşteri hizmetleri siparişine referans vermek için bu kimliği kullanabilmelidir. Bu kimliği herhangi bir OrderUpdate'de yalnızca bir kez sağlamanız gerekir. İşlem sağlanana kadar action OrderId değeri, uservisible OrderId olacaktır. Örneğin, sipariş restoran tarafından onaylanana kadar kullanıcı görünür sipariş kimliğiniz olmayabilir. Onaylandıktan sonra, OrderUpdate ve Makbuz içeren bir Async OrderUpdateRequestMessage göndermeniz gerekir. |
Aşağıdaki örnekte bir Receipt
öğesi gösterilmektedir:
Örnek
{ "userVisibleOrderId": "userVisibleId1234" }
RejectionInfo
Aşağıdaki tabloda RejectionInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
type |
RejectionType |
Zorunlu. |
|
reason |
String |
Dahili günlük kaydı için kullanılan ret nedeni. Bu alan kullanıcılar tarafından görülemez. |
Aşağıdaki örnekte bir RejectionInfo
öğesi gösterilmektedir:
Örnek
{ "type": "PAYMENT_DECLINED", "reason": "There is an issue with payment processing." }
RejectionType
RejectionType
türü aşağıdaki olası değerlere sahiptir:
INELIGIBLE
: Kullanıcı, politikayla veya riskle ilgili endişeler nedeniyle uygun değil.PAYMENT_DECLINED
: Ödemenin işlenmesiyle ilgili bir sorun var.UNAVAILABLE_SLOT
: Sipariş, DeliveryInfo veya PickupInfo tarafından belirtilen zamanında yerine getirilemiyor.PROMO_NOT_APPLICABLE
: Promosyonla ilgili bir sorun var.UNKNOWN
: Başka bir neden.
Ödemeyle ilgili türler
Bu bölümde, yemek siparişi için kullanılan ödemeyle ilgili türler açıklanmaktadır. istek karşılamayı da kapsar.ActionProvidedPaymentOptions
İşlem tarafından sağlanan ödeme yöntemiyle ilgili şartlar.
Aşağıdaki tabloda ActionProvidedPaymentOptions
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
paymentType |
PaymentType |
Zorunlu. |
|
displayName |
String | Zorunlu. Makbuzda gösterilen ödeme aracının adı. Örnek: |
|
onFulfillmentPaymentData |
OnFulfillmentPaymentData |
"ON_FULFILLMENT" ödeme türü için ek veriler. Örneğin, sipariş karşılamada nakit mi yoksa kartın mı desteklendiğini belirtmek için bu alanı kullanabilirsiniz. |
Aşağıdaki örnekte bir ActionProvidedPaymentOptions
öğesi gösterilmektedir:
Örnek
{ "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } }
AllowedAuthMethods
AllowedAuthMethods
türü aşağıdaki olası değerlere sahiptir:
PAN_ONLY
: Kullanıcının Google Hesabında kayıtlı olan ödeme kartlarıyla ilişkili kimlik doğrulama yöntemi. Döndürülen ödeme verileri, son kullanma ayı ve son kullanma tarihiyle birlikte kişisel hesap numarasını (PAN) içerir.
AllowedCardNetworks
AllowedCardNetworks
türü aşağıdaki olası değerlere sahiptir:
AMEX
DISCOVER
INTERAC
JCB
MASTERCARD
VISA
BillingAddressParameters
Bu nesne, istenen bir fatura adresi için döndürülecek ek alanlar ayarlamanıza olanak tanır.
Aşağıdaki tabloda BillingAddressParameters
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
format |
String |
İşlemi tamamlamak için fatura adresi biçimi gereklidir. MIN: Ad, ülke kodu ve posta kodu. TAM: Ad, açık adres, şehir, bölge, ülke kodu ve posta kodu. |
Aşağıdaki örnekte bir BillingAddressParameters
öğesi gösterilmektedir:
1. Örnek
{ "format": "MIN" }
2. Örnek
{ "format": "FULL" }
CardParameters
Sitenizin Google Pay API'sine yönelik desteğini yapılandırmak için bu nesneyi kullanın.
Aşağıdaki tabloda CardParameters
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
allowedAuthMethods |
Liste<Const> | Zorunlu. Kart işleminin kimliğini doğrulamak için desteklenen alanlar. En az 1 öğe içermelidir. |
|
allowedCardNetworks |
Liste<AllowedCardNetworks > |
Zorunlu. Desteklediğiniz ve Google Pay API tarafından da desteklenen bir veya daha fazla kart ağı. En az 1 öğe içermelidir. |
|
billingAddressRequired |
Boole |
Fatura adresi gerekliyse doğru değerine ayarlanır. Yalnızca işlemin yapılması için gerekliyse fatura adresi isteyin. Ek veri istekleri, ödeme sürecindeki sorunları artırabilir ve dönüşüm oranlarının düşmesine neden olabilir. |
|
billingAddressParameters |
BillingAddressParameters |
billingAddressZorunlu değeri doğru değerine ayarlanırsa beklenen alanlar döndürülür. |
|
cvcRequired |
Boole |
TimesofMoney kullanılıyorsa diğer tüm ödeme işleyiciler için false (yanlış) değerine ayarlanır. |
Aşağıdaki örnekte bir CardParameters
öğesi gösterilmektedir:
1. Örnek
{ "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "AMEX", "DISCOVER" ], "billingAddressRequired": false, "cvcRequired": false }
2. Örnek
{ "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "AMEX", "DISCOVER" ], "billingAddressRequired": true, "billingAddressParameters": { "format": "MIN" }, "cvcRequired": false }
GoogleProvidedPaymentInstrument
Aşağıdaki tabloda GoogleProvidedPaymentInstrument
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
instrumentToken |
String | Zorunlu. Daha önce belirtilen GoogleProvidedPaymentOptions uyarınca, kullanıcıdan katılımcı bir Google Pay işlemcisinden ödeme alınmasına yönelik ödeme jetonunu içeren 64 kodlu dize. |
|
billingAddress |
PostalAddress |
Ödemeye ilişkin fatura adresi. |
Aşağıdaki örnekte bir GoogleProvidedPaymentInstrument
öğesi gösterilmektedir:
Örnek
{ "instrumentToken": "abcd", "billingAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] } }
GoogleProvidedPaymentOptions
Google tarafından sağlanan ödeme yöntemiyle ilgili şartlar.
Aşağıdaki tabloda GoogleProvidedPaymentOptions
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
facilitationSpecification |
String |
Dize olarak bir PaymentDataRequest JSON dosyası. Sitenizin Google Pay API'sine yönelik desteğini yapılandırmak için bu nesneyi kullanın. |
|
supportedCardNetworks |
Liste<SupportedCardNetworks > |
Bunun yerine facilitationSpecification kullanın. Temsilci tarafından desteklenen kart ağlarının türü. Bu alan kullanımdan kaldırılmıştır. |
|
prepaidCardDisallowed |
Boole |
Bunun yerine facilitationSpecification kullanın. Ödeme türü olarak ön ödemeli karta izin verilip verilmediği. Bu alan kullanımdan kaldırılmıştır. |
|
billingAddressRequired |
Boole |
Bunun yerine facilitationSpecification kullanın. Fatura adresinin gerekli olup olmadığı. Bu alan kullanımdan kaldırılmıştır. |
|
tokenizationParameters |
TokenizationParameters |
Bu alan kullanımdan kaldırılmıştır. |
Aşağıdaki örnekte bir GoogleProvidedPaymentOptions
öğesi gösterilmektedir:
1. Örnek
{ "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\": false }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" }
2. Örnek
{ "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "braintree", "braintree:apiVersion": "v1", "braintree:sdkVersion": "1.4.0", "braintree:merchantId": "a1b2c3d4e5", "braintree:clientKey": "production_braintree_client_key", "braintree:authorizationFingerprint": "same_as_client_key" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "JCB", "VISA" ], "prepaidCardDisallowed": true }
3. Örnek
{ "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:publishableKey": "pk_live_stripe_client_key", "stripe:version": "2017-04-06" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "VISA", "JCB" ], "prepaidCardDisallowed": true, "billingAddressRequired": true }
MerchantInfo
Sitenizin Google Pay API'sine yönelik desteğini yapılandırmak için bu nesneyi kullanın.
Aşağıdaki tabloda MerchantInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
merchantId |
String |
Google Pay tarafından size verilen Google satıcı kimliği. |
|
merchantName |
String | Zorunlu. UTF-8 olarak kodlanmış satıcı adı. Satıcı adı, ödeme sayfasında oluşturulur. |
OnFulfillmentPaymentData
"ON_FULFILLMENT" Ödeme Türü için ek veri göndermek amacıyla bu nesneyi kullanın.
Aşağıdaki tabloda OnFulfillmentPaymentData
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
supportedPaymentOptions |
Liste<PaymentOptionsEnums > |
Sipariş karşılama sırasında kullanıcının kullanabildiği ödeme seçeneklerinin listesi. |
Aşağıdaki örnekte bir OnFulfillmentPaymentData
öğesi gösterilmektedir:
Örnek
{ "supportedPaymentOptions": [ "Cash", "Card" ] }
Parametreler
TokenizationParameters
ile ilgili türleri tanımlar.
Aşağıdaki tabloda Parameters
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
gateway |
String | Zorunlu. Örnek: |
|
gatewayMerchantId |
String | ||
[additionalKey: string] |
String | Ek anahtar/değer çiftleri |
Aşağıdaki örnekte bir Parameters
öğesi gösterilmektedir:
1. Örnek
{ "gatewayMerchantId": "90412491", "gateway": "olo" }
2. Örnek
{ "gateway": "braintree", "braintree:apiVersion": "v1", "braintree:sdkVersion": "1.4.0", "braintree:merchantId": "YOUR_MERCHANT_ID", "braintree:clientKey": "YOUR_BRAINTREE_SANDVOX_OR_PRODUCTION_KEY" }
PaymentDataRequest
Sitenizin Google Pay API'sine yönelik desteğini yapılandırmak için bu nesneyi kullanın.
Aşağıdaki tabloda PaymentDataRequest
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
apiVersion |
Devam | Zorunlu. Ana API sürümü. Değer: |
|
apiVersionMinor |
Devam | Zorunlu. Alt API sürümü. Değer: |
|
merchantInfo |
MerchantInfo |
Zorunlu. (Google Pay satıcı kimliği) Ödeme verilerini isteyen satıcıyla ilgili bilgiler. |
|
allowedPaymentMethods |
Liste<PaymentMethod > |
Zorunlu. Google Pay API tarafından desteklenen bir veya daha fazla ödeme yöntemi için desteği belirtir. |
|
transactionInfo |
TransactionInfo |
Zorunlu. Kullanıcının işlemi kabul edip etmediğine bağlı olarak işlemin yetkilendirilmesiyle ilgili ayrıntılar. Bu alanda toplam fiyat ve fiyat durumu bulunur. |
Aşağıdaki örnekte bir PaymentDataRequest
öğesi gösterilmektedir:
Örnek
{ "apiVersion": 2, "apiVersionMinor": 0, "merchantInfo": { "merchantId": "10391231", "merchantName": "Burrito Town" }, "allowedPaymentMethods": [ { "type": "CARD", "parameters": { "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "VISA", "AMEX", "MASTERCARD" ], "billingAddressRequired": true, "billingAddressParameters": { "format": "FULL" }, "cvcRequired": false }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:version": "2019-05-16", "stripe:publishableKey": "pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA" } } } ], "transactionInfo": { "currencyCode": "INR", "totalPriceStatus": "ESTIMATED", "totalPrice": "185.00" } }
PaymentInfo
Siparişe ilişkin ödemeyle ilgili bilgiler.
Aşağıdaki tabloda PaymentInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
displayName |
String | Zorunlu. Makbuzda gösterilecek ödeme aracının kullanıcı tarafından görülebilen adı. |
|
paymentType |
PaymentType |
Zorunlu. |
|
googleProvidedPaymentInstrument |
GoogleProvidedPaymentInstrument |
İşlem tarafından kullanılabilecek jeton. Bunu yalnızca, CheckoutResponseMessage'da bir ödeme seçeneği olarak GoogleProvidedPaymentOptions'ı belirttiyseniz belirtin. |
Aşağıdaki örnekte bir PaymentInfo
öğesi gösterilmektedir:
1. Örnek
{ "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd" }, "paymentType": "PAYMENT_CARD" }
2. Örnek
{ "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd", "billingAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "123 Random Street", "Unit ABC" ], "recipients": [ "sample_receipient" ] } }, "paymentType": "PAYMENT_CARD" }
PaymentMethod
Sitenizin Google Pay API'sine yönelik desteğini yapılandırmak için bu nesneyi kullanın.
Aşağıdaki tabloda PaymentMethod
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
type |
Devam | Zorunlu. Desteklenen ödeme yönteminin kısa tanımlayıcısı. Şu anda yalnızca CARD desteklenmektedir. Değer: |
|
parameters |
CardParameters |
Zorunlu. Sağlanan ödeme yöntemi türünü yapılandırmak için gerekli parametreler. |
|
tokenizationSpecification |
TokenizationSpecification |
Zorunlu. Ödeme bilgilerini almak için bir hesabı veya şifre çözme sağlayıcıyı yapılandırın. Bu mülk, CARD ödeme yöntemi için zorunludur. |
Aşağıdaki örnekte bir PaymentMethod
öğesi gösterilmektedir:
Örnek
{ "type": "CARD", "parameters": { "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "VISA", "AMEX", "MASTERCARD" ], "billingAddressRequired": false }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gatewayMerchantId": "90412491", "gateway": "olo" } } }
PaymentOptions
Aşağıdaki tabloda PaymentOptions
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
Aşağıdaki tesis gruplarından tam olarak biri gereklidir. | |||
googleProvidedOptions |
1. Grup | GoogleProvidedPaymentOptions |
actionProvidedOptions ile karşılıklı dışlayıcı. Bu kartı gPay ile online ödemelerde kullanabilirsiniz. |
actionProvidedOptions |
2. Grup | ActionProvidedPaymentOptions |
googleProvidedOptions ile birlikte özelleştirilebilir. Bunu "teslimde nakit ödeme" için kullanın veya "sipariş karşılama sırasında ödeme" gibi. |
Aşağıdaki örnekte bir PaymentOptions
öğesi gösterilmektedir:
1. Örnek
{ "googleProvidedOptions": { "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\": false }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" } }
2. Örnek
{ "googleProvidedOptions": { "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\":true, \"billingAddressParameters\": { \"format\":\"MIN\" } }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" } }
3. Örnek
{ "actionProvidedOptions": { "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } } }
PaymentOptionsEnums
PaymentOptionsEnums
türü aşağıdaki olası değerlere sahiptir:
Cash
Card
UPI
Paytm
PaymentType
PaymentType
türü aşağıdaki olası değerlere sahiptir:
PAYMENT_CARD
: GoogleProvidedPaymentOptions için.ON_FULFILLMENT
: ActionProvidedPaymentOptions için.
SupportedCardNetworks
GoogleProvidedPaymentOptions
ile ilgili türleri tanımlar.
SupportedCardNetworks
türü aşağıdaki olası değerlere sahiptir:
UNSPECIFIED_CARD_NETWORK
AMEX
DISCOVER
JCB
MASTERCARD
VISA
TokenizationParameters
GoogleProvidedPaymentOptions
ile ilgili türleri tanımlar.
Aşağıdaki tabloda TokenizationParameters
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
tokenizationType |
Enum [
"UNSPECIFIED_TOKENIZATION_TYPE",
"PAYMENT_GATEWAY"
] |
Zorunlu. Bunun yerine facilitationSpecification kullanın. Kabul edilen jeton türü. |
|
parameters |
Parameters |
Bunun yerine facilitationSpecification kullanın. |
TokenizationSpecification
Bu nesne, bir hesabı ücretli ödeme bilgilerini alacak şekilde yapılandırmanıza olanak tanır.
Aşağıdaki tabloda TokenizationSpecification
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
type |
Devam | Zorunlu. |
|
parameters |
Parameters |
Zorunlu. |
Aşağıdaki örnekte bir TokenizationSpecification
öğesi gösterilmektedir:
1. Örnek
{ "type": "PAYMENT_GATEWAY", "parameters": { "gatewayMerchantId": "1247192", "gateway": "cybersource" } }
2. Örnek
{ "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:version": "2018-10-31", "stripe:publishableKey": "12378127" } }
TransactionInfo
Bu nesne, ödeyenin ödeme yapabilmesini belirleyen bir işlemi tanımlar. Ödeme yetkilendirmesi iletişim kutusunu göstermek için kullanılır.
Aşağıdaki tabloda TransactionInfo
türü için özellikler listelenmektedir:
Özellik | Tür | Açıklama | |
---|---|---|---|
currencyCode |
String | Zorunlu. ISO 4217 alfabetik para birimi kodu. |
|
transactionId |
String |
Bir işlem denemesini tanımlayan benzersiz kimlik. Satıcılar, Google Pay işlem denemeleri için mevcut bir kimliği kullanabilir veya belirli bir kimlik oluşturabilir. Google Transaction Events API'sine geri çağırmalar gönderdiğinizde bu alan gereklidir. |
|
totalPriceStatus |
Devam | Zorunlu. "TAHMİNİ" kullanın seçeneğini belirleyin. Toplam fiyat, yanıtın ayrıntılarına (ör. fatura adresine göre alınan satış vergisi) göre değişebilir. Değer: |
|
totalPrice |
String | Zorunlu. İşlemin, isteğe bağlı iki ondalık basamak kesinliğiyle hesaplanan toplam parasal değeri. Bu alan, cart.totalPrice ile aynı değere sahip olmalıdır. |
Aşağıdaki örnekte bir TransactionInfo
öğesi gösterilmektedir:
Örnek
{ "totalPriceStatus": "ESTIMATED", "totalPrice": "12.34", "currencyCode": "USD" }