বেস প্রকার
কার্ট
অর্ডারের বিশদ বিবরণ রয়েছে, সেইসাথে অনুরোধটি পিকআপ বা ডেলিভারির জন্য কিনা। একটি কার্টে ডেলিভারির বিবরণ, গ্র্যাচুইটি এবং ডেলিভারির ঠিকানাও থাকে।Cart
অবজেক্টটি একটি Checkout AppRequest
এ সংজ্ঞায়িত করা হয়েছে। আপনি আপনার Checkout AppResponse
এ কার্টের একটি অনুলিপি অন্তর্ভুক্ত করেন নিম্নলিখিত সারণী Cart
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
@type | কন্সট | এই বস্তুর ধরন. এই ক্ষেত্রটি বাদ দিন যদি মূল কার্ট বস্তুটি প্রস্তাবিত অর্ডারের অংশ হয়। মান: | |
id | স্ট্রিং | কার্টের ঐচ্ছিক আইডি। | |
merchant | Merchant | এই কার্টের সাথে সংশ্লিষ্ট ব্যবসায়ী। | |
lineItems | তালিকা< LineItem > | প্রয়োজন। ব্যবহারকারী যে পণ্যগুলি বা পরিষেবাগুলি অর্ডার করছেন তার তালিকা৷ 1টির কম আইটেম থাকতে হবে। | |
promotions | তালিকা< Promotion > | এই কার্টে প্রযোজ্য প্রচার। শুধুমাত্র একটি প্রচার বর্তমানে সমর্থিত. | |
notes | স্ট্রিং | অর্ডার বা বিতরণ নির্দেশাবলী সম্পর্কে নোট. | |
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 | স্ট্রিং | অর্ডার গ্রহণকারী ব্যক্তির নাম, যেমন আপনি এটি প্রদর্শন করতে চান। firstName এবং lastName নির্দিষ্ট না থাকলে এই ক্ষেত্রটি ব্যবহার করুন৷ উদাহরণ: | |
email | স্ট্রিং | অর্ডার গ্রহণকারী ব্যক্তির ইমেল ঠিকানা। উদাহরণ: | |
firstName | স্ট্রিং | অর্ডার গ্রহণকারী ব্যক্তির প্রথম নাম। উদাহরণ: | |
lastName | স্ট্রিং | আদেশ গ্রহণকারী ব্যক্তির উপাধি। উদাহরণ: | |
phoneNumber | স্ট্রিং | দেশের কোড সহ অর্ডার গ্রহণকারী ব্যক্তির ফোন নম্বর। উদাহরণ: | |
emailVerified | বুলিয়ান | অর্ডার প্রাপ্ত ব্যক্তি তার Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন কিনা তা নির্দেশ করে৷ |
নিম্নলিখিত উদাহরণ একটি Contact
উপাদান দেখায়:
উদাহরণ
{ "displayName": "Lovefood Ordering", "email": "ilovefood@example.com", "phoneNumber": "+16501234567" }
CustomPushMessage
অনুরোধের জন্য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 | স্ট্রিং | আনুমানিক বিতরণের সময়, ISO 8601 টাইম স্ট্যাম্প ফর্ম্যাটে: "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" বা সময়কাল ফর্ম্যাট: "P( n)Y(n)M(n)DT(n)H(n)M(n)S"। উদাহরণস্বরূপ, PT90M 90 মিনিটের সময়কাল উপস্থাপন করে। ডিফল্ট মান "PT0M", নির্দেশ করে যে পছন্দের ডেলিভারি সময় যত তাড়াতাড়ি সম্ভব। তথ্যসূত্র: https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations। চেকআউট প্রতিক্রিয়ার সময় আনুমানিক বিতরণ সময় আপডেট করতে এটি ব্যবহার করুন। উদাহরণ: |
নিম্নলিখিত উদাহরণ একটি DeliveryInfo
উপাদান দেখায়:
উদাহরণ
{ "deliveryTimeIso8601": "PT90M" }
দাবিত্যাগ
নিম্নলিখিত টেবিলটি Disclaimer
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
predefinedMessage | PredefinedMessage | প্রয়োজন। চেকআউটের সময় পূর্বনির্ধারিত দাবিত্যাগ বার্তাগুলি দেখাতে। | |
feeAmount | Money | অংশীদার এই অর্ডারের জন্য বণিককে N পরিমাণ ফি নেবে৷ | |
feeAmountRange | FeeAmountRange | পার্টনার রেস্তোরাঁকে অর্ডার প্রতি N থেকে M পরিমাণ ফি চার্জ করবে। | |
feePercent | সংখ্যা | এই অর্ডারের জন্য অংশীদার বণিককে N% ফি নেবে। | |
feePercentRange | FeePercentRange | অংশীদার প্রতি অর্ডারে ব্যবসায়ীর কাছ থেকে N% থেকে M% ফি নেবে। |
নিম্নলিখিত উদাহরণ একটি Disclaimer
উপাদান দেখায়:
উদাহরণ 1
{ "predefinedMessage": "NEW_YORK_DELIVERY_FEE_TIP_DISCLAIMER" }
উদাহরণ 2
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE" }
উদাহরণ 3
{ "predefinedMessage": "FEE_CHARGED_TO_RESTAURANT_DISCLOSURE", "feePercent": 25 }
উদাহরণ 4
{ "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 } }
উদাহরণ 6
{ "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
: DeliveryInfo বা PickupInfo দ্বারা নির্ধারিত সময়ের আগে অর্ডার পূরণ করা যাবে না। -
OUT_OF_SERVICE_AREA
: অর্ডারটি ব্যবহারকারীর ঠিকানায় বিতরণ করা যাবে না। -
PROMO_EXPIRED
: প্রচারের মেয়াদ শেষ হওয়ায় আবেদন করা যায়নি। -
PROMO_NOT_APPLICABLE
: প্রোমো কোড প্রয়োগ করতে ব্যর্থতার সমস্ত ক্ষেত্রে ধরার জন্য জেনেরিক ত্রুটি কোড, যদি অন্য কোনো প্রোমো কোড ত্রুটি মানানসই না হয়। -
PROMO_NOT_RECOGNIZED
: কুপন কোড স্বীকৃত হয়নি৷ -
PROMO_ORDER_INELIGIBLE
: বর্তমান অর্ডারটি এই কুপনের জন্য যোগ্য নয়৷ -
PROMO_USER_INELIGIBLE
: বর্তমান ব্যবহারকারী এই কুপনের জন্য যোগ্য নয়৷ -
AVAILABILITY_CHANGED
: আইটেমটি আর উপলব্ধ নেই, বা অনুরোধটি পূরণ করার জন্য অপর্যাপ্ত আইটেম রয়েছে৷ -
INCORRECT_PRICE
: ফি বা মোট মূল্যের ত্রুটি৷ -
INVALID
: একটি লাইনআইটেম, পূর্ণতা বিকল্প, বা প্রচারে অবৈধ ডেটা রয়েছে৷ -
NOT_FOUND
: একটি লাইন আইটেম, পূরণের বিকল্প, বা প্রচার পাওয়া যাবে না। -
PRICE_CHANGED
: একটি আইটেমের দাম পরিবর্তিত হয়েছে৷
ফিঅ্যামাউন্ট রেঞ্জ
নিম্নলিখিত সারণিতে FeeAmountRange
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
minFeeAmount | Money | ফি এর পরিমাণ কম সীমাবদ্ধ.. | |
maxFeeAmount | Money | চার্জ পরিমাণের ঊর্ধ্বসীমা.. |
ফি পার্সেন্ট রেঞ্জ
নিচের সারণীটি FeePercentRange
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
minFeePercent | সংখ্যা | ফি শতাংশের নিম্ন সীমানা চার্জ করা হয়েছে। | |
maxFeePercent | সংখ্যা | ফি শতাংশের ঊর্ধ্বসীমা চার্জ করা হয়েছে। |
ফুডকার্ট এক্সটেনশন
ব্যবহারকারী সম্পর্কে বিশদ বিবরণ রয়েছে, যেমন পরিপূর্ণতা পছন্দ।
নিম্নলিখিত সারণীতে 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" } }
খাদ্য ত্রুটি এক্সটেনশন
একটি অনুরোধ প্রক্রিয়া করার সময় ঘটে যাওয়া এক বা একাধিক ত্রুটি সনাক্ত করে৷ নিম্নলিখিত টেবিলটি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 } } }
ফুডআইটেম এক্সটেনশন
খাদ্য আইটেমগুলির জন্য অ্যাড-অনগুলি সংজ্ঞায়িত করে।
নিম্নলিখিত টেবিলে FoodItemExtension
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
@type | কন্সট | প্রয়োজন। এই এক্সটেনশনের ধরন। এই ক্ষেত্রটি সর্বদা "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" এ সেট করা থাকে। মান: | |
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
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
id | স্ট্রিং | Google দ্বারা নির্ধারিত অনন্য আইডি। আপনি যখন একটি FoodOrderError বা AsyncOrderUpdateRequest পাঠান, সেই ক্ষেত্রে একটি কার্টে একই অফার আইডি সহ একাধিক আইটেম রয়েছে এমন ক্ষেত্রে পার্থক্য করতে এই ক্ষেত্রটি ব্যবহার করুন। উদাহরণ: | |
offerId | স্ট্রিং | আইটেম জন্য অফার আইডি. উদাহরণ: | |
name | স্ট্রিং | বিকল্পের নাম। উদাহরণ: | |
price | Money | ||
note | স্ট্রিং | বিকল্প সম্পর্কিত নোট। | |
quantity | সংখ্যা | বিকল্পগুলির জন্য যেগুলি আইটেম, আইটেমের সংখ্যা। উদাহরণ: | |
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 | স্ট্রিং | যখন আইটেম-স্তরের ত্রুটির জন্য এই ক্ষেত্রটি প্রয়োজন। এটি মেনু আইটেমগুলির জন্য Google-এর দ্বারা নির্ধারিত LineItem.id বা অ্যাড-অনগুলির জন্য FoodItemOption.id৷ | |
description | স্ট্রিং | ত্রুটির বর্ণনা। এই বিবরণটি অভ্যন্তরীণ লগিংয়ের জন্য এবং ব্যবহারকারীদের কাছে দৃশ্যমান নয়৷ | |
updatedPrice | Money | প্রয়োজন যখন একটি আইটেমের নতুন মূল্য যার কারণে ত্রুটি হয়েছে৷ এটি শুধুমাত্র তখনই প্রয়োজন যখন ত্রুটি "PRICE_CHANGED" হয়৷ | |
availableQuantity | পূর্ণসংখ্যা | প্রয়োজন যখন আইটেমের নতুন উপলব্ধ পরিমাণ যা ত্রুটি সৃষ্টি করেছে৷ এটি শুধুমাত্র তখনই প্রয়োজন যখন ত্রুটি "INVALID" বা "NOT_FOUND" হয়৷ "INVALID" এবং "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 } }
ফুডঅর্ডার এক্সটেনশন
অর্ডার সম্পর্কে পূর্ণতা তথ্য রয়েছে।
নিম্নলিখিত টেবিলে FoodOrderExtension
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
@type | কন্সট | এই এক্সটেনশনের ধরন। এই ক্ষেত্রটি সর্বদা "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension" এ সেট করা থাকে। মান: | |
availableFulfillmentOptions | তালিকা< FulfillmentOption > | অর্ডারের জন্য উপলব্ধ পূর্ণতা বিকল্পগুলি প্রতিনিধিত্ব করে। | |
optinForRemarketing | বুলিয়ান | আপনার বিপণন চ্যানেলে নির্বাচন করার জন্য ব্যবহারকারীর অনুরোধ। ডিফল্টরূপে, আপনি ব্যবহারকারীর সম্মতি ছাড়া বিপণন সামগ্রী পাঠাতে পারবেন না। optinForRemarketing সত্য হলে, আপনি ব্যবহারকারীর সদস্যতা নিতে পারেন। যদি optinForRemarketing মিথ্যা হয় বা উপস্থিত না থাকে, তাহলে আপনাকে অবশ্যই আপনার সিস্টেমে সাবস্ক্রিপশন স্ট্যাটাস রাখতে হবে। ব্যবহারকারীরা Google-এর মাধ্যমে অপ্ট আউট করতে পারবেন না, শুধুমাত্র আপনার মার্কেটিং চ্যানেলে দেওয়া একটি আনসাবস্ক্রিপশন ফাংশনের মাধ্যমে। এই পতাকা শুধুমাত্র SubmitOrderRequestMessage-এ উপস্থিত। |
নিম্নলিখিত উদাহরণ একটি 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
: ব্যবহারকারীর পছন্দ (ডেলিভারি বা পিকআপ) সংরক্ষণ করে। চেকআউট অনুরোধ পাঠানো হলে মূল্য সর্বদা 0 হয়। -
Checkout AppResponse
এ,ProposedOrder.extension.availableFulfillmentOptions
: এক বা একাধিক ডেলিভারি বিকল্প নির্ধারণ করে (বর্তমানে, শুধুমাত্র একটি বিকল্প সমর্থিত)। আপনিProposedOrder.otherItems
এ একটিLineItem
হিসাবে ডিফল্ট বিকল্পটি নির্দিষ্ট করুন।FulfillmentOption
এরofferId
ProposedOrder.otherItems
এ উল্লেখিতLineItem
এর আইডির সাথে মেলে।
নিম্নলিখিত সারণীটি FulfillmentOption
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
offerId | স্ট্রিং | এই পূর্ণতা বিকল্পের জন্য অনন্য শনাক্তকারী, যদি থাকে। | |
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 } }
পূরণের বিকল্প তথ্য
FulfillmentInfo
সম্পর্কিত তথ্য সংজ্ঞায়িত করে। নিম্নলিখিত সারণীটি FulfillmentOptionInfo
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
বৈশিষ্ট্যের নিম্নলিখিত গ্রুপগুলির মধ্যে ঠিক একটি প্রয়োজন। | |||
delivery | গ্রুপ 1 | DeliveryInfo | উপস্থিত থাকলে, ডেলিভারি অর্ডার নির্দেশ করে। |
pickup | গ্রুপ 2 | PickupInfo | উপস্থিত থাকলে, একটি পিকআপ অর্ডার নির্দেশ করে। |
ছবি
নিম্নলিখিত সারণীতে Image
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
sourceUrl | স্ট্রিং | প্রয়োজন। ছবির জন্য URL. সর্বনিম্ন, চিত্রটি 72x72 পিক্সেল হওয়া উচিত। সর্বোত্তম ফলাফলের জন্য, অন্তত 216x216 পিক্সেলের একটি ছবি ব্যবহার করুন। ছবিটি অবশ্যই 6 MB এবং 64 মেগাপিক্সেলের কম হতে হবে। |
লাইন আইটেম
একটি কার্টের বিষয়বস্তু সংজ্ঞায়িত করে (Cart.lineItems
) বা একটি অর্ডারের জন্য অতিরিক্ত চার্জ ( ProposedOrder.otherItems
)। নিম্নলিখিত সারণী LineItem
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
id | স্ট্রিং | একটি কার্টে একটি লাইন আইটেমের জন্য (ProposedOrder.cart.lineItems[0].id), এটি অর্ডার তৈরি করার সময় Google দ্বারা তৈরি করা অনন্য আইডি। একটি প্রস্তাবিত অর্ডারে (ProposedOrder.otherItems[0].id) একটি লাইনআইটেমের জন্য, যা ডেলিভারি ফি এবং ট্যাক্সের মতো আইটেম যোগ করতে ব্যবহৃত হয়, আইডির মান প্রদানকারী দ্বারা সংজ্ঞায়িত করা হয়। উদাহরণস্বরূপ, একটি কার্টে একই আইটেমগুলির মধ্যে দুটি আলাদা প্রস্তুতির নির্দেশাবলী রয়েছে (যেমন টপিংসের বিভিন্ন সেট সহ দুটি মাঝারি পিজ্জা)। এই ক্ষেত্রে, উভয় আইটেম একই বেস অফার আইডি আছে। আপনি যখন একটি আইটেম প্রত্যাখ্যান করা হয়েছে তা নির্দেশ করার জন্য একটি অর্ডার আপডেটের অনুরোধ পাঠান, তখন এই আইডিটিকে দ্ব্যর্থক হিসাবে ব্যবহার করুন৷ অন্য কথায়, যদি পিজ্জাগুলির একটিকে প্রত্যাখ্যান করা হয় কারণ এটিতে একটি নির্দিষ্ট টপিংয়ের অভাব রয়েছে, তাহলে আইডিটি Google-কে সাহায্য করে আপনি কোন আইটেমটি উল্লেখ করছেন তা নির্ধারণ করতে। অন্যান্য আইটেম ছাড়া এই ক্ষেত্রটি প্রয়োজনীয়। | |
name | স্ট্রিং | প্রয়োজন। লাইন আইটেমের নাম। এটি একটি ব্যবহারকারী-দৃশ্যমান স্ট্রিং, এবং সম্ভব হলে বাক্যের ক্ষেত্রে হওয়া উচিত (যেমন "ডেলিভারি ফি", "সার্ভিস চার্জ", "ট্যাক্স")। ব্যবহারকারীদের জন্য এই ক্ষেত্রটি 100টি অক্ষরে কাটা হয়েছে। | |
type | LineItemType | প্রয়োজন। | |
quantity | পূর্ণসংখ্যা | আইটেম সংখ্যা অন্তর্ভুক্ত. ProposedOrder.otherItems এর ক্ষেত্রে প্রযোজ্য নয়। | |
description | স্ট্রিং | আইটেম বর্ণনা. | |
price | Price | প্রয়োজন। জিনিস বা জিনিসের দাম। এই মানটি এই লাইন আইটেমের জন্য সমস্ত পণ্য বা পরিষেবার মোট মূল্য প্রতিফলিত করে (অন্য কথায়, যেকোনো অ্যাড-অনের খরচ যোগ করুন এবং পরিমাণ দ্বারা গুণ করুন)। উদাহরণস্বরূপ: যদি একটি $10 আইটেমের পরিমাণ 3 থাকে, তাহলে দাম হবে $30। একটি পিজ্জার জন্য যার মূল মূল্য $5 এবং একটি $1 অ্যাড-অন, মূল্য হবে $6৷ দুটি পিজ্জার জন্য (পরিমাণ = 2) যার মূল মূল্য $5 এবং প্রতিটি $1 অ্যাড-অন সহ, মূল্য হবে $12৷ প্রতিটি লাইন আইটেমের একটি মূল্য থাকা উচিত, এমনকি যদি মূল্য "0" হয়। যখন টাইপ ডিসকাউন্ট হয়, তখন একটি নেতিবাচক হিসাবে মান নির্দিষ্ট করুন (উদাহরণস্বরূপ, "-2")। | |
subLines | তালিকা< SublineNote > | ঐচ্ছিক এবং শুধুমাত্র বৈধ যদি টাইপ "নিয়মিত" হয়। চেকআউট অনুরোধ এবং অর্ডার জমা দেওয়ার অনুরোধে ব্যবহারকারীর কাছ থেকে একটি আইটেম-নির্দিষ্ট নোট এই ক্ষেত্রে পাঠানো হতে পারে। নিশ্চিত করুন যে নোটটি সরবরাহ করা হলে ব্যবসায়ী তা গ্রহণ করেন। এটি সাবলাইনস[0] হিসেবে অনুরোধে থাকবে 1টির বেশি আইটেম থাকতে হবে না। | |
offerId | স্ট্রিং | আইটেমের জন্য MenuItem-এর অফার আইডি। ProposedOrder.otherItems এর ক্ষেত্রে প্রযোজ্য নয়। | |
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
প্রকারের নিম্নলিখিত সম্ভাব্য মান রয়েছে:
-
REGULAR
: পণ্য লাইন আইটেম. Cart.lineItems এর জন্য প্রযোজ্য। -
TAX
: ট্যাক্স লাইন আইটেম. ProposedOrder.otherItems এর জন্য প্রযোজ্য। -
DISCOUNT
: ডিসকাউন্ট লাইন আইটেম। নোট করুন যে দাম নেতিবাচক হওয়া উচিত। ProposedOrder.otherItems এর জন্য প্রযোজ্য। -
GRATUITY
: গ্র্যাচুইটি লাইন আইটেম। সাধারণত একটি ব্যবহারকারী-নির্বাচিত টিপের জন্য SubmitOrderRequestMessage এর জন্য সংরক্ষিত। ProposedOrder.otherItems এর জন্য প্রযোজ্য। -
DELIVERY
: ডেলিভারি লাইন আইটেম. ProposedOrder.otherItems এর জন্য প্রযোজ্য। -
SUBTOTAL
: সাবটোটাল লাইন আইটেম। ProposedOrder.otherItems এর জন্য প্রযোজ্য। -
FEE
: অতিরিক্ত লাইন আইটেম অন্যান্য ধরনের দ্বারা আচ্ছাদিত নয়. ProposedOrder.otherItems এর জন্য প্রযোজ্য।
অবস্থান
খাবার অর্ডার করার জন্য একটি ঠিকানা উল্লেখ করে। শুধুমাত্র ডেলিভারি অর্ডারের গন্তব্য নির্দেশ করতে একটিCart
Location
ধরন ব্যবহার করা হয়। ব্যবহারকারী অর্ডার দিলে চূড়ান্ত স্থানটি TransactionDecisionValue
তেও উপস্থিত থাকে। পিকআপ নির্দিষ্ট করে এমন অর্ডারগুলির জন্য, একটি অবস্থান একেবারেই অন্তর্ভুক্ত নয় (এমনকি একটি খালিও নয়)। নিম্নলিখিত টেবিলে Location
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
coordinates | Coordinates | ||
formattedAddress | স্ট্রিং | অবস্থানের ঠিকানা প্রদর্শন করুন। উদাহরণ: | |
postalAddress | PostalAddress | ||
zipCode | স্ট্রিং | উদাহরণ: | |
city | স্ট্রিং | শহরের নাম। উদাহরণ: | |
notes | স্ট্রিং | অবস্থান সম্পর্কে নোট, যেমন গেট কোড। এটি 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 | স্ট্রিং | ব্যবসায়ীর আইডি। উল্লেখ করা হলে, রেস্টুরেন্ট ফিডে রেস্টুরেন্ট.@id এর সাথে মেলে। উদাহরণ: | |
name | স্ট্রিং | প্রয়োজন। ব্যবসায়ীর ব্যবহারকারীর দৃশ্যমান নাম। উদাহরণ: |
নিম্নলিখিত উদাহরণটি একটি Merchant
উপাদান দেখায়:
উদাহরণ
{ "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }
টাকা
নিচের সারণীতে Money
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
currencyCode | স্ট্রিং | প্রয়োজন। ISO 4217 ফর্ম্যাটে একটি 3-অক্ষরের মুদ্রা কোড। উদাহরণ: | |
units | স্ট্রিং | রাশির পুরো একক। উদাহরণস্বরূপ, যদি মুদ্রার কোড "USD" হয়, তাহলে "1" ইউনিট হল এক মার্কিন ডলার। উদাহরণ: | |
nanos | পূর্ণসংখ্যা | পরিমাণের ন্যানো (10^-9) ইউনিটের সংখ্যা। মান অবশ্যই -999,999,999 এবং +999,999,999 এর মধ্যে হতে হবে। নিম্নলিখিত নিয়মগুলি ব্যবহার করুন: যদি একক ধনাত্মক হয়, ন্যানো অবশ্যই ধনাত্মক বা শূন্য হতে হবে। যদি ইউনিট শূন্য হয়, ন্যানো ধনাত্মক, শূন্য বা ঋণাত্মক হতে পারে। একক ঋণাত্মক হলে, ন্যানো অবশ্যই ঋণাত্মক বা শূন্য হতে হবে। উদাহরণস্বরূপ $-1.75 ইউনিট = -1 এবং ন্যানো = -750,000,000 হিসাবে উপস্থাপিত হয়। উদাহরণ: |
নিম্নলিখিত উদাহরণ একটি Money
উপাদান দেখায়:
উদাহরণ 1
{ "currencyCode": "USD", "units": "36", "nanos": 730000000 }
উদাহরণ 2
{ "currencyCode": "EUR", "units": "10" }
অর্ডার
ট্যাক্স, ফি এবং ডেলিভারি চার্জ, সেইসাথে পেমেন্টের তথ্য সহ চূড়ান্ত অর্ডার রয়েছে। এই বস্তুটি আপনার ক্রিয়া দ্বারা একটিSubmit AppRequest
গৃহীত হয়েছে। নিম্নোক্ত সারণীটি Order
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
finalOrder | ProposedOrder | প্রয়োজন। যে আদেশের কারণে প্রস্তাবিত আদেশ। | |
googleOrderId | স্ট্রিং | প্রয়োজন। 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" } }
অর্ডার আপডেট
নিম্নলিখিত সারণীটিAppResponse
এ অন্তর্ভুক্ত OrderUpdate প্রকারের ক্ষেত্রগুলি বর্ণনা করে। নিম্নোক্ত সারণী OrderUpdate
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
actionOrderId | স্ট্রিং | প্রয়োজন। ইন্টিগ্রেটর সিস্টেমে অর্ডারের অনন্য আইডি যা আপডেট পাঠানোর অর্ডারটি সনাক্ত করতে ব্যবহৃত হয়। যদি receipt.user_visible_order_id একটি "CREATED" অর্ডারের জন্য OrderUpdate-এ অন্তত একবার প্রদান না করা হয়, তাহলে এই আইডিটি Google অর্ডার কার্ডে প্রদর্শিত ইনপুটেড ব্যবহারকারী দৃশ্যমান ID হবে। | |
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 | স্ট্রিং | আনুমানিক পিকআপের সময়, ISO 8601 টাইম স্ট্যাম্প ফর্ম্যাটে: "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" বা সময়কাল ফর্ম্যাট: "P( n)Y(n)M(n)DT(n)H(n)M(n)S"। উদাহরণস্বরূপ, PT90M 90 মিনিটের সময়কাল উপস্থাপন করে। ডিফল্ট মান "PT0M", নির্দেশ করে যে পছন্দের পিকআপ সময় যত তাড়াতাড়ি সম্ভব। তথ্যসূত্র: https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations। চেকআউট প্রতিক্রিয়ার সময় আনুমানিক পিকআপ সময় আপডেট করতে এটি ব্যবহার করুন। উদাহরণ: |
নিম্নলিখিত উদাহরণ একটি PickupInfo
উপাদান দেখায়:
উদাহরণ
{ "pickupTimeIso8601": "PT90M" }
ডাক ঠিকানা
নিম্নলিখিত সারণী PostalAddress
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
regionCode | স্ট্রিং | প্রয়োজন। একটি দুই-অক্ষরের দেশের কোড। উদাহরণ: | |
postalCode | স্ট্রিং | পোস্টাল কোড। উদাহরণ: | |
administrativeArea | স্ট্রিং | সর্বোচ্চ প্রশাসনিক উপবিভাগ যা একটি দেশ বা অঞ্চলের ডাক ঠিকানার জন্য ব্যবহৃত হয়। এটি একটি রাজ্য, একটি প্রদেশ, একটি ওব্লাস্ট বা একটি প্রিফেকচার হতে পারে। উদাহরণ: | |
locality | স্ট্রিং | এই অবস্থানের জন্য শহর বা শহর। বিশ্বের এমন অঞ্চলে যেখানে লোকালয়টি ভালভাবে সংজ্ঞায়িত করা হয় না বা এই কাঠামোর সাথে খাপ খায় না, স্থানীয়তা নির্দিষ্ট করবেন না এবং এর পরিবর্তে ঠিকানালাইন ক্ষেত্রটি ব্যবহার করুন। উদাহরণ: | |
addressLines | তালিকা<স্ট্রিং> | এক বা একাধিক লাইন যা আপনি রাস্তার ঠিকানা নির্দিষ্ট করতে ব্যবহার করতে পারেন। এই ক্ষেত্রটি সংশোধন করা উচিত নয় কারণ এতে অস্পষ্ট এলাকা থাকতে পারে। উদাহরণ: | |
recipients | তালিকা<স্ট্রিং> | একটি অর্ডারের জন্য প্রাপকদের তালিকা। এই ক্ষেত্রটি শুধুমাত্র বিলিং ঠিকানায় উপলব্ধ। |
নিম্নলিখিত উদাহরণ একটি PostalAddress
উপাদান দেখায়:
উদাহরণ
{ "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] }
দাম
নিম্নলিখিত সারণী Price
প্রকারের জন্য বৈশিষ্ট্য তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
type | Enum [ "ESTIMATE", "ACTUAL" ] | প্রয়োজন। প্রচার কুপন কোড. | |
amount | Money | প্রয়োজন। |
প্রমোশন
নিম্নোক্ত সারণী Promotion
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
coupon | স্ট্রিং | প্রয়োজন। প্রচার কুপন কোড. |
প্রস্তাবিত আদেশ
নিম্নোক্ত সারণী ProposedOrder
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
id | স্ট্রিং | প্রস্তাবিত আদেশের জন্য ঐচ্ছিক আইডি। | |
cart | Cart | প্রয়োজন। ব্যবহারকারীর আইটেম. | |
otherItems | তালিকা< LineItem > | প্রদানকারীর দ্বারা যোগ করা আইটেম, যেমন ডেলিভারি চার্জ, অন্যান্য ফি এবং ট্যাক্স। অন্যান্য আইটেমগুলিতে ব্যবহারকারীর দ্বারা যোগ করা গ্র্যাচুইটি এবং/অথবা ছাড়ও থাকতে পারে। 10টির বেশি আইটেম থাকতে হবে না। | |
image | Image | প্রস্তাবিত আদেশের সাথে যুক্ত ছবি। | |
totalPrice | Price | প্রয়োজন। প্রস্তাবিত অর্ডারের মোট মূল্য। | |
extension | FoodOrderExtension | প্রয়োজন। খাদ্য আদেশের জন্য পূর্ণতা তথ্য সংজ্ঞায়িত করে। | |
disclaimers | তালিকা< Disclaimer > | ডিসক্লেমার বার্তাগুলির সাথে মিলে যায় যা অর্ডার দেওয়ার আগে UI তে দেখানো হবে৷ |
নিম্নলিখিত উদাহরণ একটি 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 | স্ট্রিং | প্রয়োজন। |
টাইমস্ট্যাম্প
তারিখ এবং সময়, নিম্নলিখিত বিন্যাসে:"{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
নিম্নলিখিত টেবিলে 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
একটিCheckoutRequestMessage
হল actions.foodordering.intent.CHECKOUT
অভিপ্রায় সহ একটি AppRequest
।SubmitOrderRequestMessage
একটিSubmitOrderRequestMessage
হল actions.foodordering.intent.TRANSACTION_DECISION
উদ্দেশ্য সহ একটি AppRequest
৷কথোপকথন
একটিConversation
শুধুমাত্র একটি সেশনের জন্য অনন্য। প্রয়োজনে আপনি একাধিক Checkout
এবং SubmitOrder
অ্যাকশন একসাথে লিঙ্ক করতে এটি ব্যবহার করতে পারেন। নিম্নলিখিত সারণী Conversation
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
conversationId | স্ট্রিং | প্রয়োজন। কথোপকথনের জন্য অনন্য আইডি। |
নিম্নলিখিত উদাহরণ একটি Conversation
উপাদান দেখায়:
উদাহরণ
{ "conversationId": "CQnJ7Z4i7UmvEZ9ph3AxyZRJ" }
ইনপুট
একটি কার্ট চেক আউট জন্য প্রত্যাশিত আর্গুমেন্ট.
নিম্নলিখিত টেবিলটি Input
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
intent | Enum [ "actions.foodordering.intent.CHECKOUT", "actions.intent.TRANSACTION_DECISION" ] | প্রয়োজন। চেকআউট অনুরোধ বার্তার জন্য "actions.foodordering.intent.CHECKOUT" বা অর্ডার অনুরোধ বার্তা জমা দেওয়ার জন্য "actions.intent.TRANSACTION_DECISION" সেট করুন৷ | |
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" } } } } ] } } }
উদাহরণ 3
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "error": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodErrorExtension", "foodOrderErrors": [ { "error": "CLOSED", "description": "The restaurant is closed." } ] } } } ] } } }
উদাহরণ 4
{ "expectUserResponse": false, "finalResponse": { "richResponse": { "items": [ { "structuredResponse": { "checkoutResponse": { "proposedOrder": { "otherItems": [ { "name": "Delivery Fees", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "3", "nanos": 500000000 } }, "type": "DELIVERY" }, { "name": "Tax", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "1", "nanos": 370000000 } }, "type": "TAX" }, { "name": "Promotion", "subLines": [], "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "-5", "nanos": 0 } }, "id": "OWG_ACTIVE_CODE", "type": "DISCOUNT" } ], "cart": { "merchant": { "id": "https://www.exampleprovider.com/merchant/id1", "name": "Falafel Bite" }, "lineItems": [ { "name": "Pita Chips", "type": "REGULAR", "id": "sample_item_offer_id_1", "quantity": 1, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "2", "nanos": 750000000 } }, "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1", "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension" } } ], "promotions": [ { "coupon": "OWG_ACTIVE_CODE" } ], "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension", "fulfillmentPreference": { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } } } } }, "totalPrice": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "14", "nanos": 860000000 } }, "extension": { "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension", "availableFulfillmentOptions": [ { "fulfillmentInfo": { "pickup": { "pickupTimeIso8601": "P0M" } }, "expiresAt": "2018-04-10T01:20:08.471Z" } ] } }, "paymentOptions": { "googleProvidedOptions": { "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:publishableKey": "pk_live_stripe_client_key", "stripe:version": "2017-04-06" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "VISA", "JCB" ], "prepaidCardDisallowed": true, "billingAddressRequired": true } } } } } ] } } }
CheckoutResponseMessage
একটিCheckoutResponseMessage
হল একটি AppResponse
যার একটি checkoutResponse
বা StructuredResponse
error
।SubmitOrderResponseMessage
একটিSubmitOrderResponseMessage
হল একটি AppResponse
যার একটি orderUpdate
StructuredResponse
।চূড়ান্ত প্রতিক্রিয়া
কার্ট চেকআউট বা SubmitOrderRequestMessage এ আপনার প্রতিক্রিয়া।
নিম্নলিখিত টেবিলটি FinalResponse
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
richResponse | RichResponse | প্রয়োজন। CheckoutRequestMessage বা SubmitOrderRequestMessage-এ আপনার প্রতিক্রিয়া রয়েছে৷ |
চেকআউট প্রতিক্রিয়া
নিম্নলিখিত টেবিলটি 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." } } ] }
আইটেম
একটি কার্ট চেকআউট বা SubmitOrderRequestMessage এ আপনার প্রতিক্রিয়া রয়েছে৷
নিম্নলিখিত টেবিলটি Item
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
structuredResponse | StructuredResponse | প্রয়োজন। |
রিচ রেসপন্স
একটি কার্ট চেকআউট আপনার প্রতিক্রিয়া রয়েছে.
নিম্নলিখিত টেবিলটি RichResponse
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
items | তালিকা< Item > | প্রয়োজন। ঠিক 1টি আইটেম থাকতে হবে। |
স্ট্রাকচার্ড রেসপন্স
CheckoutResponseMessage এর জন্য, এটি নিম্নলিখিতগুলির মধ্যে একটি হতে পারে: CheckoutResponse একটি সফল চেকআউট নির্দেশ করে৷ বা FoodErrorExtension: চেকআউটের সময় একটি ব্যর্থতা নির্দেশ করে। প্রতিক্রিয়াতে একটি সংশোধন করা প্রস্তাবিত অর্ডার এবং পেমেন্ট অপশন বা কোনো পেমেন্ট অপশন ছাড়া একটি ত্রুটি বার্তা অন্তর্ভুক্ত থাকতে পারে। SubmitOrderResponseMessage এর জন্য, শুধুমাত্র অর্ডারআপডেট প্রযোজ্য।
নিম্নলিখিত সারণীটি StructuredResponse
টাইপের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
বৈশিষ্ট্যের নিম্নলিখিত গ্রুপগুলির মধ্যে ঠিক একটি প্রয়োজন। | |||
checkoutResponse | গ্রুপ 1 | CheckoutResponse | আইটেম প্লাস ট্যাক্স এবং ডিসকাউন্ট চেক আউট. |
error | গ্রুপ 2 | FoodErrorExtension | কার্ট আইটেমগুলিতে ত্রুটিগুলি পরিলক্ষিত হয়েছে৷ ত্রুটির প্রকৃতির উপর নির্ভর করে, এই সম্পত্তিতে একটি সংশোধন করা প্রস্তাবিত অর্ডার এবং অর্থপ্রদানের বিকল্পগুলি অন্তর্ভুক্ত থাকতে পারে, বা কোনও অর্থপ্রদানের বিকল্প ছাড়াই একটি ত্রুটি বার্তা অন্তর্ভুক্ত থাকতে পারে৷ |
orderUpdate | গ্রুপ 3 | OrderUpdate |
অ্যাসিঙ্ক্রোনাস অর্ডার আপডেট
এই বিভাগটি উচ্চ-স্তরের প্রকারগুলি বর্ণনা করে যা একটি সাধারণ খাদ্য অর্ডার বিল্ট-ইন অ্যাকশন ইন্টারঅ্যাকশনের অনুরোধ এবং প্রতিক্রিয়া তৈরি করে।AsyncOrderUpdateRequestMessage
একটি অর্ডার জমা এবং নিশ্চিত হওয়ার পরে পরিবর্তনের ব্যবহারকারীকে অবহিত করে। উদাহরণস্বরূপ, আপনি ব্যবহারকারীকে অবহিত করতে পারেন যে অর্ডারটি ট্রানজিটে রয়েছে বা মূল্য পরিবর্তন হয়েছে কিনা। আরও তথ্যের জন্য, দেখুন নিম্নলিখিত সারণী AsyncOrderUpdateRequestMessage
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
isInSandbox | বুলিয়ান | নির্দেশ করে যে যে অর্ডারটির জন্য এই আপডেটটি পাঠানো হয়েছিল সেটি একটি স্যান্ডবক্স পেমেন্ট৷ | |
customPushMessage | CustomPushMessage | প্রয়োজন। অনুরোধের জন্য অর্ডার আপডেট রয়েছে। |
নিম্নলিখিত উদাহরণ একটি 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 একটি HTTP 200 স্ট্যাটাস এবং একটি খালি বডি সহ প্রতিক্রিয়া জানায়৷ আপডেটটি ব্যর্থ হলে, Google কেন অর্ডার আপডেট ব্যর্থ হয়েছে সে সম্পর্কে বিশদ বিবরণ সহ প্রতিক্রিয়া জানায়।অর্ডার আপডেট প্রকার
বোতাম
একটি ব্যবহারকারী ইন্টারফেস উপাদান সংজ্ঞায়িত করে যা আপনি ব্যবহারকারীর মিথস্ক্রিয়া প্রদান করতে যোগ করতে পারেন।
নিম্নলিখিত টেবিলে Button
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
title | স্ট্রিং | প্রয়োজন। ডিসপ্লে লেবেল। সঠিক রেন্ডারিং নিশ্চিত করতে 30 অক্ষর বা তার কম সহ বাক্যের কেস ব্যবহার করুন। উদাহরণ: | |
openUrlAction | OpenUrlAction | প্রয়োজন। |
নিম্নলিখিত উদাহরণ একটি Button
উপাদান দেখায়:
উদাহরণ
{ "title": "Send us feedback", "openUrlAction": { "url": "mailto:person@example.com" } }
বাতিলকরণের তথ্য
নিম্নলিখিত সারণীটি CancellationInfo
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
reason | স্ট্রিং | প্রয়োজন। OrderState.state "বাতিল" হলে প্রত্যাখ্যানের জন্য প্রদর্শনযোগ্য পাঠ্য কারণ। উদাহরণ: |
নিম্নলিখিত উদাহরণটি একটি CancellationInfo
উপাদান দেখায়:
উদাহরণ
{ "reason": "Insufficient inventory" }
ফুডঅর্ডারআপডেট এক্সটেনশন
এই ধরনের একটি ব্যবহারকারীকে একটি আনুমানিক ব্যবধান প্রদান করে যখন অর্ডারটি বিতরণ করা হবে বা পিকআপের জন্য প্রস্তুত হবে। এই এক্সটেনশনটি OrderUpdate
পাঠান যখনই তথ্যটি পাওয়া যায় বা এটি সর্বশেষ পাঠানোর পর থেকে পরিবর্তিত হয়।
পূরণের ব্যবধানের জন্য একটি রক্ষণশীল অনুমান প্রদান করুন যাতে ব্যবহারকারীর প্রত্যাশা ধারাবাহিকভাবে পূরণ হয়। উদাহরণস্বরূপ, যদি অর্ডারটি আজ 13:00 এ বিতরণ করা হবে বলে অনুমান করা হয়, তাহলে আপনাকে একটি আনুমানিক ব্যবধান পাঠাতে হবে যা ট্রাফিক অবস্থার কারণে পরিবর্তনের সাথে সামঞ্জস্যপূর্ণ, যেমন আজ 12:45 থেকে 13:15 এ।
একটি ISO 8601 সময়কাল বা টাইমস্ট্যাম্পকে বোঝানো হয় OrderUpdate
updateTime
থেকে (সংক্ষেপে, "এখন") updateTime
প্লাস duration
পর্যন্ত ব্যবধান বোঝাতে। "এখন" আসলে একটি যুক্তিসঙ্গত প্রত্যাশা না হলে এই বিন্যাসটি ব্যবহার করবেন না।
একটি ISO 8601 ব্যবধানকে ব্যবধানের শুরু থেকে শেষ পর্যন্ত ব্যবধান বোঝাতে ব্যাখ্যা করা হয়।
নিম্নলিখিত টেবিলে FoodOrderUpdateExtension
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
@type | কন্সট | এই এক্সটেনশনের ধরন। এই ক্ষেত্রটি সর্বদা "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension" এ সেট করা থাকে। মান: | |
estimatedFulfillmentTimeIso8601 | স্ট্রিং | আনুমানিক সময় যখন অর্ডার বিতরণ করা হবে বা পিকআপের জন্য প্রস্তুত হবে। স্ট্রিংটি অবশ্যই ISO 8601 ফর্ম্যাটে হতে হবে এবং একটি নির্দিষ্ট সময়ের পরিবর্তে একটি ব্যবধানের সাথে সঙ্গতিপূর্ণ হতে হবে৷ গ্রহণযোগ্য নিয়মাবলী হল: বিরতি, সময়কাল এবং তারিখ/সময়। এই ক্ষেত্রটি SubmitOrderResponseMessage, বা AsyncOrderUpdateRequestMessage-এ পাঠানো যেতে পারে যখন তথ্য উপলব্ধ হয় বা কোনও পরিবর্তন হয়, যেমন তাড়াতাড়ি বা বিলম্বিত আগমন। উদাহরণ: | |
foodOrderErrors | তালিকা< FoodOrderError > | পোস্ট-অর্ডার ঘটে যাওয়া ত্রুটিগুলি বর্ণনা করে৷ প্রতি কার্ট বা আইটেম প্রতি একটি ত্রুটি প্রস্তাবিত. RejectionInfo দ্বারা কভার না করা কোনো ত্রুটির জন্য FoodOrderUpdateExtension.FoodOrderErrors ব্যবহার করুন। 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 টাইমস্ট্যাম্প | FoodOrderingUpdateExtension মেসেজে আনুমানিকFulfillmentTimeIso8601 ব্যবহার করুন |
pickupTime | গ্রুপ 2 | ISO টাইমস্ট্যাম্প | FoodOrderingUpdateExtension মেসেজে আনুমানিকFulfillmentTimeIso8601 ব্যবহার করুন |
নিম্নলিখিত উদাহরণটি একটি FulfillmentInfo
উপাদান দেখায়:
উদাহরণ 1
{ "deliveryTime": "2017-05-10T02:36:38.803Z" }
উদাহরণ 2
{ "pickupTime": "2019-12-26T07:24:27.803Z" }
InTransitInfo
নিম্নলিখিত সারণীতে InTransitInfo
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করা হয়েছে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
updatedTime | ISO টাইমস্ট্যাম্প | FoodOrderingUpdateExtension মেসেজে আনুমানিকFulfillmentTimeIso8601 ব্যবহার করুন |
নিম্নলিখিত উদাহরণটি একটি InTransitInfo
উপাদান দেখায়:
উদাহরণ
{ "updatedTime": "2017-05-10T02:36:38.803Z" }
লাইন আইটেম আপডেট
নিম্নলিখিত সারণী LineItemUpdate
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
orderState | OrderState | ||
price | Price | ||
reason | স্ট্রিং | পরিবর্তনের কারণ। মূল্য পরিবর্তনের জন্য প্রয়োজন. |
নিম্নলিখিত উদাহরণ একটি LineItemUpdate
উপাদান দেখায়:
উদাহরণ
{ "orderState": { "state": "CONFIRMED", "label": "Provider confirmed" }, "price": { "type": "ESTIMATE", "amount": { "currencyCode": "USD", "units": "5", "nanos": 500000000 } }, "reason": "Menu updated prices." }
OpenUrlAction
নিম্নলিখিত টেবিলটি OpenUrlAction
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
url | স্ট্রিং | প্রয়োজন। বোতামে ক্লিক বা স্পর্শ করে ক্রিয়াটি ট্রিগার হয়। প্রযোজ্য উপসর্গের তালিকা অর্ডার ম্যানেজমেন্ট অ্যাকশন টাইপের উপর নির্ভর করে। "EMAIL": উপসর্গটি অবশ্যই "mailto" হতে হবে। "ক্যাল": উপসর্গটি অবশ্যই "টেল" হতে হবে। "CUSTOMER_SERVICE": উপসর্গটি হতে হবে "mailto", "tel", "http", বা "https"। উদাহরণ: |
অর্ডার ম্যানেজমেন্ট অ্যাকশন
অর্ডার ম্যানেজমেন্ট ব্যবহারকারীদের পোস্ট-অর্ডার সমর্থন পেতে সক্ষম করে এবং প্রতিটি OrderUpdate
এ জমা অর্ডার AppResponse
মধ্যে পাঠানো উচিত এবং একটি নির্দিষ্ট অর্ডারের জন্য পাঠানো প্রতিটি পরবর্তী AsyncOrderUpdateRequestMessage
অর্ডার ম্যানেজমেন্ট অ্যাকশন রাজ্যের উপর ভিত্তি করে পরিবর্তিত হতে পারে।
উদাহরণস্বরূপ, "তৈরি করা" অবস্থায়, CUSTOMER_SERVICE
আপনার গ্রাহক সহায়তা টেলিফোনকে উল্লেখ করতে পারে। তারপর, "কনফার্মড" অবস্থায়, CUSTOMER_SERVICE
রেস্তোরাঁর টেলিফোনে পরিবর্তন করতে পারে যদি এটি গ্রাহকের যোগাযোগের সর্বোত্তম পয়েন্ট হয়ে ওঠে। একইভাবে, একবার অর্ডারটি "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" } } }
অর্ডার ম্যানেজমেন্ট অ্যাকশন টাইপ
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 | স্ট্রিং | প্রয়োজন। রাজ্যের জন্য ব্যবহারকারী-দৃশ্যমান প্রদর্শন স্ট্রিং। বাক্যের ক্ষেত্রে ব্যবহার করুন। উদাহরণ: |
নিম্নলিখিত উদাহরণ একটি OrderState
উপাদান দেখায়:
উদাহরণ
{ "state": "CONFIRMED", "label": "Provider confirmed" }
OrderStateEnum
OrderState
সম্পর্কিত প্রকারগুলি সংজ্ঞায়িত করে। OrderStateEnum
প্রকারের নিম্নলিখিত সম্ভাব্য মান রয়েছে:
-
CREATED
: ইন্টিগ্রেটার দ্বারা তৈরি অর্ডার এবং সরবরাহকারীর দ্বারা নিশ্চিতকরণের জন্য অপেক্ষা করা। "অর্ডার করা" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
CONFIRMED
: অর্ডার সরবরাহকারী দ্বারা নিশ্চিত করা এবং সক্রিয়। "স্বীকৃত" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
REJECTED
: ইন্টিগ্রেটার বা সরবরাহকারী দ্বারা প্রত্যাখ্যান আদেশ। "অস্বীকৃত" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
CANCELLED
: ব্যবহারকারী অর্ডার বাতিল করেছেন। "বাতিল" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
IN_PREPARATION
: খাবার প্রস্তুত করা হচ্ছে। "স্থিতি অজানা" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
READY_FOR_PICKUP
: খাবার পিকআপের জন্য প্রস্তুত। "পিকআপের জন্য প্রস্তুত" ক্রয়ের স্থিতি সম্পর্কিত। -
IN_TRANSIT
: অর্ডার বিতরণ করা হচ্ছে। "অগ্রগতি" ক্রয়ের স্থিতির সাথে সম্পর্কিত। -
FULFILLED
: ব্যবহারকারী যা অর্ডার করা হয়েছিল তা পেয়েছে। "পিক আপ" ক্রয়ের স্থিতির সাথে সম্পর্কিত।
প্রাপ্তি
এই প্রকারটি জমা দেওয়ারAppResponse
মধ্যে প্রেরণ করুন, যেখানে OrderState
"নিশ্চিত", "পরিপূর্ণ", বা "ইন_ট্রানসিত" রয়েছে। যখন userVisibleOrderId
উপলব্ধ হয় তখন রসিদটি প্রেরণ করুন। আপনার পরবর্তী আপডেটগুলিতে রসিদ প্রেরণ চালিয়ে যাওয়ার দরকার নেই। নিম্নলিখিত টেবিলটি Receipt
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
userVisibleOrderId | স্ট্রিং | প্রয়োজন। যদি অর্ডারটি "নিশ্চিত", "IN_TRANSIT", বা "পরিপূর্ণ" হয় তবে প্রয়োজনীয়। এই ক্ষেত্রটি এই ক্রমের জন্য একক ব্যবহারকারী-মুখী আইডি (সাধারণত রেস্তোঁরাটির অর্ডার আইডি), ইন্টিগ্রেটারের প্রাপ্তি এবং গুগল অর্ডার কার্ড উভয়ই প্রদর্শিত হয়। ব্যবহারকারী অবশ্যই সরবরাহকারী এবং ইন্টিগ্রেটারের সাথে গ্রাহক পরিষেবার জন্য তাদের অর্ডারটি উল্লেখ করতে এই আইডিটি ব্যবহার করতে সক্ষম হতে হবে। আপনাকে কেবল কোনও প্রদত্ত অর্ডারআপডেটে এই আইডি সরবরাহ করতে হবে। যতক্ষণ না এটি সরবরাহ করা হয়, অ্যাকশন অর্ডারআইডিটি হ'ল ব্যবহারযোগ্য অর্ডারআইডি। উদাহরণস্বরূপ, অর্ডারটি রেস্তোঁরা দ্বারা নিশ্চিত না হওয়া পর্যন্ত আপনার কোনও ব্যবহারযোগ্য অর্ডারড নাও থাকতে পারে। একবার নিশ্চিত হয়ে গেলে, আপনাকে অবশ্যই একটি অর্ডারআপডেট এবং একটি রশিদ সহ একটি অ্যাসিঙ্কার্ডারআপডেটারেকস্টমেসেজ প্রেরণ করতে হবে। |
নিম্নলিখিত উদাহরণটি একটি Receipt
উপাদান দেখায়:
উদাহরণ
{ "userVisibleOrderId": "userVisibleId1234" }
প্রত্যাখ্যান info
নিম্নলিখিত টেবিলটি RejectionInfo
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
type | RejectionType | প্রয়োজন। | |
reason | স্ট্রিং | অভ্যন্তরীণ লগিংয়ের জন্য ব্যবহৃত প্রত্যাখ্যানের কারণ। এই ক্ষেত্রটি ব্যবহারকারীদের কাছে দৃশ্যমান নয়। |
নিম্নলিখিত উদাহরণটি একটি 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 | স্ট্রিং | প্রয়োজন। রসিদে প্রদর্শিত পেমেন্ট ইনস্ট্রুমেন্টের নাম। উদাহরণ: | |
onFulfillmentPaymentData | OnFulfillmentPaymentData | পেমেন্টটাইপ "অন_ফুলফিলমেন্ট" এর জন্য অতিরিক্ত ডেটা। উদাহরণস্বরূপ, নগদ বা কার্ড পরিপূর্ণতায় সমর্থিত কিনা তা নির্দিষ্ট করতে আপনি এই ক্ষেত্রটি ব্যবহার করতে পারেন। |
নিম্নলিখিত উদাহরণটি একটি ActionProvidedPaymentOptions
উপাদানগুলি দেখায়:
উদাহরণ
{ "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } }
অনুমোদিত
AllowedAuthMethods
প্রকারের নিম্নলিখিত সম্ভাব্য মানগুলি রয়েছে:
-
PAN_ONLY
: ব্যবহারকারীর গুগল অ্যাকাউন্টের সাথে ফাইলটিতে সঞ্চিত পেমেন্ট কার্ডগুলির সাথে যুক্ত প্রমাণীকরণ পদ্ধতি। ফেরত প্রদানের ডেটাতে মেয়াদোত্তীর্ণ মাস এবং মেয়াদোত্তীর্ণ বছর সহ ব্যক্তিগত অ্যাকাউন্ট নম্বর (প্যান) অন্তর্ভুক্ত রয়েছে।
অনুমোদিত কার্ডনেট ওয়ার্কস
AllowedCardNetworks
টাইপের নিম্নলিখিত সম্ভাব্য মানগুলি রয়েছে:
-
AMEX
-
DISCOVER
-
INTERAC
-
JCB
-
MASTERCARD
-
VISA
BillingAddress প্যারামিটার
এই অবজেক্টটি আপনাকে অনুরোধ করা বিলিং ঠিকানার জন্য অতিরিক্ত ক্ষেত্রগুলি সেট করতে দেয়।
নিম্নলিখিত টেবিলটি BillingAddressParameters
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
format | স্ট্রিং | লেনদেন সম্পূর্ণ করতে বিলিং ঠিকানা বিন্যাস প্রয়োজন। মিনিট: নাম, দেশের কোড এবং ডাক কোড। পূর্ণ: নাম, রাস্তার ঠিকানা, অঞ্চল, অঞ্চল, দেশ কোড এবং ডাক কোড। |
নিম্নলিখিত উদাহরণটি একটি BillingAddressParameters
উপাদান দেখায়:
উদাহরণ 1
{ "format": "MIN" }
উদাহরণ 2
{ "format": "FULL" }
কার্ডপ্যারামিটার
গুগল পে এপিআইয়ের জন্য আপনার সাইটের সমর্থন কনফিগার করতে এই অবজেক্টটি ব্যবহার করুন।
নিম্নলিখিত টেবিলটি CardParameters
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
allowedAuthMethods | তালিকা <কনস্ট> | প্রয়োজন। ক্ষেত্রগুলি একটি কার্ড লেনদেন প্রমাণীকরণ করতে সমর্থিত। 1 টিরও কম আইটেম থাকতে হবে না। | |
allowedCardNetworks | তালিকা < AllowedCardNetworks > | প্রয়োজন। গুগল পে এপিআই দ্বারা সমর্থিত এক বা একাধিক কার্ড নেটওয়ার্ক যা আপনি সমর্থন করেন। 1 টিরও কম আইটেম থাকতে হবে না। | |
billingAddressRequired | বুলিয়ান | আপনার একটি বিলিং ঠিকানা প্রয়োজন হলে সত্য সেট করুন। লেনদেনটি প্রক্রিয়া করার প্রয়োজন হলে কেবল একটি বিলিং ঠিকানার জন্য অনুরোধ করুন। অতিরিক্ত ডেটা অনুরোধগুলি চেকআউট প্রক্রিয়াতে ঘর্ষণ বাড়িয়ে তুলতে পারে এবং কম রূপান্তর হারের দিকে পরিচালিত করে। | |
billingAddressParameters | BillingAddressParameters | বিলিংএডড্রেস্রেকোয়ার্ড যদি সত্যে সেট করা থাকে তবে প্রত্যাশিত ক্ষেত্রগুলি ফিরে আসে। | |
cvcRequired | বুলিয়ান | টাইমসফমনি ব্যবহার করে যদি সত্যে সেট করুন, অন্যান্য সমস্ত পেমেন্ট প্রসেসরের জন্য মিথ্যা। |
নিম্নলিখিত উদাহরণটি একটি CardParameters
উপাদান দেখায়:
উদাহরণ 1
{ "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "AMEX", "DISCOVER" ], "billingAddressRequired": false, "cvcRequired": false }
উদাহরণ 2
{ "allowedAuthMethods": [ "PAN_ONLY" ], "allowedCardNetworks": [ "AMEX", "DISCOVER" ], "billingAddressRequired": true, "billingAddressParameters": { "format": "MIN" }, "cvcRequired": false }
গুগলপ্রোভাইডপেইমেন্টিনস্ট্রুমেন্ট
নিম্নলিখিত টেবিলটি GoogleProvidedPaymentInstrument
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
instrumentToken | স্ট্রিং | প্রয়োজন। পূর্বে নির্দিষ্ট গুগলপ্রোভাইডপেইমেন্টোপেশনগুলি অনুযায়ী অংশগ্রহণকারী গুগল পে প্রসেসরের সাথে ব্যবহারকারীকে চার্জ করার জন্য অর্থ প্রদানের টোকেনযুক্ত বেস 64৪-এনকোডযুক্ত স্ট্রিং। | |
billingAddress | PostalAddress | অর্থ প্রদানের জন্য বিলিং ঠিকানা। |
নিম্নলিখিত উদাহরণটি একটি GoogleProvidedPaymentInstrument
উপাদান দেখায়:
উদাহরণ
{ "instrumentToken": "abcd", "billingAddress": { "regionCode": "US", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1350 Charleston Road" ] } }
গুগলপ্রোভাইডপেমেন্টোপশনস
গুগল সরবরাহিত অর্থ প্রদানের পদ্ধতির জন্য প্রয়োজনীয়তা।
নিম্নলিখিত টেবিলটি GoogleProvidedPaymentOptions
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
facilitationSpecification | স্ট্রিং | একটি স্ট্রিং হিসাবে একটি পেমেন্টড্যাটারেকুয়েস্ট জসন। গুগল পে এপিআইয়ের জন্য আপনার সাইটের সমর্থন কনফিগার করতে এই অবজেক্টটি ব্যবহার করুন। | |
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 }
উদাহরণ 3
{ "tokenizationParameters": { "tokenizationType": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:publishableKey": "pk_live_stripe_client_key", "stripe:version": "2017-04-06" } }, "supportedCardNetworks": [ "AMEX", "DISCOVER", "MASTERCARD", "VISA", "JCB" ], "prepaidCardDisallowed": true, "billingAddressRequired": true }
মার্চেন্টিনফো
গুগল পে এপিআইয়ের জন্য আপনার সাইটের সমর্থন কনফিগার করতে এই অবজেক্টটি ব্যবহার করুন।
নিম্নলিখিত টেবিলটি MerchantInfo
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
merchantId | স্ট্রিং | গুগল বেতন দ্বারা আপনাকে গুগল মার্চেন্ট আইডেন্টিফায়ার জারি করা হয়েছে। | |
merchantName | স্ট্রিং | প্রয়োজন। মার্চেন্টের নামটি ইউটিএফ -8 হিসাবে এনকোড করা হয়েছে। বণিকের নাম পেমেন্ট শীটে রেন্ডার করা হয়। |
অনফুলফিলমেন্টপেমেন্টডাটা
পেমেন্ট টাইপ "অন_ফুলফিলমেন্ট" এর জন্য অতিরিক্ত ডেটা প্রেরণে এই অবজেক্টটি ব্যবহার করুন।
নিম্নলিখিত টেবিলটি OnFulfillmentPaymentData
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
supportedPaymentOptions | তালিকা < PaymentOptionsEnums > | অর্ডার পূরণের সময় ব্যবহারকারীর কাছে উপলব্ধ অর্থের বিকল্পগুলির তালিকা। |
নিম্নলিখিত উদাহরণটি একটি OnFulfillmentPaymentData
উপাদান দেখায়:
উদাহরণ
{ "supportedPaymentOptions": [ "Cash", "Card" ] }
পরামিতি
TokenizationParameters
সম্পর্কিত প্রকারগুলি সংজ্ঞায়িত করে।
নিম্নলিখিত টেবিলটি Parameters
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
gateway | স্ট্রিং | প্রয়োজন। উদাহরণ: | |
gatewayMerchantId | স্ট্রিং | ||
[additionalKey: 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" }
পেমেন্ট ডেটা অনুরোধ
গুগল পে এপিআইয়ের জন্য আপনার সাইটের সমর্থন কনফিগার করতে এই অবজেক্টটি ব্যবহার করুন।
নিম্নলিখিত টেবিলটি PaymentDataRequest
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
apiVersion | কন্সট | প্রয়োজন। মেজর এপিআই সংস্করণ। মান: | |
apiVersionMinor | কন্সট | প্রয়োজন। ক্ষুদ্র API সংস্করণ। মান: | |
merchantInfo | MerchantInfo | প্রয়োজন। (গুগল পে মার্চেন্ট আইডি) বণিক সম্পর্কে তথ্য যা অর্থ প্রদানের ডেটা অনুরোধ করে। | |
allowedPaymentMethods | তালিকা < PaymentMethod > | প্রয়োজন। গুগল পে এপিআই দ্বারা সমর্থিত এক বা একাধিক অর্থ প্রদানের পদ্ধতির জন্য সমর্থন নির্দিষ্ট করে। | |
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, "billingAddressParameters": { "format": "FULL" }, "cvcRequired": false }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "stripe", "stripe:version": "2019-05-16", "stripe:publishableKey": "pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA" } } } ], "transactionInfo": { "currencyCode": "INR", "totalPriceStatus": "ESTIMATED", "totalPrice": "185.00" } }
পেমেন্টইনফো
একটি আদেশের জন্য অর্থ প্রদান সম্পর্কিত তথ্য।
নিম্নলিখিত টেবিলটি PaymentInfo
প্রকারের জন্য বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
displayName | স্ট্রিং | প্রয়োজন। প্রাপ্তিতে প্রদর্শনের জন্য অর্থ প্রদানের যন্ত্রের ব্যবহারকারী-দৃশ্যমান নাম। | |
paymentType | PaymentType | প্রয়োজন। | |
googleProvidedPaymentInstrument | GoogleProvidedPaymentInstrument | টোকেন যা ক্রিয়া দ্বারা ব্যবহার করা যেতে পারে। আপনি যদি চেকআউটট্রেসপোনসেমেসেজে অর্থ প্রদানের বিকল্প হিসাবে গুগলপ্রোভাইডপেন্টপেশনগুলি নির্দিষ্ট করে থাকেন তবে কেবল এটি নির্দিষ্ট করুন। |
নিম্নলিখিত উদাহরণটি একটি 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" }
পেমেন্ট পদ্ধতি
গুগল পে এপিআইয়ের জন্য আপনার সাইটের সমর্থন কনফিগার করতে এই অবজেক্টটি ব্যবহার করুন।
নিম্নলিখিত টেবিলটি PaymentMethod
প্রকারের বৈশিষ্ট্যগুলি তালিকাভুক্ত করে:
সম্পত্তি | টাইপ | বর্ণনা | |
---|---|---|---|
type | কন্সট | প্রয়োজন। সমর্থিত অর্থ প্রদানের পদ্ধতির জন্য সংক্ষিপ্ত শনাক্তকারী। শুধুমাত্র কার্ড বর্তমানে সমর্থিত। মান: | |
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 | অ্যাকশনপ্রভাইডঅপশনগুলির সাথে পারস্পরিক একচেটিয়া। জিপিএই ব্যবহার করে অনলাইন পেমেন্টের জন্য এটি ব্যবহার করুন। |
actionProvidedOptions | গ্রুপ 2 | ActionProvidedPaymentOptions | গুগলপ্রোভাইডোপশনগুলির সাথে পারস্পরিক একচেটিয়া। এটি "নগদ অন ডেলিভারি" বা "পরিপূর্ণতার উপর অর্থ প্রদান" এর জন্য ব্যবহার করুন। |
নিম্নলিখিত উদাহরণটি একটি 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
{ "googleProvidedOptions": { "facilitationSpecification": "{\"apiVersion\": 2,\"apiVersionMinor\": 0,\"merchantInfo\": { \"merchantId\": \"Merchant ID\", \"merchantName\": \"Merchant Name\"},\"allowedPaymentMethods\": [ { \"type\": \"CARD\", \"parameters\": { \"allowedAuthMethods\": [ \"PAN_ONLY\" ], \"allowedCardNetworks\": [ \"VISA\", \"AMEX\", \"MASTERCARD\" ], \"billingAddressRequired\":true, \"billingAddressParameters\": { \"format\":\"MIN\" } }, \"tokenizationSpecification\": { \"type\": \"PAYMENT_GATEWAY\", \"parameters\": { \"stripe:publishableKey\": \"pk_test_OoPcJNnxI1rDXhBq8BiXO2wz00s1Xc92dA\", \"gateway\": \"stripe\", \"stripe:version\": \"2019-05-16\" } } }],\"transactionInfo\": { \"currencyCode\": \"AUD\", \"totalPriceStatus\": \"ESTIMATED\", \"totalPrice\": \"1.0\"}}" } }
উদাহরণ 3
{ "actionProvidedOptions": { "paymentType": "ON_FULFILLMENT", "displayName": "Pay when you get your food.", "onFulfillmentPaymentData": { "supportedPaymentOptions": [ "Cash", "Card" ] } } }
পেমেন্টঅপশনসেনামস
PaymentOptionsEnums
টাইপের নিম্নলিখিত সম্ভাব্য মানগুলি রয়েছে:
-
Cash
-
Card
-
UPI
-
Paytm
পেমেন্ট টাইপ
PaymentType
টাইপের নিম্নলিখিত সম্ভাব্য মানগুলি রয়েছে:
-
PAYMENT_CARD
: গুগলপ্রোভাইডপেমেন্টঅপশনগুলির জন্য। -
ON_FULFILLMENT
: অ্যাকশনপ্রভাইডেডপেমেন্টঅপশনগুলির জন্য।
সাপোর্টডকার্ডনেট ওয়ার্কস
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 | স্ট্রিং | প্রয়োজন। আইএসও 4217 বর্ণমালা মুদ্রা কোড। | |
transactionId | স্ট্রিং | অনন্য আইডি যা লেনদেনের প্রচেষ্টা চিহ্নিত করে। বণিকরা একটি বিদ্যমান আইডি ব্যবহার করতে পারে বা গুগল পে লেনদেনের চেষ্টার জন্য একটি নির্দিষ্ট একটি তৈরি করতে পারে। আপনি যখন গুগল লেনদেনের ইভেন্টগুলি এপিআইতে কলব্যাকগুলি প্রেরণ করেন তখন এই ক্ষেত্রটি প্রয়োজন। | |
totalPriceStatus | কন্সট | প্রয়োজন। ডিফল্ট হিসাবে "আনুমানিক" ব্যবহার করুন। মোট মূল্য প্রতিক্রিয়ার বিশদগুলির ভিত্তিতে সামঞ্জস্য করতে পারে, যেমন বিলিং ঠিকানার ভিত্তিতে সংগ্রহ করা বিক্রয় কর। মান: | |
totalPrice | স্ট্রিং | প্রয়োজন। দুটি দশমিক স্থানের al চ্ছিক দশমিক নির্ভুলতার সাথে লেনদেনের মোট আর্থিক মান। এই ক্ষেত্রটির কার্ট.টোটালপ্রাইস হিসাবে একই মান থাকতে হবে। |
নিম্নলিখিত উদাহরণটি একটি TransactionInfo
উপাদান দেখায়:
উদাহরণ
{ "totalPriceStatus": "ESTIMATED", "totalPrice": "12.34", "currencyCode": "USD" }