बेस टाइप
कार्ट
इसमें ऑर्डर की जानकारी होती है. साथ ही, यह भी बताया जाता है कि अनुरोध, पिक अप या डिलीवरी के लिए किया गया है या नहीं. कार्ट में डिलीवरी का ब्यौरा, मुफ़्त आइटम, और डिलीवरी का पता भी होता है.Cart
ऑब्जेक्ट, Checkout AppRequest
.f में तय होता है
आप अपने Checkout AppResponse
में कार्ट की एक कॉपी शामिल करते हैं
इस टेबल में, Cart
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट |
इस ऑब्जेक्ट का टाइप. अगर पैरंट कार्ट ऑब्जेक्ट प्रस्तावित ऑर्डर का हिस्सा है, तो इस फ़ील्ड को हटा दें. मान: |
|
id |
String |
कार्ट का वैकल्पिक आईडी. |
|
merchant |
Merchant |
इस कार्ट से जुड़ा व्यापारी. |
|
lineItems |
सूची<LineItem > |
ज़रूरी है. उन अच्छाइयों या सेवाओं की सूची जिन्हें उपयोगकर्ता ऑर्डर कर रहा है. 1 आइटम से कम नहीं होना चाहिए. |
|
promotions |
सूची<Promotion > |
इस कार्ट में लागू किया गया प्रमोशन. फ़िलहाल, सिर्फ़ एक प्रमोशन काम करता है. |
|
notes |
String |
ऑर्डर या डिलीवरी के निर्देशों के बारे में नोट. |
|
extension |
FoodCartExtension |
उपयोगकर्ता के बारे में जानकारी देता है, जैसे कि वाहन पूरा करने के लिए प्राथमिकताएं. |
इस उदाहरण में एक Cart
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "@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
{ "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" } } }
संपर्क
ऑर्डर पाने वाले व्यक्ति की जानकारी बताता है. यह सिर्फ़AppResponse
में उपलब्ध है.
इस टेबल में, Contact
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
displayName |
String |
ऑर्डर पाने वाले व्यक्ति का नाम, जैसा आप उसे दिखाना चाहते हैं. अगर firstName और उपनाम नहीं बताया गया है, तो इस फ़ील्ड का इस्तेमाल करें. उदाहरण: |
|
email |
String |
ऑर्डर पाने वाले व्यक्ति का ईमेल पता. उदाहरण: |
|
firstName |
String |
ऑर्डर पाने वाले व्यक्ति का नाम. उदाहरण: |
|
lastName |
String |
ऑर्डर पाने वाले व्यक्ति का उपनाम. उदाहरण: |
|
phoneNumber |
String |
ऑर्डर पाने वाले व्यक्ति का फ़ोन नंबर, जिसमें देश का कोड भी शामिल है. उदाहरण: |
|
emailVerified |
बूलियन |
इससे पता चलता है कि ऑर्डर पाने वाले व्यक्ति ने अपने Google खाते से लॉग इन किया है या नहीं. |
इस उदाहरण में एक Contact
एलिमेंट दिखाया गया है:
उदाहरण
{ "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" }
पसंद के मुताबिक मैसेज
इसमें अनुरोध के लिएOrderUpdate
शामिल होता है.
इस टेबल में, CustomPushMessage
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
orderUpdate |
OrderUpdate |
ज़रूरी है. ऑर्डर के लिए जानकारी अपडेट की गई. |
इस उदाहरण में एक 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", "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
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
deliveryTimeIso8601 |
String |
अनुमानित डिलीवरी समय, ISO 8601 समय स्टैंप फ़ॉर्मैट में:: "{year}-{month}-{day}T{hours}:{min}:{sec}[.{frac_sec}]Z" या अवधि फ़ॉर्मैट: "P(n)Y(n)M(n)DT(n)H(n)M". उदाहरण के लिए, PT90M अवधि 90 मिनट की है. डिफ़ॉल्ट वैल्यू ,"PT0M" से पता चलता है कि डिलीवरी का पसंदीदा समय जल्द से जल्द है. रेफ़रंस: https://en.wikipedia.org/wiki/ISO_8601#मिलाएं_तारीख_और_समय_प्रतिरूप. चेकआउट के रिस्पॉन्स के दौरान डिलीवरी का अनुमानित समय अपडेट करने के लिए इसका इस्तेमाल करें. उदाहरण: |
इस उदाहरण में एक DeliveryInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "deliveryTimeIso8601": "PT90M" }
खंडन
इस टेबल में, Disclaimer
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
predefinedMessage |
PredefinedMessage |
ज़रूरी है. चेकआउट के दौरान, पहले से तय किए गए डिसक्लेमर मैसेज दिखाने के लिए. |
|
feeAmount |
Money |
पार्टनर इस ऑर्डर के लिए व्यापारी से N रकम लेगा. |
|
feeAmountRange |
FeeAmountRange |
पार्टनर, रेस्टोरेंट से हर ऑर्डर पर N रकम से शुल्क लेगा. |
|
feePercent |
Number |
पार्टनर, इस ऑर्डर के लिए व्यापारी से N% शुल्क लेगा. |
|
feePercentRange |
FeePercentRange |
पार्टनर, व्यापारी से हर ऑर्डर पर N% से M% शुल्क लेगा. |
इस उदाहरण में एक Disclaimer
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "predefinedMessage": "NEW_YORK_DELIVERY_FEE_TIP_DISCLAIMER" }
उदाहरण 2
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE" }
तीसरा उदाहरण
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feePercent": 25 }
चौथा उदाहरण
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feePercentRange": { "minFeePercent": 20, "maxFeePercent": 30 } }
उदाहरण 5
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feeAmount": { "currencyCode": "AUD", "units": 2, "nanos": 500000000 } }
छठा उदाहरण
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feeAmountRange": { "minFeeAmount": { "currencyCode": "AUD", "units": 2, "nanos": 500000000 }, "maxFeeAmount": { "currencyCode": "AUD", "units": 10, "nanos": 0 } } }
गड़बड़ी
Error
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
CLOSED
: ऑर्डर करने के समय, कारोबार के लिए रेस्टोरेंट बंद है.NO_CAPACITY
: सेवा उपलब्ध नहीं है. उदाहरण के लिए, भीड़-भाड़ वाले समय की वजह से सेवा कुछ समय के लिए उपलब्ध नहीं होगी.NO_COURIER_AVAILABLE
: सीमित डिलीवरी स्टाफ़ की वजह से ऑर्डर प्रोसेस नहीं हो पा रहा.REQUIREMENTS_NOT_MET
: ऑर्डर स्वीकार करने की सीमाएं पूरी नहीं हुई हैं. उदाहरण के लिए, बास्केट का कम से कम साइज़.UNAVAILABLE_SLOT
: डिलीवरी की जानकारी, पिक अप की जानकारी या पिक अप की जानकारी में बताए गए समय से पहले नहीं की जा सकती.OUT_OF_SERVICE_AREA
: ऑर्डर, उपयोगकर्ता के पते पर डिलीवर नहीं किया जा सकता.PROMO_EXPIRED
: प्रमोशन की समयसीमा खत्म हो गई, इसलिए आवेदन नहीं किया जा सका.PROMO_NOT_APPLICABLE
: अगर प्रोमो कोड से जुड़ी दूसरी गड़बड़ियां नहीं होती हैं, तो प्रोमो कोड लागू नहीं कर पाने के सभी मामलों का पता लगाने के लिए, जेनरिक गड़बड़ी कोड.PROMO_NOT_RECOGNIZED
: कूपन कोड की पहचान नहीं की जा सकी.PROMO_ORDER_INELIGIBLE
: मौजूदा ऑर्डर पर यह कूपन इस्तेमाल नहीं किया जा सकता.PROMO_USER_INELIGIBLE
: मौजूदा उपयोगकर्ता इस कूपन के लिए ज़रूरी शर्तें पूरी नहीं करता.AVAILABILITY_CHANGED
: आइटम अब उपलब्ध नहीं है या अनुरोध को पूरा करने के लिए यहां कम आइटम हैं.INCORRECT_PRICE
: शुल्क या कुल कीमत में गड़बड़ियां.INVALID
: LineItem, FulfillmentOption या प्रमोशन में अमान्य डेटा शामिल है.NOT_FOUND
: LineItem, FulfillmentOption या प्रमोशन नहीं मिला.PRICE_CHANGED
: सामान की कीमत बदल गई है.
रेंज के लिए शुल्क
इस टेबल में, FeeAmountRange
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
minFeeAmount |
Money |
शुल्क के लिए तय की गई कम सीमा. |
|
maxFeeAmount |
Money |
शुल्क की ऊपरी सीमा.. |
फ़ीसी प्रतिशत
इस टेबल में, FeePercentRange
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
minFeePercent |
Number |
शुल्क के प्रतिशत की निचली सीमा. |
|
maxFeePercent |
Number |
शुल्क की ऊपरी सीमा. |
FoodCartExtensions
इसमें उपयोगकर्ता के बारे में जानकारी होती है, जैसे कि वाहन बेचने के तरीके से जुड़ी प्राथमिकताएं.
इस टेबल में, FoodCartExtension
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट |
इस एक्सटेंशन का टाइप. यह फ़ील्ड हमेशा "type.googleapis.com/google.actions.v2.orders.FoodCartExtension" पर सेट होता है. मान: |
|
contact |
Contact |
ऑर्डर पाने वाले व्यक्ति की संपर्क जानकारी. व्यक्ति के नाम, फ़ोन नंबर, और ईमेल पते से जुड़ी जानकारी शामिल होती है. |
|
fulfillmentPreference |
FulfillmentOption |
ज़रूरी है. उपयोगकर्ता की संतुष्टि प्राथमिकता. |
|
location |
Location |
CheckoutRequestMessage में, यह फ़ील्ड डिलीवरी पते के बारे में बताता है, जो ऑर्डर की डिलीवरी के लिए ज़रूरी है. टेकआउट या पिक अप के लिए किए गए ऑर्डर के लिए, यह फ़ील्ड मैसेज में शामिल नहीं होता. |
इस उदाहरण में एक FoodCartExtension
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "@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
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } }, "contact": { "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" } }
Foodगड़बड़ी एक्सटेंशन
अनुरोध को प्रोसेस करते समय एक या एक से ज़्यादा गड़बड़ियों की पहचान करता है. नीचे दी गई टेबल मेंFoodErrorExtension
टाइप के फ़ील्ड के बारे में बताया गया है.
गड़बड़ियों को CheckoutResponse
में भेजा जा सकता है.
इस टेबल में, FoodErrorExtension
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट | ज़रूरी है. इस एक्सटेंशन का टाइप. मान: |
|
foodOrderErrors |
सूची<FoodOrderError > |
ज़रूरी है. FoodOrdererror ऑब्जेक्ट की कैटगरी, जो गड़बड़ियों के बारे में बताते हैं. हर कार्ट या हर सामान के लिए, एक गड़बड़ी का सुझाव दिया जाता है. 1 आइटम से कम नहीं होना चाहिए. |
|
correctedProposedOrder |
ProposedOrder |
सुधारों के साथ एक नया प्रस्तावित आदेश. अगर मूल प्रस्तावित आदेश में पुनर्प्राप्त करने योग्य गड़बड़ियां हैं, तो इस ऑब्जेक्ट को वापस करें. उदाहरण के लिए, कार्ट में एक या ज़्यादा लाइन आइटम की कीमत में बदलाव होने पर उसे वापस पाया जा सकता है. मान्य किसी प्रस्तावित ऑर्डर के साथ वापस पाई जा सकने वाली गड़बड़ियों को पुष्टि की स्थिति पर अपग्रेड किया जाता है, न कि उपयोगकर्ता को अपने कार्ट की समीक्षा करने के लिए. |
|
paymentOptions |
PaymentOptions |
उपयोगकर्ता के लिए डिफ़ॉल्ट पेमेंट विकल्प चुने गए. |
|
additionalPaymentOptions |
सूची<PaymentOptions > |
उपयोगकर्ता के लिए पेमेंट के अन्य विकल्प उपलब्ध हैं. |
इस उदाहरण में एक FoodErrorExtension
एलिमेंट दिखाया गया है:
उदाहरण
{ "@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 } } }
FoodItemExtensions
फ़ूड आइटम के लिए ऐड-ऑन बताता है.
इस टेबल में, FoodItemExtension
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट | ज़रूरी है. इस एक्सटेंशन का टाइप. यह फ़ील्ड हमेशा "type.googleapis.com/google.actions.v2.orders.FoodItemExtensions" पर सेट होता है. मान: |
|
options |
सूची<FoodItemOption > |
किसी ऐड-ऑन आइटम या ऐड-ऑन ग्रुप वाले ऐड-ऑन ग्रुप को शामिल किया जा सकता है. |
इस उदाहरण में एक FoodItemExtension
एलिमेंट दिखाया गया है:
उदाहरण
{ "@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
इस टेबल में, FoodItemOption
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
id |
String |
Google ने यूनीक आईडी असाइन किया है. जब आप FoodOrderगड़बड़ी या AsyncOrderUpdateRequest भेजते हैं, तो इस फ़ील्ड का इस्तेमाल उन मामलों में अंतर करने के लिए करें जहां कार्ट में एक ही offerId से एक से ज़्यादा आइटम शामिल होते हैं. उदाहरण: |
|
offerId |
String |
आइटम का ऑफ़र आईडी. उदाहरण: |
|
name |
String |
विकल्प का नाम. उदाहरण: |
|
price |
Money |
||
note |
String |
विकल्प से जुड़ा नोट. |
|
quantity |
Number |
आइटम वाले विकल्पों के लिए, आइटम की संख्या. उदाहरण: |
|
subOptions |
सूची<FoodItemOption > |
विकल्प के लिए उप-विकल्प, अगर कोई हो. उदाहरण: |
इस उदाहरण में एक FoodItemOption
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "id": "10293231", "offerId": "1918491", "name": "Honey Mustard", "price": { "currencyCode": "USD", "units": "1", "nanos": 250000000 }, "quantity": 5 }
उदाहरण 2
{ "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 } ] }
खाने के ऑर्डर में गड़बड़ी
इसमेंCheckoutResponse
की गड़बड़ियों के बारे में जानकारी होती है.
इस टेबल में, FoodOrderError
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
error |
Error |
ज़रूरी है. |
|
id |
String |
आइटम-लेवल की गड़बड़ियों के लिए यह फ़ील्ड ज़रूरी है. यह मेन्यू आइटम के लिए Google की ओर से असाइन किया गया LineItem.id या ऐड-ऑन के लिए FoodItemOption.id है. |
|
description |
String |
गड़बड़ी के बारे में जानकारी. यह जानकारी अंदरूनी लॉगिन के लिए है. यह लोगों को नहीं दिखेगी. |
|
updatedPrice |
Money |
उस आइटम की नई कीमत जिसकी वजह से गड़बड़ी हुई. यह सिर्फ़ तब ज़रूरी होता है, जब गड़बड़ी "PRICE_CHANGED" है. |
|
availableQuantity |
Integer |
उस आइटम की नई उपलब्ध संख्या जिसकी वजह से गड़बड़ी हुई. यह सिर्फ़ तब ज़रूरी होता है, जब गड़बड़ी "noindex" या "NOT_UPDATED". वैल्यू को "अमान्य""NOT_found" के लिए शून्य होना चाहिए. |
इस उदाहरण में एक FoodOrderError
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "error": "CLOSED", "description": "This store is currently reachable. Please try again later." }
उदाहरण 2
{ "error": "PRICE_CHANGED", "id": "french_fries", "description": "The price has changed.", "updatedPrice": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }
Foodऑर्डर एक्सटेंशन
इसमें ऑर्डर को पूरा करने से जुड़ी जानकारी शामिल होती है.
इस टेबल में, FoodOrderExtension
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट |
इस एक्सटेंशन का टाइप. यह फ़ील्ड हमेशा "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension" पर सेट होता है. मान: |
|
availableFulfillmentOptions |
सूची<FulfillmentOption > |
ऑर्डर के लिए, ऑर्डर पूरा करने के लिए उपलब्ध विकल्प दिखाता है. |
|
optinForRemarketing |
बूलियन |
आपके मार्केटिंग चैनलों को ऑप्ट-इन करने के लिए उपयोगकर्ता का अनुरोध. डिफ़ॉल्ट रूप से, आप उपयोगकर्ता की सहमति के बिना मार्केटिंग कॉन्टेंट नहीं भेज सकते. अगर optimizeinForरीमार्केटिंग सही है, तो आप उपयोगकर्ता की सदस्यता ले सकते हैं. अगर ऑप्टइनफ़ाॅरेंस गलत है या मौजूद नहीं है, तो आपको अपने सिस्टम में सदस्यता की स्थिति को ज्यों का रखना चाहिए. उपयोगकर्ता सिर्फ़ Google के ज़रिए ऑप्ट आउट नहीं कर सकते. वे सिर्फ़ अपने मार्केटिंग चैनल में दिए गए सदस्यता रद्द करने के फ़ंक्शन के ज़रिए ऐसा कर सकते हैं. यह फ़्लैग सिर्फ़ SendOrderRequestMessage में मौजूद है. |
इस उदाहरण में एक FoodOrderExtension
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "delivery": { "deliveryTimeIso8601": "P0M" } }, "expiresAt": "2017-07-17T12:30:00Z" } ] }
उदाहरण 2
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2020-08-20T11:41:00Z" } ], "optinForRemarketing": true }
पूरा करने का विकल्प
FulfillmentOption
ऑब्जेक्ट का इस्तेमाल इन तरीकों से किया जा सकता है:
-
Checkout AppRequest
औरSubmit AppRequest
में,Cart.extension.fulfillmentPreference
: उपयोगकर्ता की पसंद (डिलीवरी या पिक अप) को सेव करता है. चेकआउट का अनुरोध भेजे जाने पर, कीमत हमेशा शून्य होती है. -
Checkout AppResponse
में,ProposedOrder.extension.availableFulfillmentOptions
: एक या इससे ज़्यादा डिलीवरी विकल्पों के बारे में बताता है. फ़िलहाल, इसमें सिर्फ़ एक विकल्प काम करता है. आपProposedOrder.otherItems
में डिफ़ॉल्ट विकल्प कोLineItem
के तौर पर बताते हैं.FulfillmentOption
केofferId
कोProposedOrder.otherItems
में बताए गएLineItem
के आईडी से मेल खाना चाहिए.
इस टेबल में, FulfillmentOption
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
offerId |
String |
प्रॉडक्ट भेजने के इस विकल्प के लिए, यूनीक आइडेंटिफ़ायर. अगर कोई है तो. |
|
fulfillmentInfo |
FulfillmentOptionInfo |
ज़रूरी है. |
|
expiresAt |
ISO टाइमस्टैंप |
खरीदारों को सामान भेजने का यह समय खत्म हो जाता है. |
|
price |
Money |
इस विकल्प की कीमत. |
इस उदाहरण में एक FulfillmentOption
एलिमेंट दिखाया गया है:
उदाहरण
{ "offerId": "offer5", "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2019-05-02T00:00:00-07:00", "price": { "currencyCode": "USD", "units": "5", "nanos": 230000000 } }
FulfillmentOptionInfo
यहFulfillmentInfo
से जुड़ी जानकारी देता है.
इस टेबल में, FulfillmentOptionInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
प्रॉपर्टी के इन ग्रुप में से किसी एक की ज़रूरत है. | |||
delivery |
समूह 1 | DeliveryInfo |
अगर मौजूद हो, तो डिलीवरी का ऑर्डर दिखाता है. |
pickup |
समूह 2 | PickupInfo |
अगर मौजूद है, तो पिक अप किए जाने वाले ऑर्डर के बारे में बताता है. |
इमेज
इस टेबल में, Image
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
sourceUrl |
String | ज़रूरी है. इमेज का यूआरएल. इमेज कम से कम 72x72 पिक्सल की होनी चाहिए. बेहतर नतीजों के लिए, कम से कम 216x216 पिक्सल की इमेज का इस्तेमाल करें. इमेज का साइज़ 6 एमबी और 64 मेगापिक्सल से कम होना चाहिए. |
लाइन आइटम
यह कार्ट के कॉन्टेंट औरCart.lineItems
(ProposedOrder.otherItems
) के लिए अलग से लगने वाले शुल्क के बारे में बताता है.
इस टेबल में, LineItem
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
id |
String |
कार्ट में LineItem (ProPOSedOrder.cart.lineItems[0].id) के लिए, यह यूनीक आईडी होता है, जिसे Google ऑर्डर बनाते समय बनाता है. प्रस्तावित ऑर्डर (ProPOSedOrder.otherItems[0].id) वाले लाइनआइटम के लिए इस्तेमाल किया जाता है, जिसका इस्तेमाल डिलीवरी शुल्क और टैक्स जैसे आइटम जोड़ने के लिए किया जाता है. आईडी की वैल्यू, सेवा देने वाली कंपनी तय करती है. उदाहरण के लिए, किसी कार्ट में अलग-अलग तैयारी के निर्देशों वाले दो आइटम होते हैं (जैसे अलग-अलग टॉपिंग के दो मीडियम पिज़्ज़ा). इस मामले में, दोनों आइटम का बेस ऑफ़र आईडी एक ही है. जब किसी सामान के अस्वीकार होने की जानकारी दी जाती है, तो इसे अपडेट करने वाला अनुरोध भेजने के बाद, इस आईडी का इस्तेमाल कार्रवाई करने वाले के तौर पर करें. दूसरे शब्दों में, अगर किसी पिज़्ज़ा की वजह से उसे अस्वीकार किया गया है, क्योंकि इसमें किसी खास टॉपिंग की जानकारी नहीं है, तो आईडी, Google को यह तय करने में मदद करता है कि आप किस ऑर्डर में ऑर्डर देना चाहते हैं. यह फ़ील्ड, दूसरे आइटम के अलावा ज़रूरी है. |
|
name |
String | ज़रूरी है. लाइन आइटम का नाम. यह ऐसी स्ट्रिंग है जिसे उपयोगकर्ता देख सकता है. साथ ही, जहां भी संभव हो वहां इस तरह का वाक्य रखें (जैसे कि "डिलीवरी शुल्क", "Servicecharge", "Tax"). उपयोगकर्ताओं के लिए इस फ़ील्ड में 100 वर्ण ही कम कर दिए जाएंगे. |
|
type |
LineItemType |
ज़रूरी है. |
|
quantity |
Integer |
शामिल किए गए आइटम की संख्या. प्रस्तावित ऑर्डर.अन्य आइटम पर लागू नहीं होता है. |
|
description |
String |
आइटम का ब्यौरा. |
|
price |
Price |
ज़रूरी है. आइटम या आइटम की कीमत. यह मान इस लाइन आइटम के लिए सभी सामान या सेवाओं की कुल कीमत दिखाता है (दूसरे शब्दों में, किसी ऐड-ऑन की लागत जोड़ें और संख्या से गुणा करें). उदाहरण के लिए: अगर 10 डॉलर के किसी सामान की संख्या 3 है, तो कीमत 30 डॉलर होगी. एक पिज़्ज़ा की मूल कीमत 5 डॉलर और ऐड-ऑन 1 डॉलर है, तो कीमत 6 डॉलर होगी. दो पिज़्ज़ा के लिए (संख्या = 2), जिनका मूल शुल्क 5 डॉलर और हर एक 1 डॉलर ऐड-ऑन के साथ, 12 डॉलर होगा. हर LineItem की कीमत होनी चाहिए, भले ही कीमत "0" हो. जब टाइप छूट होता है, तो वैल्यू को नेगेटिव के तौर पर तय करें (उदाहरण के लिए, "-2"). |
|
subLines |
सूची<SublineNote > |
वैकल्पिक और केवल तभी मान्य, जब प्रकार "REGULAR" है. चेकआउट फ़ील्ड और ऑर्डर सबमिट करने के अनुरोध में, इस फ़ील्ड में उपयोगकर्ता के सामान के बारे में खास जानकारी भेजी जा सकती है. पक्का करें कि दिए जाने पर व्यापारी या कंपनी को नोट मिल जाए. यह अनुरोध में सबलाइन[0].नोट के तौर पर होगा. अनुरोध में मौजूद होने पर इस फ़ील्ड में सिर्फ़ यही वैल्यू दी जाती है. 1 आइटम से ज़्यादा नहीं होना चाहिए. |
|
offerId |
String |
किसी सामान के लिए MenuItem का ऑफ़र आईडी. प्रस्तावित ऑर्डर.अन्य आइटम पर लागू नहीं होता है. |
|
extension |
FoodItemExtension |
फ़ूड आइटम के लिए ऐड-ऑन बताता है. |
इस उदाहरण में एक LineItem
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "name": "New customer discount", "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": -500000000 } }, "type": "DISCOUNT" }
उदाहरण 2
{ "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
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
REGULAR
: सामान का लाइन आइटम. Cart.lineItem पर लागू होता है.TAX
: टैक्स लाइन आइटम. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.DISCOUNT
: छूट वाला लाइन आइटम. ध्यान दें कि यह कीमत नेगेटिव होनी चाहिए. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.GRATUITY
: ग्रेजुएटी लाइन आइटम. उपयोगकर्ता की चुनी हुई सलाह के लिए आम तौर पर, ReserveOrderRequestMessage के लिए रिज़र्व किया जाता है. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.DELIVERY
: डिलीवरी लाइन आइटम. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.SUBTOTAL
: कुल लाइन आइटम. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.FEE
: अतिरिक्त लाइन आइटम दूसरे टाइप से कवर नहीं है. अवसर के तौर पर दिए गए Order.otherItem पर लागू होता है.
जगह की जानकारी
इस नीति से, खाने के ऑर्डर का पता पता चलता है.Location
प्रकार का इस्तेमाल
Cart
में किया जाता है, ताकि सिर्फ़ डिलीवरी वाले डेस्टिनेशन की मंज़िल दिखाई जा सके.
उपयोगकर्ता के ऑर्डर करने पर, उसकी पूरी जगह TransactionDecisionValue
में भी दिखती है. जो ऑर्डर पिक अप के बारे में बताते हैं उनमें जगह की जानकारी बिल्कुल भी शामिल नहीं की जाती है (खाली जगह के लिए भी नहीं).
इस टेबल में, Location
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
coordinates |
Coordinates |
||
formattedAddress |
String |
जगह का पता दिखाएं. उदाहरण: |
|
postalAddress |
PostalAddress |
||
zipCode |
String |
उदाहरण: |
|
city |
String |
शहर का नाम. उदाहरण: |
|
notes |
String |
कारोबार की जगह के बारे में नोट, जैसे कि गेट कोड. यह 500 या उससे कम वर्णों का होना चाहिए. उदाहरण: |
इस उदाहरण में एक 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" }
कंपनी
इस टेबल में, Merchant
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
id |
String |
व्यापारी/कंपनी का आईडी. अगर बताया गया हो, तो रेस्टोरेंट फ़ीड में रेस्टोरेंट.@id के साथ मेल खाता है. उदाहरण: |
|
name |
String | ज़रूरी है. व्यापारी/कंपनी को दिखने वाला उपयोगकर्ता. उदाहरण: |
इस उदाहरण में एक Merchant
एलिमेंट दिखाया गया है:
उदाहरण
{ "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }
रकम
इस टेबल में, Money
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
currencyCode |
String | ज़रूरी है. ISO 4217 फ़ॉर्मैट में तीन अक्षर का मुद्रा कोड. उदाहरण: |
|
units |
String |
रकम की पूरी यूनिट. उदाहरण के लिए, अगर मुद्रा कोड "USD" है, तो "1" इकाई एक अमेरिकी डॉलर है. उदाहरण: |
|
nanos |
Integer |
रकम की नैनो (10^-9) इकाइयों की संख्या. यह -999,999,999 और +999,999,999 के बीच का मान होना चाहिए. इन नियमों का इस्तेमाल करें: अगर यूनिट पॉज़िटिव हैं, तो नैनो वैल्यू पॉज़िटिव या शून्य होनी चाहिए. अगर यूनिट शून्य हैं, तो नैनोस पॉज़िटिव, शून्य या नेगेटिव हो सकती हैं. अगर यूनिट नेगेटिव है, तो nanos को नेगेटिव या शून्य होना चाहिए. उदाहरण के लिए, 1.75 डॉलर को यूनिट = -1 और नैनो = -7,50,00,000 है. उदाहरण: |
इस उदाहरण में एक Money
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "currencyCode": "USD", "units": "36", "nanos": 730000000 }
उदाहरण 2
{ "currencyCode": "EUR", "units": "10" }
ऑर्डर
इसमें ऑर्डर, ऑर्डर, और डिलीवरी के शुल्क के साथ-साथ पेमेंट के बारे में जानकारी शामिल होती है.Submit AppRequest
में आपकी कार्रवाई के
बाद, यह ऑब्जेक्ट मिल गया है.
इस टेबल में, Order
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
finalOrder |
ProposedOrder |
ज़रूरी है. ऐसा ऑर्डर जिसकी वजह से ऑर्डर हुआ. |
|
googleOrderId |
String | ज़रूरी है. Google ने ऑर्डर आईडी असाइन किया है. यह आईडी, किसी ऑर्डर की पूरी लाइफ़ साइकल के लिए स्थिर होना चाहिए. यह आईडी असली उपयोगकर्ता को नहीं दिखता. |
|
orderDate |
ISO टाइमस्टैंप | ज़रूरी है. ऑर्डर बनाने की तारीख और समय. |
|
paymentInfo |
PaymentInfo |
ज़रूरी है. इस ऑर्डर के पेमेंट से जुड़ी पेमेंट की जानकारी. |
इस उदाहरण में एक 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" } }
OrderUpdate
नीचे दी गई टेबल में, ऑर्डर अपडेट टाइप के उन फ़ील्ड के बारे में बताया गया है जोAppResponse
में शामिल हैं.
इस टेबल में, OrderUpdate
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
actionOrderId |
String | ज़रूरी है. इंटीग्रेटर's सिस्टम में ऑर्डर का यूनीक आईडी, जिसका इस्तेमाल उस ऑर्डर की पहचान करने के लिए किया जाता है जिसके लिए अपडेट भेजा गया है. अगर order.user_visible_order_id को किसी "CREATED" ऑर्डर के लिए OrderUpdate में कम से कम एक बार नहीं दिया गया है, तो यह आईडी, Google के ऑर्डर कार्ड में दिखाया गया इनपुट वाला यूज़र आईडी होगा. |
|
orderState |
OrderState |
ज़रूरी है. ऑर्डर की नई स्थिति. |
|
lineItemUpdates |
मैप<स्ट्रिंग, LineItemUpdate > |
||
updateTime |
ISO टाइमस्टैंप | ज़रूरी है. ऑर्डर अपडेट करने का समय. |
|
orderManagementActions |
सूची<OrderManagementAction > |
ऑर्डर के बाद की जाने वाली कार्रवाइयां, जैसे कि सहायता टीम से संपर्क करना और ऑर्डर की जानकारी देखना. 1 आइटम से कम और 6 आइटम से ज़्यादा नहीं होने चाहिए. |
|
rejectionInfo |
RejectionInfo |
|
|
cancellationInfo |
CancellationInfo |
|
|
inTransitInfo |
InTransitInfo |
यह फ़ील्ड काम नहीं करता है. |
|
fulfillmentInfo |
FulfillmentInfo |
यह फ़ील्ड काम नहीं करता है. |
|
receipt |
Receipt |
रसीद में, उपयोगकर्ता को दिखने वाले ऑर्डर आईडी की जानकारी दें. |
|
totalPrice |
Price |
ऑर्डर की कुल कीमत. |
|
infoExtension |
FoodOrderUpdateExtension |
ऑर्डर के अपडेट के बारे में ज़्यादा जानकारी देता है, जैसे कि डिलीवरी का अनुमानित समय या पिक अप के बीच का समय. |
इस उदाहरण में एक OrderUpdate
एलिमेंट दिखाया गया है:
उदाहरण
{ "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
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
pickupTimeIso8601 |
String |
ISO 8601 समय स्टैंप फ़ॉर्मैट में अनुमानित पिक अप समय:{quot;{year}-{month}-{day}T{hours}:{min}:{sec}[.{frac_sec}]Z" या अवधि फ़ॉर्मैट: "P(n)Y(n)M(n)DT(n)H(n)M". उदाहरण के लिए, PT90M अवधि 90 मिनट की है. डिफ़ॉल्ट वैल्यू ,"PT0M" से पता चलता है कि पिक अप का पसंदीदा समय जल्द से जल्द दिखेगा. रेफ़रंस: https://en.wikipedia.org/wiki/ISO_8601#मिलाएं_तारीख_और_समय_प्रतिरूप. चेकआउट के दौरान जवाब देने के दौरान, पिक अप के अनुमानित समय को अपडेट करने के लिए, इसका इस्तेमाल करें. उदाहरण: |
इस उदाहरण में एक PickupInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "pickupTimeIso8601": "PT90M" }
PostalAddress
इस टेबल में, PostalAddress
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
regionCode |
String | ज़रूरी है. दो वर्णों का देश कोड. उदाहरण: |
|
postalCode |
String |
पिन कोड. उदाहरण: |
|
administrativeArea |
String |
देश या क्षेत्र के डाक पतों के लिए इस्तेमाल किया जाने वाला सबसे बड़ा प्रशासनिक उप. यह एक राज्य, प्रांत, ओब्लास्ट या प्रीफ़ेक्चर हो सकता है. उदाहरण: |
|
locality |
String |
इस जगह का शहर या नगर. दुनिया के उन इलाकों के लिए जहां मोहल्ले के बारे में जानकारी नहीं दी गई है या जो इस स्ट्रक्चर में फ़िट नहीं होते हैं, मोहल्ले के बारे में न बताएं. इसके बजाय पतालाइन फ़ील्ड का इस्तेमाल करें. उदाहरण: |
|
addressLines |
सूची<स्ट्रिंग> |
एक या ज़्यादा लाइनें जिनका इस्तेमाल आप सड़क का पता बताने के लिए कर सकते हैं. इस फ़ील्ड में बदलाव नहीं किया जाना चाहिए, क्योंकि इसमें ऐसी स्थानीय जानकारी शामिल हो सकती है जो साफ़ नहीं है. उदाहरण: |
|
recipients |
सूची<स्ट्रिंग> |
किसी ऑर्डर के लिए पाने वालों की सूची. यह फ़ील्ड सिर्फ़ billingAddress में उपलब्ध है. |
इस उदाहरण में एक PostalAddress
एलिमेंट दिखाया गया है:
उदाहरण
{ "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }
कीमत
इस टेबल में, Price
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
type |
Enum [
"ESTIMATE",
"ACTUAL"
] |
ज़रूरी है. प्रचार कूपन कोड. |
|
amount |
Money |
ज़रूरी है. |
प्रमोशन
इस टेबल में, Promotion
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
coupon |
String | ज़रूरी है. प्रचार कूपन कोड. |
प्रस्तावित ऑर्डर
इस टेबल में, ProposedOrder
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
id |
String |
सुझाए गए ऑर्डर के लिए वैकल्पिक आईडी. |
|
cart |
Cart |
ज़रूरी है. उपयोगकर्ता के आइटम. |
|
otherItems |
सूची<LineItem > |
सेवा देने वाली कंपनी की ओर से जोड़े गए आइटम, जैसे कि डिलीवरी के शुल्क, दूसरे शुल्क, और टैक्स. दूसरे आइटम में उपयोगकर्ता के जोड़े गए मुफ़्त ऑफ़र और/या छूट भी शामिल हो सकते हैं. 10 आइटम से ज़्यादा नहीं होने चाहिए. |
|
image |
Image |
सुझाए गए ऑर्डर से जुड़ी इमेज. |
|
totalPrice |
Price |
ज़रूरी है. प्रस्तावित ऑर्डर की कुल कीमत. |
|
extension |
FoodOrderExtension |
ज़रूरी है. खाने के ऑर्डर के लिए, ऑर्डर पूरा करने की जानकारी बताता है. |
|
disclaimers |
सूची<Disclaimer > |
यह डिसक्लेमर मैसेज के मुताबिक होते हैं जो ऑर्डर देने से पहले यूज़र इंटरफ़ेस (यूआई) में दिखाए जाएंगे. |
इस उदाहरण में एक 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" } ] } }
सबलाइननोट
इस टेबल में, SublineNote
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
note |
String | ज़रूरी है. |
टाइमस्टैंप
तारीख और समय, इस फ़ॉर्मैट में होना चाहिए:
"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z"
लेन-देन का आंकड़ा
इसमेंOrder
शामिल है.
इस टेबल में, TransactionDecisionValue
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
order |
Order |
ज़रूरी है. पेमेंट की जानकारी के साथ ऑर्डर करें. |
इस उदाहरण में एक 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" } } }
ग्राहक को सामान भेजने का अनुरोध
ऐप्लिकेशन अनुरोध
इस टेबल में, AppRequest
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
isInSandbox |
बूलियन |
यह बताता है कि बाद के लेन-देन सैंडबॉक्स परिवेश में किए गए हैं या नहीं. |
|
conversation |
Conversation |
||
inputs |
सूची<Input > |
ज़रूरी है. इसमें कार्ट को चुनने के लिए ज़रूरी आर्ग्युमेंट होते हैं. ठीक 1 आइटम होना चाहिए. |
इस उदाहरण में एक AppRequest
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "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
{ "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
, actions.foodordering.intent.CHECKOUT
इंटेंट के साथ AppRequest
है.
OrderOrderRequest मैसेज सबमिट करें
SubmitOrderRequestMessage
, actions.foodordering.intent.TRANSACTION_DECISION
इंटेंट के साथ AppRequest
है.
बातचीत
Conversation
सिर्फ़ एक सेशन के लिए यूनीक होता है. इसका इस्तेमाल करके, ज़रूरत पड़ने पर कई Checkout
और SubmitOrder
कार्रवाइयों को लिंक किया जा सकता है.
इस टेबल में, Conversation
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
conversationId |
String | ज़रूरी है. बातचीत के लिए यूनीक आईडी. |
इस उदाहरण में एक Conversation
एलिमेंट दिखाया गया है:
उदाहरण
{ "conversationId": "CQnJ7Z4i7UmvEZ9ph3AxyZRJ" }
इनपुट
कार्ट से चेकआउट करने के लिए ज़रूरी आर्ग्युमेंट.
इस टेबल में, Input
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
intent |
Enum [
"actions.foodordering.intent.CHECKOUT",
"actions.intent.TRANSACTION_DECISION"
] |
ज़रूरी है. ऑर्डर का मैसेज सबमिट करने के लिए, कोटेशन के अनुरोध और OR &tt;actions.intent.TRANSACTION_DECISION" के लिए, "actions.foodordering.intent.checkout" पर सेट करें. |
|
arguments |
सूची<Argument > |
ज़रूरी है. इसमें चेकआउट के लिए कार्ट या ऑर्डर करने का समय शामिल है ठीक 1 आइटम होना चाहिए. |
आर्ग्यूमेंट
इसमें उन फ़ूड आइटम की जानकारी होती है जिन्हें उपयोगकर्ता देखना चाहता है. चेकआउट करने के लिए, सिर्फ़ एक्सटेंशन लागू होता है. ऑर्डर सबमिट करने के लिए, सिर्फ़ लेन-देन करने की वैल्यू ही लागू होती है
इस टेबल में, Argument
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
प्रॉपर्टी के इन ग्रुप में से किसी एक की ज़रूरत है. | |||
extension |
समूह 1 | Cart |
उन फ़ूड आइटम की जानकारी जिन्हें चेकआउट करना है. |
transactionDecisionValue |
समूह 2 | TransactionDecisionValue |
पैसे चुकाने के ब्यौरे के साथ ऑर्डर किया जा सकता है. |
पूरा करने का जवाब
ऐप्लिकेशन रिस्पॉन्स
इस टेबल में, AppResponse
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
expectUserResponse |
कॉन्स्ट |
'गलत है' पर सेट करें. मान: |
|
finalResponse |
FinalResponse |
ज़रूरी है. इसमें कार्ट चेकआउट का आपका जवाब शामिल होता है. |
इस उदाहरण में एक AppResponse
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "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
{ "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" } } } } ] } } }
तीसरा उदाहरण
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "error": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodErrorExtension", "foodOrderErrors": [ { "error": "CLOSED", "description": "The restaurant is closed." } ] } } } ] } } }
चौथा उदाहरण
{ "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
एक AppResponse
होता है, जो StructuredResponse
में checkoutResponse
या error
के साथ होता है.
SendOrderResponseMessage
SubmitOrderResponseMessage
, StructuredResponse
में मौजूद
orderUpdate
के साथ AppResponse
होता है.
फ़ाइनल रिस्पॉन्स
कार्ट चेकआउट या सबमिट ऑर्डर अनुरोध के लिए आपका जवाब.
इस टेबल में, FinalResponse
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
richResponse |
RichResponse |
ज़रूरी है. इसमें चेकआउट अनुरोध और सबमिट करें अनुरोध का आपका जवाब शामिल है. |
चेकआउट का जवाब
इस टेबल में, CheckoutResponse
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
proposedOrder |
ProposedOrder |
ज़रूरी है. लेन-देन के लिए सुझाया गया ऑर्डर. |
|
paymentOptions |
PaymentOptions |
ज़रूरी है. उपयोगकर्ता के लिए डिफ़ॉल्ट पेमेंट विकल्प चुना गया. |
|
additionalPaymentOptions |
सूची<PaymentOptions > |
उपयोगकर्ता के लिए पेमेंट के अन्य विकल्प उपलब्ध हैं. |
इस उदाहरण में एक 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." } } ] }
आइटम
इसमें, कार्ट चेकआउट या SendOrderRequestMessage के आपके जवाब शामिल होते हैं.
इस टेबल में, Item
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
structuredResponse |
StructuredResponse |
ज़रूरी है. |
रिच रिस्पॉन्स
इसमें कार्ट चेकआउट का आपका जवाब होता है.
इस टेबल में, RichResponse
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
items |
सूची<Item > |
ज़रूरी है. ठीक 1 आइटम होना चाहिए. |
स्ट्रक्चर्ड रिस्पॉन्स
CheckoutResponseMessage के लिए, यह इनमें से कोई एक हो सकता है: CheckoutResponse, सफल चेकआउट को दर्शाता है. OR Fooderror Extensions: चेकआउट के दौरान गड़बड़ी दिखाता है. इस रिस्पॉन्स में, प्रस्तावित OrderOrder और PaymentOptions या सही तरीके में गड़बड़ी का मैसेज शामिल हो सकता है. सबमिट ऑर्डर मैसेज के लिए, सिर्फ़ OrderUpdate लागू होता है.
इस टेबल में, StructuredResponse
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
प्रॉपर्टी के इन ग्रुप में से किसी एक की ज़रूरत है. | |||
checkoutResponse |
समूह 1 | CheckoutResponse |
आइटम और टैक्स के बारे में जानकारी देखी गई. |
error |
समूह 2 | FoodErrorExtension |
कार्ट आइटम में गड़बड़ियां मिलीं. किस तरह की गड़बड़ी है, इस आधार पर इस प्रॉपर्टी में, OrderOrder और PaymentOptions के सही विकल्प या बिना गड़बड़ी के मैसेज वाला विकल्प शामिल किया जा सकता है. |
orderUpdate |
समूह 3 | OrderUpdate |
एसिंक्रोनस ऑर्डर के अपडेट
इस सेक्शन में उन हाई-लेवल टाइप के बारे में बताया गया है जो खाने की खाना ऑर्डर करने की बिल्ट-इन कार्रवाई के साथ, किसी सामान्य फ़ूड ऑर्डर के अनुरोध और जवाबों पर आधारित होते हैं.AsyncOrderUpdateRequestMessage
ऑर्डर सबमिट होने और उसकी पुष्टि होने के बाद, उपयोगकर्ता को बदलावों की सूचना देता है. उदाहरण के लिए, आप उपयोगकर्ता को बता सकते हैं कि ऑर्डर ट्रांज़िट में है या कीमत में बदलाव हुआ है. ज़्यादा जानकारी के लिए, इसे देखेंइस टेबल में, AsyncOrderUpdateRequestMessage
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
isInSandbox |
बूलियन |
इससे पता चलता है कि यह अपडेट, सैंडबॉक्स पेमेंट के लिए भेजा गया है. |
|
customPushMessage |
CustomPushMessage |
ज़रूरी है. इसमें अनुरोध के लिए OrderUpdate शामिल है. |
इस उदाहरण में एक AsyncOrderUpdateRequestMessage
एलिमेंट दिखाया गया है:
उदाहरण
{ "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
भेज देते हैं, तब Google एचटीटीपी 200 स्टेटस
और खाली बॉडी के साथ जवाब देता है. अगर अपडेट पूरा नहीं हो सका,
तो ऑर्डर अपडेट न होने की वजहों के बारे में Google आपको जानकारी देता है.
ऑर्डर के अपडेट के टाइप
Button
यूज़र इंटरफ़ेस एलिमेंट के बारे में बताता है, जिसे आप उपयोगकर्ता इंटरैक्शन देने के लिए जोड़ सकते हैं.
इस टेबल में, Button
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
title |
String | ज़रूरी है. डिसप्ले लेबल. सही तरीके से रेंडर करने के लिए, वाक्य में 30 या इससे कम वर्णों का इस्तेमाल करें. उदाहरण: |
|
openUrlAction |
OpenUrlAction |
ज़रूरी है. |
इस उदाहरण में एक Button
एलिमेंट दिखाया गया है:
उदाहरण
{ "title": "Send us feedback", "openUrlAction": { "url": "mailto:person@example.com" } }
रद्द करने की जानकारी
इस टेबल में, CancellationInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
reason |
String | ज़रूरी है. OrderState.state और "cancelLED" होने पर, अस्वीकार किए जाने की दिखाई देने वाली टेक्स्ट वजह. उदाहरण: |
इस उदाहरण में एक CancellationInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "reason": "Insufficient inventory" }
FoodOrderUpdateExtensions
यह टाइप, उपयोगकर्ता को ऑर्डर के डिलीवर होने या पिक अप के लिए तैयार
होने के अनुमानित समय की जानकारी देता है. जब भी जानकारी उपलब्ध हो या पिछली बार भेजे जाने के बाद से इसमें बदलाव हो गया हो, तब इस एक्सटेंशन को OrderUpdate
में भेजें.
ग्राहक को आइटम भेजने की अवधि के लिए, पुराने तरीके से अनुमान लगाएं, ताकि उपयोगकर्ताओं की उम्मीदों पर कोई असर न पड़े. उदाहरण के लिए, अगर ऑर्डर आज 13:00 बजे डिलीवर होने का अनुमान है, तो आपको एक अनुमानित इंटरवल भेजना चाहिए, जो ट्रैफ़िक की स्थितियों की वजह से वैरिएशन से मेल खाता हो, जैसे कि आज 12:45 बजे से 13:15 बजे तक.
ISO 8601 की अवधि या टाइमस्टैंप का मतलब OrderUpdate
के updateTime
से (इसका मतलब है कि "Now") और updateTime
में duration
के अंतराल का मतलब है.
इस फ़ॉर्मैट का इस्तेमाल तब तक न करें, जब तक कि &&" असल में कोई सही उम्मीद न हो.
ISO 8601 इंटरवल को, इंटरवल की शुरुआत से लेकर आखिर तक के इंटरवल का मतलब निकाला जाता है.
इस टेबल में, FoodOrderUpdateExtension
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
@type |
कॉन्स्ट |
इस एक्सटेंशन का टाइप. यह फ़ील्ड हमेशा "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension" पर सेट होता है. मान: |
|
estimatedFulfillmentTimeIso8601 |
String |
ऑर्डर डिलीवर होने या पिक अप के लिए तैयार होने का अनुमानित समय. स्ट्रिंग, ISO 8601 फ़ॉर्मैट में होनी चाहिए और उसे एक तय समय के बजाय इंटरवल से जुड़ा होना चाहिए. स्वीकार किए जाने वाले कन्वेंशन ये हैं: अंतराल, अवधि, और तारीख/समय. यह फ़ील्ड जानकारी सबमिट होने पर या अगर उसमें कोई बदलाव होता है, जैसे कि जल्दी या देर से आने वाली जानकारी, तो SendOrderResponseMessage या AsyncOrderUpdateRequestMessage में भेजी जा सकती है. उदाहरण: |
|
foodOrderErrors |
सूची<FoodOrderError > |
इस नीति की मदद से, ऑर्डर के बाद होने वाली गड़बड़ियों के बारे में बताया जाता है. हर कार्ट या हर सामान के लिए, एक गड़बड़ी का सुझाव दिया जाता है. किसी भी गड़बड़ी के लिए, FoodOrderUpdateExtensions.FoodOrderErrors का इस्तेमाल करें जो DisallowionInfo के ज़रिए कवर नहीं की गई हो. 1 आइटम से कम नहीं होना चाहिए. |
इस उदाहरण में एक FoodOrderUpdateExtension
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "estimatedFulfillmentTimeIso8601": "2017-07-17T13:00:00Z/2017-07-17T13:30:00Z" }
उदाहरण 2
{ "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension", "foodOrderErrors": [ { "error": "NO_CAPACITY", "description": "Sorry, the restaurant cannot take your order right now." } ] }
शिपिंग की जानकारी
इस टेबल में, FulfillmentInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
प्रॉपर्टी के इन ग्रुप में से किसी एक की ज़रूरत है. | |||
deliveryTime |
समूह 1 | ISO टाइमस्टैंप |
FoodOrderingUpdateextensions के मैसेज में, अनुमानितFulfillmentTimeIso8601 कोड का इस्तेमाल करें |
pickupTime |
समूह 2 | ISO टाइमस्टैंप |
FoodOrderingUpdateextensions के मैसेज में, अनुमानितFulfillmentTimeIso8601 कोड का इस्तेमाल करें |
इस उदाहरण में एक FulfillmentInfo
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "deliveryTime": "2017-05-10T02:36:38.803Z" }
उदाहरण 2
{ "pickupTime": "2019-12-26T07:24:27.803Z" }
InTransitInfo
इस टेबल में, InTransitInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
updatedTime |
ISO टाइमस्टैंप |
FoodOrderingUpdateextensions के मैसेज में, अनुमानितFulfillmentTimeIso8601 कोड का इस्तेमाल करें |
इस उदाहरण में एक InTransitInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "updatedTime": "2017-05-10T02:36:38.803Z" }
LineItemअपडेट
इस टेबल में, LineItemUpdate
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
orderState |
OrderState |
||
price |
Price |
||
reason |
String |
बदलाव की वजह. कीमत में बदलाव के लिए ज़रूरी है. |
इस उदाहरण में एक LineItemUpdate
एलिमेंट दिखाया गया है:
उदाहरण
{ "orderState": { "state": "CONFIRMED", "label": "Provider confirmed" }, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "5", "nanos": 500000000 } }, "reason": "Menu updated prices." }
OpenUrlAction
इस टेबल में, OpenUrlAction
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
url |
String | ज़रूरी है. बटन पर क्लिक करने या उसे छूने से होने वाली कार्रवाई. लागू होने वाले प्रीफ़िक्स की सूची, orderManagementActionType पर निर्भर करती है. "EMAIL": प्रीफ़िक्स "mailto" होना चाहिए. "CALL": प्रीफ़िक्स "tel" होना चाहिए. "CUSTOMER_SERVICE": प्रीफ़िक्स "mailto", "tel", "http" या "https" होना चाहिए. उदाहरण: |
ऑर्डर मैनेजमेंट से जुड़ी कार्रवाई
ऑर्डर मैनेजमेंट की सुविधा, उपयोगकर्ताओं को ऑर्डर के बाद सहायता उपलब्ध कराती है. साथ ही, इसे हर ऑर्डर OrderUpdate
में, ऑर्डर सबमिट करने के दौरान AppResponse
और बाद में, हर एक AsyncOrderUpdateRequestMessage
में भेजा जाना चाहिए. स्थिति के हिसाब से, किसी खास ऑर्डर के लिए भेजी गई ऑर्डर मैनेजमेंट की कार्रवाइयां अलग-अलग हो सकती हैं.
उदाहरण के लिए, "CREATED" स्थिति में, CUSTOMER_SERVICE
आपके ग्राहक सहायता टेलीफ़ोन की जानकारी दे सकता है. इसके बाद, ग्राहक के लिए संपर्क बनाने के लिए, CUSTOMER_SERVICE
को रेस्टोरेंट के फ़ोन नंबर में बदला जा सकता है. इसकी पुष्टि "CONFIRMED" स्थिति में की जा सकती है. इसी तरह, ऑर्डर के "FULFILLED" स्थिति में आने के बाद,
CUSTOMER_SERVICE
आपके सहायता ईमेल पतों का रेफ़रंस दे सकता है.
इस टेबल में, OrderManagementAction
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
type |
OrderManagementActionType |
ज़रूरी है. |
|
button |
Button |
ज़रूरी है. |
इस उदाहरण में एक OrderManagementAction
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "type": "CUSTOMER_SERVICE", "button": { "title": "Contact customer service", "openUrlAction": { "url": "mailto:support@example.com" } } }
उदाहरण 2
{ "type": "EMAIL", "button": { "title": "Email restaurant", "openUrlAction": { "url": "mailto:person@example.com" } } }
OrderManagermentActionType
OrderManagementAction
से मिलते-जुलते टाइप के बारे में बताता है.
OrderManagementActionType
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
CUSTOMER_SERVICE
: ऑर्डर की पुष्टि करने वाले पेज पर दिखाया जाने वाला ग्राहक सेवा का ईमेल और/या संपर्क नंबर. यह ज़रूरी है. OpenUrlAction.url उपसर्ग हमेशा "mailto", "tel", "http" या "https" होना चाहिए.EMAIL
: सिर्फ़ ऑर्डर की जानकारी वाले पेज पर ईमेल कार्रवाई. OpenUrlAction.url प्रीफ़िक्स, "mailto" होना चाहिए.CALL_DRIVER
: सिर्फ़ ऑर्डर की जानकारी वाले पेज पर कॉल-टू-ऐक्शन. OpenUrlAction.url प्रीफ़िक्स, "tel" होना चाहिए.CALL_RESTAURANT
: सिर्फ़ ऑर्डर की जानकारी वाले पेज पर कॉल-टू-ऐक्शन. OpenUrlAction.url प्रीफ़िक्स, "tel" होना चाहिए.
ऑर्डर की स्थिति
ऑर्डर की मौजूदा स्थिति. OrderState
की हर state
वैल्यू, myaccount.google.com पर दी गई खरीदारी की स्थिति से भी मेल खाती है.
इस टेबल में, OrderState
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
state |
OrderStateEnum |
ज़रूरी है. |
|
label |
String | ज़रूरी है. राज्य के लिए उपयोगकर्ता को दिखाई देने वाली डिसप्ले स्ट्रिंग. अंग्रेज़ी के वाक्यों में, पहला वर्ण बड़ा (अपर केस में) रखें. उदाहरण: |
इस उदाहरण में एक OrderState
एलिमेंट दिखाया गया है:
उदाहरण
{ "state": "CONFIRMED", "label": "Provider confirmed" }
OrderStateEnum
OrderState
से मिलते-जुलते टाइप के बारे में बताता है.
OrderStateEnum
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
CREATED
: इंटीग्रेटर का बनाया गया ऑर्डर और सेवा देने वाली कंपनी की ओर से पुष्टि किए जाने का इंतज़ार किया जा रहा है. "ऑर्डर किया गया" खरीदारी की स्थिति के अनुरूप है.CONFIRMED
: सेवा देने वाली कंपनी ने ऑर्डर की पुष्टि की है और वह चालू है. "स्वीकार किए गए" खरीदारी की स्थिति के हिसाब से.REJECTED
: इंटीग्रेटर या सेवा देने वाली कंपनी ने ऑर्डर अस्वीकार कर दिया है. "अस्वीकार की गई" खरीदारी की स्थिति के अनुरूप.CANCELLED
: उपयोगकर्ता ने ऑर्डर रद्द कर दिया. "रद्द" खरीदारी की स्थिति के हिसाब से.IN_PREPARATION
: खाना बनाया जा रहा है. "स्थिति अज्ञात" खरीदारी की स्थिति के हिसाब से.READY_FOR_PICKUP
: खाना पिक अप के लिए तैयार है. "पिक अप के लिए तैयार" परचेज़ स्टेटस के हिसाब से.IN_TRANSIT
: ऑर्डर डिलीवर किया जा रहा है. "प्रगति में" खरीदारी की स्थिति के अनुरूप.FULFILLED
: उपयोगकर्ता को ऑर्डर दिया गया. खरीदारी की स्थिति के हिसाब से &कोट में है.
रसीद
इस टाइप को सबमिट ऑर्डरAppResponse
में भेजें, जहां OrderState
की वैल्यू "confirmED", "FULFILLED" या "IN_ लोगों". userVisibleOrderId
उपलब्ध होने पर
रसीद भेजें. आपको बाद के अपडेट में रसीद भेजने की ज़रूरत नहीं है.
इस टेबल में, Receipt
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
userVisibleOrderId |
String | ज़रूरी है. अगर ऑर्डर "confirmED", "IN_transit" या "FULFILLED" है, तो ज़रूरी है. यह फ़ील्ड, इस ऑर्डर के लिए उपयोगकर्ता को मिलने वाला एक आईडी है (आम तौर पर रेस्टोरेंट का ऑर्डर आईडी), इंटीग्रेटर की रसीद और Google ऑर्डर कार्ड, दोनों में दिखाया जाता है. सेवा देने वाली कंपनी और इंटिग्रेटर की ग्राहक सेवा का ऑर्डर देने के लिए, उपयोगकर्ता के पास इस आईडी का इस्तेमाल करने की सुविधा होनी चाहिए. आपको किसी भी दिए गए OrderUpdate में यह आईडी सिर्फ़ एक बार देना होगा. जब तक यह दिया नहीं जाता, तब तक actionOrderId ही uservisibleOrderId है. उदाहरण के लिए, हो सकता है कि जब तक रेस्टोरेंट आपके ऑर्डर की पुष्टि न कर दे, तब तक आपके पास uservisibleOrderId न हो. पुष्टि करने के बाद, आपको OrderUpdate और रसीद से AsyncOrderUpdateRequestMessage भेजना होगा. |
इस उदाहरण में एक Receipt
एलिमेंट दिखाया गया है:
उदाहरण
{ "userVisibleOrderId": "userVisibleId1234" }
अस्वीकार करने से जुड़ी जानकारी
इस टेबल में, RejectionInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
type |
RejectionType |
ज़रूरी है. |
|
reason |
String |
अंदरूनी लॉग इन किए जाने की वजह से, अस्वीकार किया गया. यह फ़ील्ड उपयोगकर्ताओं को नहीं दिखती. |
इस उदाहरण में एक RejectionInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "type": "PAYMENT_DECLINED", "reason": "There is an issue with payment processing." }
अस्वीकार किया जाने का प्रकार
RejectionType
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
INELIGIBLE
: उपयोगकर्ता को नीति या जोखिम से जुड़ी समस्याओं की वजह से मंज़ूरी नहीं दी गई है.PAYMENT_DECLINED
: पेमेंट की प्रोसेस के दौरान कोई समस्या हुई है.UNAVAILABLE_SLOT
: डिलीवरी की जानकारी, पिक अप की जानकारी या पिक अप की जानकारी में बताए गए समय से पहले नहीं की जा सकती.PROMO_NOT_APPLICABLE
: प्रमोशन में कोई समस्या है.UNKNOWN
: कोई और वजह है.
पेमेंट से जुड़े टाइप
इस सेक्शन में, पैसे चुकाने के उन तरीकों के बारे में बताया गया है जिनका इस्तेमाल खाना ऑर्डर करने के लिए किया जाता है.कार्रवाइयों के लिए दिए गए पेमेंट के विकल्प
कार्रवाई करने के लिए, पैसे चुकाने के तरीके से जुड़ी ज़रूरी शर्तें.
इस टेबल में, ActionProvidedPaymentOptions
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
paymentType |
PaymentType |
ज़रूरी है. |
|
displayName |
String | ज़रूरी है. रसीद पर दिखाए गए पैसे चुकाने के तरीके का नाम. उदाहरण: |
|
onFulfillmentPaymentData |
OnFulfillmentPaymentData |
paymentType और quot;ON_FULFILLMENT" के लिए अतिरिक्त डेटा. उदाहरण के लिए, आप इस फ़ील्ड का इस्तेमाल यह बताने के लिए कर सकते हैं कि कैश या कार्ड को पूरा करने की सुविधा है या नहीं. |
इस उदाहरण में एक ActionProvidedPaymentOptions
एलिमेंट दिखाया गया है:
उदाहरण
{ "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } }
AllowAuthMethods
AllowedAuthMethods
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
PAN_ONLY
: उपयोगकर्ता के Google खाते में सेव किए गए पेमेंट कार्ड से जुड़ा पुष्टि करने का तरीका. लौटाए गए पेमेंट के डेटा में, व्यक्तिगत खाते का नंबर (पैन) शामिल होता है. इसकी समयसीमा, उसके खत्म होने के महीने पर होती है.
जिन कार्ड नेटवर्क को अनुमति मिली है
AllowedCardNetworks
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
AMEX
DISCOVER
INTERAC
JCB
MASTERCARD
VISA
कार्ड के पैरामीटर
इस ऑब्जेक्ट का इस्तेमाल करके, अपनी साइट के लिए Google Pay API इस्तेमाल करें.
इस टेबल में, CardParameters
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
allowedAuthMethods |
List<Const> | ज़रूरी है. कार्ड से लेन-देन की पुष्टि करने के लिए फ़ील्ड. 1 आइटम से कम नहीं होना चाहिए. |
|
allowedCardNetworks |
सूची<AllowedCardNetworks > |
ज़रूरी है. आपकी तरफ़ से दिए जाने वाले एक या उससे ज़्यादा कार्ड नेटवर्क पर Google Pay API काम करता है. 1 आइटम से कम नहीं होना चाहिए. |
|
billingAddressRequired |
बूलियन |
अगर आपको बिलिंग पते की ज़रूरत है, तो उसे 'सही' पर सेट करें. बिलिंग पते के लिए अनुरोध सिर्फ़ तब करें, जब लेन-देन को प्रोसेस करने के लिए ऐसा करना ज़रूरी हो. डेटा से जुड़े अन्य अनुरोधों से, चेकआउट की प्रोसेस में परेशानी बढ़ सकती है. साथ ही, कन्वर्ज़न रेट भी कम हो सकता है. |
|
cvcRequired |
बूलियन |
TimesofMoney का इस्तेमाल करने पर, सही पर सेट है. बाकी सभी प्रोसेसर के लिए गलत पर सेट है. |
इस उदाहरण में एक CardParameters
एलिमेंट दिखाया गया है:
उदाहरण
{ "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "AMEX", "DISCOVER" ], "billingAddressRequired": false, "cvcRequired": false }
Google वाला दिया गया पेमेंट का तरीका
इस टेबल में, GoogleProvidedPaymentInstrument
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
instrumentToken |
String | ज़रूरी है. मूल 64-कोड वाली स्ट्रिंग, जिसमें Google Pay प्रोसेसर की सेवाएं इस्तेमाल करने वाले व्यक्ति से शुल्क लेने के लिए, पेमेंट टोकन शामिल होता है. Google Assistant, पहले से दी गई जानकारी देता है. |
|
billingAddress |
PostalAddress |
पेमेंट का बिलिंग पता. |
इस उदाहरण में एक GoogleProvidedPaymentInstrument
एलिमेंट दिखाया गया है:
उदाहरण
{ "instrumentToken": "abcd", "billingAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] } }
Google इसके हुए पेमेंट के विकल्प
Google की ओर से पैसे चुकाने के तरीके के लिए ज़रूरी शर्तें.
इस टेबल में, GoogleProvidedPaymentOptions
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
facilitationSpecification |
String |
स्ट्रिंग के तौर पर PaymentDataRequest JSON. इस ऑब्जेक्ट का इस्तेमाल करके, अपनी साइट के लिए Google Pay API इस्तेमाल करें. |
|
supportedCardNetworks |
सूची<SupportedCardNetworks > |
इसके बजाय, सुविधा से जुड़ी जानकारी का इस्तेमाल करें. एजेंट के साथ काम करने वाले कार्ड नेटवर्क का टाइप. यह फ़ील्ड काम नहीं करता है. |
|
prepaidCardDisallowed |
बूलियन |
इसके बजाय, सुविधा से जुड़ी जानकारी का इस्तेमाल करें. पैसे चुकाने के तरीके के तौर पर प्रीपेड कार्ड का इस्तेमाल किया जा सकता है या नहीं. यह फ़ील्ड काम नहीं करता है. |
|
billingAddressRequired |
बूलियन |
इसके बजाय, सुविधा से जुड़ी जानकारी का इस्तेमाल करें. बिलिंग पता होना चाहिए या नहीं. यह फ़ील्ड काम नहीं करता है. |
|
tokenizationParameters |
TokenizationParameters |
यह फ़ील्ड काम नहीं करता है. |
इस उदाहरण में एक GoogleProvidedPaymentOptions
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "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
{ "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 }
तीसरा उदाहरण
{ "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 }
व्यापारी/कंपनी की जानकारी
इस ऑब्जेक्ट का इस्तेमाल करके, अपनी साइट के लिए Google Pay API इस्तेमाल करें.
इस टेबल में, MerchantInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
merchantId |
String |
Google Pay ने आपको Google का व्यापारी आईडी जारी किया है. |
|
merchantName |
String | ज़रूरी है. व्यापारी/कंपनी का नाम UTF-8 कोड में बदला गया है. व्यापारी/कंपनी का नाम, पेमेंट शीट में रेंडर किया गया है. |
OnFulfillmentPaymentData
PaymentType और quot;ON_FULFILLMENT" के लिए ज़्यादा डेटा भेजने के लिए इस ऑब्जेक्ट का इस्तेमाल करें.
इस टेबल में, OnFulfillmentPaymentData
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
supportedPaymentOptions |
सूची<PaymentOptionsEnums > |
ऑर्डर पूरा करते समय, उपयोगकर्ता के लिए उपलब्ध पेमेंट विकल्पों की सूची. |
इस उदाहरण में एक OnFulfillmentPaymentData
एलिमेंट दिखाया गया है:
उदाहरण
{ "supportedPaymentOptions": [ "Cash", "Card" ] }
पैरामीटर
TokenizationParameters
से मिलते-जुलते टाइप के बारे में बताता है.
इस टेबल में, Parameters
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
gateway |
String | ज़रूरी है. उदाहरण: |
|
gatewayMerchantId |
String | ||
[additionalKey: string] |
String | अतिरिक्त की-वैल्यू पेयर |
इस उदाहरण में एक Parameters
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "gatewayMerchantId": "90412491", "gateway": "olo" }
उदाहरण 2
{ "gateway": "braintree", "braintree:apiVersion": "v1", "braintree:sdkVersion": "1.4.0", "braintree:merchantId": "YOUR_MERCHANT_ID", "braintree:clientKey": "YOUR_BRAINTREE_SANDVOX_OR_PRODUCTION_KEY" }
PaymentDataअनुरोध
इस ऑब्जेक्ट का इस्तेमाल करके, अपनी साइट के लिए Google Pay API इस्तेमाल करें.
इस टेबल में, PaymentDataRequest
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
apiVersion |
कॉन्स्ट | ज़रूरी है. मेजर एपीआई वर्शन. मान: |
|
apiVersionMinor |
कॉन्स्ट | ज़रूरी है. API का छोटा वर्शन. मान: |
|
merchantInfo |
MerchantInfo |
ज़रूरी है. (Google Pay का मर्चेंट आईडी) उस व्यापारी की जानकारी जो पैसे चुकाने के डेटा का अनुरोध करता है. |
|
allowedPaymentMethods |
सूची<PaymentMethod > |
ज़रूरी है. Google Pay API पर काम करने वाले, एक या एक से ज़्यादा पैसे चुकाने के तरीकों के बारे में जानकारी देता है. |
|
transactionInfo |
TransactionInfo |
ज़रूरी है. उपयोगकर्ता के लेन-देन से सहमत होने या नहीं होने के आधार पर, लेन-देन के अनुमति से जुड़ी जानकारी. इस फ़ील्ड में कुल कीमत और कीमत की स्थिति बताई गई है. |
इस उदाहरण में एक PaymentDataRequest
एलिमेंट दिखाया गया है:
उदाहरण
{ "apiVersion": 2, "apiVersionMinor": 0, "merchantInfo": { "merchantId": "10391231", "merchantName": "Burrito Town" }, "allowedPaymentMethods": [ { "type": "CARD", "parameters": { "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "VISA", "AMEX", "MASTERCARD" ], "billingAddressRequired": true, "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
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
displayName |
String | ज़रूरी है. रसीद पर, पैसे चुकाने के तरीके का नाम, जिसे उपयोगकर्ता को दिखता हो. |
|
paymentType |
PaymentType |
ज़रूरी है. |
|
googleProvidedPaymentInstrument |
GoogleProvidedPaymentInstrument |
कार्रवाई के लिए इस्तेमाल किया जा सकने वाला टोकन. यह सिर्फ़ तब ही बताएं, जब आपने चेकआउट रिस्पॉन्स मैसेज में GoogleProviderdPaymentOptions को, पैसे चुकाने के विकल्प के तौर पर चुना हो. |
इस उदाहरण में एक PaymentInfo
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "displayName": "Visa\u2006****\u20061111", "googleProvidedPaymentInstrument": { "instrumentToken": "abcd" }, "paymentType": "PAYMENT_CARD" }
उदाहरण 2
{ "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" }
भुगतान का तरीका
इस ऑब्जेक्ट का इस्तेमाल करके, अपनी साइट के लिए Google Pay API इस्तेमाल करें.
इस टेबल में, PaymentMethod
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
type |
कॉन्स्ट | ज़रूरी है. पैसे चुकाने के तरीके के लिए छोटा आइडेंटिफ़ायर. वर्तमान में केवल CARD समर्थित है. मान: |
|
parameters |
CardParameters |
ज़रूरी है. पैसे चुकाने के तरीके के लिए कॉन्फ़िगर किए जाने वाले पैरामीटर. |
|
tokenizationSpecification |
TokenizationSpecification |
ज़रूरी है. क्रेडिट/डेबिट कार्ड की जानकारी पाने के लिए, खाता या डिक्रिप्शन की सेवा देने वाली कंपनी को कॉन्फ़िगर करें. यह प्रॉपर्टी, कार्ड में पैसे चुकाने के तरीके के लिए ज़रूरी है. |
इस उदाहरण में एक PaymentMethod
एलिमेंट दिखाया गया है:
उदाहरण
{ "type": "CARD", "parameters": { "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "VISA", "AMEX", "MASTERCARD" ], "billingAddressRequired": false }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gatewayMerchantId": "90412491", "gateway": "olo" } } }
भुगतान विकल्प
इस टेबल में, PaymentOptions
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
प्रॉपर्टी के इन ग्रुप में से किसी एक की ज़रूरत है. | |||
googleProvidedOptions |
समूह 1 | GoogleProvidedPaymentOptions |
टैग को ऐक्शन के तौर पर खास तौर पर दिया जा सकता है. GPay की मदद से, ऑनलाइन पेमेंट करने के लिए इसका इस्तेमाल करें. |
actionProvidedOptions |
समूह 2 | ActionProvidedPaymentOptions |
googleProviderdOptions के साथ कई तरह से खास. इसका इस्तेमाल कोट और डिलीवरी के लिए करें. साथ ही, इसका इस्तेमाल करके ग्राहकों को सामान भेजने पर कोट करें. |
इस उदाहरण में एक PaymentOptions
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "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
{ "actionProvidedOptions": { "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } } }
PaymentOptionsEnums
PaymentOptionsEnums
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
Cash
Card
UPI
Paytm
पैसे चुकाने का तरीका
PaymentType
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
PAYMENT_CARD
: Google इसके साथ काम करने वाले PaymentOptions के लिए.ON_FULFILLMENT
: ActionProviderdPaymentOptions के लिए.
जिन कार्ड नेटवर्क के लिए सहायता उपलब्ध है
GoogleProvidedPaymentOptions
से मिलते-जुलते टाइप के बारे में बताता है.
SupportedCardNetworks
टाइप में नीचे दी गई वैल्यू हो सकती हैं:
UNSPECIFIED_CARD_NETWORK
AMEX
DISCOVER
JCB
MASTERCARD
VISA
टोकन के पैरामीटर
GoogleProvidedPaymentOptions
से मिलते-जुलते टाइप के बारे में बताता है.
इस टेबल में, TokenizationParameters
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
tokenizationType |
Enum [
"UNSPECIFIED_TOKENIZATION_TYPE",
"PAYMENT_GATEWAY"
] |
ज़रूरी है. इसके बजाय, सुविधा से जुड़ी जानकारी का इस्तेमाल करें. किस तरह के टोकन स्वीकार किए जाते हैं. |
|
parameters |
Parameters |
इसके बजाय, सुविधा से जुड़ी जानकारी का इस्तेमाल करें. |
टोकन की खास बातें
इस ऑब्जेक्ट की मदद से, खाते में कॉन्फ़िगर करके पैसे चुकाने की जानकारी पाई जा सकती है.
इस टेबल में, TokenizationSpecification
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
type |
कॉन्स्ट | ज़रूरी है. |
|
parameters |
Parameters |
ज़रूरी है. |
इस उदाहरण में एक TokenizationSpecification
एलिमेंट दिखाया गया है:
उदाहरण 1
{ "type": "PAYMENT_GATEWAY", "parameters": { "gatewayMerchantId": "1247192", "gateway": "cybersource" } }
उदाहरण 2
{ "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:version": "2018-10-31", "stripe:publishableKey": "12378127" } }
लेन-देन की जानकारी
इस ऑब्जेक्ट में, एक ऐसे लेन-देन की जानकारी दी गई है जिससे पैसे चुकाने वाले की क्षमता तय होती है. इसका इस्तेमाल पेमेंट की अनुमति देने वाले डायलॉग को दिखाने के लिए किया जाता है.
इस टेबल में, TransactionInfo
टाइप की प्रॉपर्टी की सूची दी गई है:
प्रॉपर्टी | टाइप | जानकारी | |
---|---|---|---|
currencyCode |
String | ज़रूरी है. ISO 4217 वर्ण-अक्षर वाला मुद्रा कोड. |
|
transactionId |
String |
यूनीक आईडी, जो लेन-देन की पहचान करता है. Google Pay से किए गए लेन-देन के लिए, व्यापारी/कंपनी मौजूदा आईडी का इस्तेमाल कर सकते हैं या कोई खास आईडी जनरेट कर सकते हैं. Google लेन-देन इवेंट API में कॉलबैक भेजते समय यह फ़ील्ड ज़रूरी होता है. |
|
totalPriceStatus |
कॉन्स्ट | ज़रूरी है. डिफ़ॉल्ट रूप में "pagetype" का इस्तेमाल करें. कुल कीमत, जवाब में दी गई जानकारी के हिसाब से अडजस्ट हो सकती है. जैसे, बिलिंग पते के आधार पर इकट्ठा किया गया सेल्स टैक्स. मान: |
|
totalPrice |
String | ज़रूरी है. दो दशमलव स्थानों में लेन-देन के लिए दशमलव के बाद की सटीक वैल्यू. इस फ़ील्ड का मान, कार्ट की कुल कीमत के बराबर होना चाहिए. |
इस उदाहरण में एक TransactionInfo
एलिमेंट दिखाया गया है:
उदाहरण
{ "totalPriceStatus": "ESTIMATED", "totalPrice": "12.34", "currencyCode": "USD" }