इसे छोड़कर कंटेंट पर जाएं

एजेंटिक भुगतान

आप अपने AI एजेंट के माध्यम से होटल खोज सकते हैं, एक कमरा चुन सकते हैं और अपनी बुकिंग पूरी कर सकते हैं। इसे Wink और एक भुगतान वॉलेट से कनेक्ट करें, फिर बताएं कि आप कहाँ रहना चाहते हैं। Wink Machine Payments Protocol (MPP) का उपयोग वॉलेट के भुगतान को स्वीकार करने और आपकी बुकिंग पुष्टि लौटाने के लिए करता है।

1. MCP सर्वरों को कनेक्ट करें

Section titled “1. MCP सर्वरों को कनेक्ट करें”

पूर्ण बुकिंग फ्लो के लिए, आपके एजेंट को Wink Booking Engine और एक भुगतान वॉलेट की आवश्यकता होती है।

कनेक्शनयह क्या करता हैइसे कैसे जोड़ें
Wink Booking Engine — आवश्यकगंतव्य खोजता है, होटल और कमरे के दरें खोजता है, कोटेशन और बुकिंग की पुष्टि करता है, और आपकी बुकिंग और रसीदें प्राप्त करता है।https://api.wink.travel/mcp/booking-engine को एक रिमोट HTTP MCP सर्वर के रूप में जोड़ें।
भुगतान वॉलेट — भुगतान के लिए आवश्यकखरीद की मंजूरी के बाद भुगतान क्रेडेंशियल प्रदान करता है।एक ऐसा वॉलेट कनेक्ट करें जो Stripe Shared Payment Tokens का समर्थन करता हो। नीचे दिए गए Link उदाहरण को देखें।
Wink संदर्भ — वैकल्पिकदेशों, मुद्राओं और अन्य संदर्भ डेटा को देखता है।https://api.wink.travel/mcp/reference
Wink दस्तावेज़ — वैकल्पिकआपके एजेंट को दस्तावेज़ और API अनुबंध पढ़ने में मदद करता है।https://docs.mcp.wink.travel/mcp

Booking Engine MCP में पहले से ही यात्री बुकिंग फ्लो के लिए आवश्यक उपकरण शामिल हैं, जब उस वातावरण के लिए एजेंटिक बुकिंग और भुगतान सक्षम हो। Wink का अलग Payment MCP वित्तीय संचालन जैसे लेजर और निकासी के लिए है; कमरे के भुगतान के लिए इसकी आवश्यकता नहीं है।

साइन इन करें और अनुमतियाँ चुनें

Section titled “साइन इन करें और अनुमतियाँ चुनें”
  1. अपने एजेंट के MCP या कनेक्टर सेटिंग्स खोलें और ऊपर दिया गया Booking Engine URL जोड़ें। इसे Wink Booking जैसे नाम दें।
  2. आपका एजेंट आपके ब्राउज़र में Wink साइन-इन पेज खोलता है। उस Wink खाते से साइन इन करें जिसके तहत आप बुकिंग करना चाहते हैं।
  3. सहमति स्क्रीन पर, अपने एजेंट को आवश्यक अनुमतियाँ चुनें, फिर कनेक्शन को मंजूरी दें।
  4. अपने एजेंट पर वापस जाएं। यह उपलब्ध उपकरण लोड करता है और बाद के MCP कॉल के लिए प्रमाणीकरण प्रबंधित करता है।

इस फ्लो के लिए, चुनें:

अनुमतिइसकी आवश्यकता क्यों है
AI एजेंट एक्सेस (mcp.read)आपके एजेंट को Wink MCP से कनेक्ट करने की अनुमति देता है।
मार्केटिंग पढ़ें (marketing.read)एजेंट को आपके खाते की बुकिंग कॉन्फ़िगरेशन, जिसे कस्टमाइज़ेशन कहा जाता है, खोजने देता है। आपके खाते को भी उस कॉन्फ़िगरेशन तक पहुंच होनी चाहिए।
भुगतान लिखें (payment.write)एजेंट को कोटेशन का भुगतान करने और बुकिंग की पुष्टि करने देता है।

कनेक्शन द्वारा अनुरोधित साइन-इन अनुमतियाँ बनाए रखें। आपका MCP क्लाइंट एक्सेस टोकन संभालता है; आपको टोकन को चैट में कॉपी करने या अनुरोध हेडर सेट करने की आवश्यकता नहीं है। यदि आपने कोई आवश्यक अनुमति छोड़ दी है, तो अपने क्लाइंट के साइन-इन फ्लो के माध्यम से पुनः कनेक्ट करें और इसे मंजूरी दें।

एक भुगतान वॉलेट कनेक्ट करें

Section titled “एक भुगतान वॉलेट कनेक्ट करें”

Stripe भुगतान के लिए, एक विकल्प Link का एजेंट वॉलेट है। यदि आपका क्लाइंट स्थानीय MCP सर्वरों का समर्थन करता है और Node.js इंस्टॉल है, तो इसके MCP कॉन्फ़िगरेशन में यह प्रविष्टि जोड़ें:

{
"mcpServers": {
"link": {
"command": "npx",
"args": ["@stripe/link-cli", "--mcp"]
}
}
}

अपने एजेंट से अपने Link खाते को कनेक्ट करने के लिए कहें, फिर वह जो सत्यापन लिंक प्रदान करता है उसका पालन करें और कनेक्शन को मंजूरी दें। Link वह Shared Payment Token प्रदान करता है जिसका उपयोग बुकिंग के भुगतान के लिए किया जाता है। Link वर्तमान में US खातों का समर्थन करता है; बुकिंग से पहले इसके खर्च की सीमाओं की जांच करें। देखें Link का सेटअप गाइड और MCP कॉन्फ़िगरेशन।

यदि आपके एजेंट के पास पहले से ही एक संगत वॉलेट कनेक्टेड है, तो उस कनेक्शन का उपयोग करें। वॉलेट सेटअप और भुगतान अनुमोदन Wink में साइन इन करने से अलग हैं।

2. अपने एजेंट से एक कमरा खोजने को कहें

Section titled “2. अपने एजेंट से एक कमरा खोजने को कहें”

उदाहरण के लिए:

15 से 17 जनवरी 2027 तक दो वयस्कों के लिए बैंकॉक में एक कमरा खोजें। मुझे उपलब्ध विकल्प, कुल कीमत और रद्द करने की शर्तें दिखाएं, फिर मैं चुनूँगा।

आपका एजेंट आपके सुलभ Wink खातों और उनकी बुकिंग कॉन्फ़िगरेशन को खोज सकता है। यदि आपके पास कई हैं, तो उसे बताएं कि कौन सा उपयोग करना है। यदि आप एक प्रदान किए गए बुकिंग लिंक या कॉन्फ़िगरेशन के माध्यम से बुकिंग कर रहे हैं, तो उसे एजेंट को दें।

फिर एजेंट आपका गंतव्य निर्धारित करता है, उपलब्ध होटल जांचता है और आपकी तारीखों के लिए कमरे की दरें लोड करता है। एक कमरा चुनें और कोटेशन मांगें।

यह भुगतान फ्लो वर्तमान में एक कमरा, USD में मूल्य निर्धारण, केवल वयस्कों के लिए का समर्थन करता है। कोटेशन की एक समाप्ति समय होती है। इसे मांगने से आपसे कोई शुल्क नहीं लिया जाता और बुकिंग की पुष्टि नहीं होती।

3. समीक्षा करें और भुगतान को मंजूरी दें

Section titled “3. समीक्षा करें और भुगतान को मंजूरी दें”

होटल, कमरा, तारीखें, मेहमान, रद्द करने की शर्तें और उद्धृत कुल राशि जांचें। जब आप तैयार हों, तो अपने एजेंट से बुकिंग करने और आपके वॉलेट द्वारा मांगी गई किसी भी मंजूरी को पूरा करने को कहें।

वॉलेट कोटेशन के भुगतान के लिए Stripe Shared Payment Token प्रदान करता है।

Tempo stablecoin भुगतान जल्द ही आ रहे हैं।

भुगतान सफल होने के बाद, आपका एजेंट आपको बुकिंग पुष्टि कोड देता है। यह Booking Engine MCP के माध्यम से बुकिंग विवरण और रसीद भी प्राप्त कर सकता है।

यदि भुगतान अभी भी प्रक्रिया में है या प्रतिक्रिया खो गई है, तो एजेंट को उसी भुगतान प्रयास की जांच करने दें। इसे दूसरी भुगतान शुरू करने के बजाय कोटेशन और भुगतान क्रेडेंशियल का पुन: उपयोग करना चाहिए। यदि भुगतान अस्वीकृत हो जाता है, तो एक नया कोटेशन मांगें और पुनः प्रयास करने से पहले उसकी समीक्षा करें।

एजेंटों और डेवलपर्स के लिए टूल संदर्भ

Section titled “एजेंटों और डेवलपर्स के लिए टूल संदर्भ”

नीचे सभी Wink टूल Booking Engine MCP के माध्यम से उपलब्ध हैं। MCP क्लाइंट साइन-इन के दौरान अनुमोदित अनुमतियों का उपयोग करके प्रमाणीकरण स्वचालित रूप से भेजता है।

चरणउपकरण और व्यवहार
बुकिंग संदर्भ चुनेंmanaging_entity_list, फिर चयनित खाते के लिए customization_get_primary या customization_search। यदि कोई प्रदान किया गया कस्टमाइज़ेशन पहले से ज्ञात है तो उसका उपयोग करें।
गंतव्य खोजेंdestination_lookup_search_suggestions और destination_lookup_get।
होटल और कमरे खोजेंinventory_search_city या inventory_search_geo, फिर दरों और उपलब्धता के लिए property_inventory_get।
चयनित कमरे का कोटेशन लेंagentic_booking_quote। इसके request तर्क के अंदर कमरे का विवरण पास करें।
भुगतान करें और पुष्टि करेंकनेक्टेड वॉलेट से Shared Payment Token प्राप्त करें, फिर request.quoteId और request.spt के साथ agentic_booking_pay कॉल करें। कोटेशन और भुगतान के लिए एक ही साइन-इन Wink उपयोगकर्ता रखें।
बुकिंग और रसीद प्राप्त करेंपुष्टि की गई बुकिंग खोजने के लिए booking_search या booking_search_list का उपयोग करें, फिर इसके बुकिंग पहचानकर्ता के साथ booking_get और booking_receipt_get।

कोटेशन अनुरोध को hotelIdentifier, roomRateIdentifier, checkIn, checkOut, adults, children और customizationIdentifier की आवश्यकता होती है। तिथियाँ YYYY-MM-DD प्रारूप में होती हैं; checkOut को checkIn के बाद होना चाहिए। adults को कम से कम 1 और children को 0 सेट करें।

कोटेशन quoteId, amountUsdCents, currency, expiresAt और mppChallenges लौटाता है। USD सेंट को डॉलर में प्रदर्शित करें: 10000 का अर्थ है $100.00।

भुगतान परिणामअगला कदम
PAYMENT_SUCCEEDEDbookingConfirmationCode और chargeReference सहेजें।
IN_PROGRESSथोड़ी देर प्रतीक्षा करें और उसी कोटेशन और क्रेडेंशियल के साथ पुनः प्रयास करें।
DECLINEDनया कोटेशन मांगें और पुनः भुगतान करने से पहले उसकी समीक्षा करें।

सफल पुनः प्रयास मौजूदा बुकिंग लौटाता है बिना फिर से शुल्क लिए। टाइमआउट को अज्ञात परिणाम के रूप में मानें और उसी भुगतान को पुनः प्रयास करें। यदि यह अनसुलझा रहता है, तो कोटेशन ID के साथ समर्थन से संपर्क करें।

भुगतान-सक्षम MCP क्लाइंट

Section titled “भुगतान-सक्षम MCP क्लाइंट”

भुगतान-सक्षम MCP क्लाइंट सीधे arguments में कमरे के फ़ील्ड के साथ agentic_booking_book का उपयोग कर सकते हैं। पहली कॉल त्रुटि -32042 लौटाती है जिसमें भुगतान चुनौतियाँ होती हैं। उसी कॉल को वॉलेट क्रेडेंशियल के साथ params._meta["org.paymentauth/credential"] में पुनः प्रयास करें; सफलता में result._meta["org.paymentauth/receipt"] शामिल होता है। त्रुटि -32043 भुगतान विफलता और चुनौती लेकर आती है: निश्चित अस्वीकृति के लिए नया कोटेशन चाहिए, जबकि अधूरा भुगतान पेलोड उसी चुनौती के साथ पुनः प्रयास कर सकता है। -32603 के लिए, data.failure.reason में payment-in-progress या already-consumed का अर्थ है उसी क्रेडेंशियल के साथ पुनः प्रयास करें; केवल त्रुटि कोड पर्याप्त नहीं है।

REST के माध्यम से बुक करें

Section titled “REST के माध्यम से बुक करें”

जब आप एक एकीकरण बना रहे हों जो सीधे HTTP के माध्यम से Wink को कॉल करता है, तो REST का उपयोग करें। कोटेशन और भुगतान दोनों POST https://api.wink.travel/api/mpp/booking का उपयोग करते हैं।

आपके एप्लिकेशन को भुगतान करने के लिए payment.write अनुमति के साथ Wink उपयोगकर्ता एक्सेस टोकन की आवश्यकता होती है। दोनों कॉल के लिए एक ही उपयोगकर्ता रखें। टोकन को Wink-Authorization में भेजें, जिससे Authorization वॉलेट के भुगतान क्रेडेंशियल के लिए उपलब्ध रहे। ये हेडर REST पर लागू होते हैं; MCP क्लाइंट अपनी प्रमाणीकरण संभालता है।

1. कोटेशन का अनुरोध करें

Section titled “1. कोटेशन का अनुरोध करें”

चयनित कमरे को booking.json के रूप में सहेजें, उदाहरण पहचानकर्ताओं और तिथियों को अपनी पसंद से बदलें। कमरे के फ़ील्ड JSON बॉडी में सीधे जाएं, बिना request रैपर के।

{
"hotelIdentifier": "YOUR_HOTEL_ID",
"roomRateIdentifier": "YOUR_ROOM_RATE_ID",
"checkIn": "2027-01-15",
"checkOut": "2027-01-17",
"adults": 2,
"children": 0,
"customizationIdentifier": "YOUR_CUSTOMIZATION_ID"
}

WINK_ACCESS_TOKEN को उपयोगकर्ता के एक्सेस टोकन पर सेट करें और अनुरोध भेजें:

टर्मिनल विंडो
curl -i https://api.wink.travel/api/mpp/booking \
-H "Wink-Authorization: Bearer $WINK_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
--data-binary @booking.json

Wink प्रत्येक प्रस्तावित विधि के लिए WWW-Authenticate: Payment ... चुनौती के साथ 402 Payment Required लौटाता है। JSON बॉडी में quoteId, amount, currency, expiresAt और methods शामिल हैं। यहाँ, amount USD सेंट में स्ट्रिंग है: "10000" का अर्थ है $100.00। समाप्ति से पहले कोटेशन की समीक्षा करें; अभी तक कोई भुगतान नहीं लिया गया है।

2. भुगतान करें और पुष्टि करें

Section titled “2. भुगतान करें और पुष्टि करें”

वापस आई Stripe चुनौती को पूरा करने के लिए Shared Payment Token payload.spt में प्रदान करें। उस चुनौती से भुगतान विवरण का उपयोग करें।

MPP_CREDENTIAL को वॉलेट के एन्कोडेड MPP क्रेडेंशियल पर सेट करें, जिसमें चुनौती और भुगतान पेलोड होता है। उसी अनुरोध बॉडी के साथ पुनः प्रयास करें, पहचान हेडर बनाए रखें:

टर्मिनल विंडो
curl -i https://api.wink.travel/api/mpp/booking \
-H "Wink-Authorization: Bearer $WINK_ACCESS_TOKEN" \
-H "Authorization: Payment $MPP_CREDENTIAL" \
-H 'Content-Type: application/json' \
--data-binary @booking.json

सफलता पर, Wink 200 OK लौटाता है, JSON बॉडी में bookingConfirmationCode और एक Payment-Receipt हेडर होता है। पुष्टि और रसीद सहेजें। सफल पुनः प्रयास मौजूदा बुकिंग लौटाता है बिना फिर से शुल्क लिए।

प्रतिक्रियाओं और पुनः प्रयासों को संभालें

Section titled “प्रतिक्रियाओं और पुनः प्रयासों को संभालें”
प्रतिक्रियाक्या करें
400अमान्य कमरे के विवरण या गलत क्रेडेंशियल को सही करें।
401 / 403उपयोगकर्ता के प्रमाणीकरण और भुगतान अनुमति की जांच करें।
402लौटाए गए समस्या और चुनौती की जांच करें। निश्चित भुगतान अस्वीकृति के लिए नया कोटेशन चाहिए; अधूरा भुगतान पेलोड मूल चुनौती का पुन: उपयोग करता है। भुगतान करने से पहले कीमत की समीक्षा करें।
409भुगतान परिणाम अनसुलझा है। थोड़ी देर प्रतीक्षा करें, फिर बुकिंग एंडपॉइंट पर उसी बॉडी और क्रेडेंशियल के साथ पुनः प्रयास करें।
429Retry-After में दिए गए सेकंडों के लिए प्रतीक्षा करें, फिर पुनः प्रयास करें।

409 प्रतिक्रिया में application/problem+json बॉडी होती है। इसके type को इन सटीक URL से मिलाएं:

समस्या प्रकारअर्थ
https://api.wink.travel/problems/payment-in-progressएक भुगतान प्रयास अभी भी चल रहा है या निपटान की पुष्टि नहीं हो सकी है।
https://api.wink.travel/problems/already-consumedचुनौती या भुगतान प्रमाण पहले ही संभवतः सफल प्रयास द्वारा उपयोग किया जा चुका है। यह अकेले बुकिंग की पुष्टि नहीं करता।

दोनों का अर्थ है उसी भुगतान को पुनः प्रयास करें; नया कोटेशन न दें। URL समस्या की पहचान और दस्तावेज़ीकरण करते हैं; वे भुगतान या पोलिंग एंडपॉइंट नहीं हैं। POST /api/mpp/booking को पुनः प्रयास करें, और निर्णय लेने के लिए मुक्त-पाठ detail के बजाय समस्या type का उपयोग करें। सभी Wink भुगतान समस्याओं के लिए समस्या-प्रकार संदर्भ देखें।

भुगतान जमा करने के बाद टाइमआउट, खोई हुई प्रतिक्रिया या सर्वर त्रुटि भी परिणाम को अज्ञात छोड़ सकती है। उसी भुगतान अनुरोध को पुनः प्रयास करें। यदि परिणाम अनसुलझा रहता है, तो एक नया भुगतान शुरू करने से पहले कोटेशन ID के साथ समर्थन से संपर्क करें।