मुख्य सामग्री पर जाएँ

यूनिवर्सल कॉमर्स प्रोटोकॉल ट्यूटोरियल: अपना पहला UCP सर्वर बनाएं

जानें कि यूनिवर्सल कॉमर्स प्रोटोकॉल क्या है, यह कैसे काम करता है, और चरण-दर-चरण अपना पहला UCP सर्वर कैसे बनाएं।
· 12 मि॰ पढ़ें

AI के साथ खोजें

इस गाइड में, आप जानेंगे कि यूनिवर्सल कॉमर्स प्रोटोकॉल (UCP) क्या है, यह किनके लिए बनाया गया है, नए कॉमर्स मानक की आवश्यकता क्यों है, और इसकी आर्किटेक्चर कैसे काम करती है। 

आप एक हैंड्स-ऑन वॉकथ्रू भी फॉलो करेंगे जिसमें अपना UCP सैंपल सर्वर सेट अप करना, उसकी डिस्कवरी प्रोफाइल देखना, एक चेकआउट सेशन बनाना, और लोकली एक पूर्ण उदाहरण फ्लो चलाना शामिल है। 

इससे आपको प्रोटोकॉल की स्पष्ट समझ के साथ-साथ वास्तविक इम्प्लीमेंटेशन में UCP को परखने के लिए एक व्यावहारिक शुरुआती बिंदु मिलेगा।

यूनिवर्सल कॉमर्स प्रोटोकॉल का परिचय

यूनिवर्सल कॉमर्स प्रोटोकॉल एक ओपन स्टैंडर्ड है जो AI एजेंट्स, ऐप्स, व्यवसायों और पेमेंट प्रोवाइडर्स को एक साझा शॉपिंग फ्लो में साथ काम करने में मदद करता है। हर नए पार्टनर के लिए कस्टम इंटीग्रेशन बनाने के बजाय, UCP संचार का एक साझा तरीका प्रदान करता है।

UCP आधुनिक एजेंट-नेतृत्व वाली शॉपिंग के लिए डिज़ाइन किया गया है, जहाँ लोग AI असिस्टेंट्स और संवादात्मक इंटरफेस के ज़रिये उत्पाद खोजते और खरीदते हैं। यह पूरी जर्नी को सपोर्ट करता है—किसी व्यवसाय की पेशकशों की खोज से लेकर चेकआउट शुरू करने और खरीद को संरचित तरीके से प्रबंधित करने तक।

Universal Commerce Protocol
workflow diagram

स्रोत: Google Developers Blog

सरल शब्दों में, UCP कॉमर्स के लिए एक साझा भाषा की तरह काम करता है। कोई व्यवसाय यह प्रकाशित कर सकता है कि वह क्या सपोर्ट करता है, और कोई एजेंट उस सूचना को पढ़कर बिना किसी एक-मुश्त API इंटीग्रेशन के उससे इंटरैक्ट कर सकता है। Shopify इसे एजेंटिक कॉमर्स को बड़े पैमाने पर सक्षम करने के लिए बनाई गई इन्फ्रास्ट्रक्चर के रूप में वर्णित करता है।

UCP ओपन सोर्स और वेंडर-न्यूट्रल भी है। यह मौजूदा कॉमर्स सिस्टम्स के साथ काम करने के लिए डिज़ाइन किया गया है, और यह सुरक्षित एजेंट-चालित पेमेंट्स के लिए Agent Payments Protocol (AP2) के साथ संगत है। यह विभिन्न ट्रांसपोर्ट्स, जैसे REST APIs, एजेंट-टू-एजेंट कम्युनिकेशन, और MCP के साथ भी काम कर सकता है। 

यूनिवर्सल कॉमर्स प्रोटोकॉल किनके लिए बनाया गया है?

UCP आधुनिक डिजिटल कॉमर्स में शामिल मुख्य समूहों के लिए बनाया गया है। इसका उद्देश्य सभी को संवाद का साझा तरीका देना है, ताकि हर कनेक्शन के लिए कस्टम इंटीग्रेशन की ज़रूरत के बिना वे साथ काम कर सकें।

यह मुख्य रूप से निम्न के लिए डिज़ाइन किया गया है:

1. AI एजेंट्स और उपभोक्ता प्लेटफ़ॉर्म

ये वे ऐप्स, असिस्टेंट्स और डिस्कवरी सरफेसेज़ हैं जो उपयोगकर्ताओं को उत्पाद ढूंढने और खरीदने में मदद करते हैं। UCP उन्हें यह समझने में मदद करता है कि कोई व्यवसाय क्या सपोर्ट करता है और उससे संरचित तरीके से इंटरैक्ट कैसे किया जाए। Google इसे उपभोक्ता सरफेसेज़ को व्यवसाय बैकएंड्स से जोड़कर निर्बाध शॉपिंग का अनुभव बनाने के रूप में वर्णित करता है।

2. व्यवसाय और व्यापारी

UCP व्यवसायों को अपने उत्पाद, चेकआउट फ्लो और समर्थित फीचर्स को एक मानक फ़ॉर्मैट में एक्सपोज़ करने में मदद करता है। इससे वे बिना हर प्लेटफ़ॉर्म के लिए अलग इंटीग्रेशन बनाए, अलग-अलग AI प्लेटफ़ॉर्म्स और एजेंट्स के साथ आसानी से काम कर सकते हैं।

3. भुगतान प्रदाता

पेमेंट प्रोवाइडर्स भी UCP इकोसिस्टम का हिस्सा हैं। प्रोटोकॉल अलग-अलग पेमेंट हैंडलर्स और पेमेंट क्रेडेंशियल्स को लचीले तरीके से सपोर्ट करने के लिए डिज़ाइन किया गया है, ताकि अलग-अलग सिस्टम्स में पेमेंट्स को सुरक्षित रूप से संभाला जा सके।

4. डेवलपर्स और प्रोटोकॉल बिल्डर्स

UCP ओपन सोर्स है, इसलिए यह उन डेवलपर्स के लिए भी बनाया गया है जो स्टैंडर्ड को इम्प्लीमेंट, एक्सटेंड या उसमें योगदान देना चाहते हैं। UCP प्रोजेक्ट स्पष्ट रूप से व्यवसायों, डेवलपर्स और पेमेंट प्रोवाइडर्स को प्रोटोकॉल के भविष्य को आकार देने के लिए आमंत्रित करता है।

सरल शब्दों में, UCP AI-संचालित कॉमर्स में शामिल किसी भी व्यक्ति के लिए बनाया गया है—वह प्लेटफ़ॉर्म जो उपयोगकर्ता को खरीदारी में मदद करता है, वह व्यवसाय जो उत्पाद बेचता है, वह पेमेंट सिस्टम जो लेनदेन संसाधित करता है, और वे डेवलपर्स जो इन सबके बीच कनेक्शन बनाते हैं।

नए कॉमर्स स्टैंडर्ड की आवश्यकता क्यों है

नए कॉमर्स स्टैंडर्ड की ज़रूरत इसलिए है क्योंकि अधिकांश मौजूदा कॉमर्स सिस्टम्स पारंपरिक वेबसाइटों और मोबाइल ऐप्स के लिए बनाए गए थे, AI असिस्टेंट्स और संवादात्मक शॉपिंग के लिए नहीं। 

वह पुराना मॉडल अक्सर कस्टम APIs और एक-मुश्त इंटीग्रेशन पर निर्भर करता है, जिससे कई प्लेटफ़ॉर्म्स पर स्केल करना धीमा और कठिन हो जाता है। UCP को इस समस्या को हल करने के लिए बनाया गया—ताकि व्यवसायों, एजेंट्स और प्लेटफ़ॉर्म्स के पास संचार का एक साझा तरीका हो।

जैसे-जैसे अधिक लोग AI टूल्स के माध्यम से खरीदारी करने लगते हैं, कॉमर्स को उसी बातचीत के भीतर प्रोडक्ट डिस्कवरी, चेकआउट, डिस्काउंट्स और ऑर्डर अपडेट्स जैसी लाइव क्रियाओं का समर्थन करना होगा। 

UCP इस नए तरह की शॉपिंग के लिए डिज़ाइन किया गया है, जहाँ अनुभव अधिक इंटरैक्टिव होता है और अलग-अलग डिजिटल सरफेसेज़ पर घटित होता है।

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

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

यूनिवर्सल कॉमर्स प्रोटोकॉल आर्किटेक्चर को समझना

यूनिवर्सल कॉमर्स प्रोटोकॉल (UCP) एजेंटिक कॉमर्स के लिए एक मॉड्यूलर सिस्टम है। यह व्यवसायों, AI एजेंट्स और पेमेंट प्रोवाइडर्स को डिस्कवरी से लेकर चेकआउट और उससे आगे तक शॉपिंग जर्नी को संभालने का साझा तरीका देता है। 

हर प्लेटफ़ॉर्म के लिए अलग कस्टम इंटीग्रेशन बनाने की बजाय, UCP किसी व्यवसाय को यह प्रकाशित करने देता है कि वह क्या सपोर्ट करता है ताकि कोई एजेंट उस सूचना को पढ़े और एक मानक फ्लो फॉलो करे। 

UCP मॉड्यूलर और एक्स्टेंसिबल होने के लिए डिज़ाइन किया गया है, REST, MCP और A2A जैसे ट्रांसपोर्ट्स को सपोर्ट करता है, और पेमेंट हैंडलर्स के साथ काम करता है ताकि व्यवसाय मौजूदा पेमेंट सेटअप्स को अधिक आसानी से उपयोग कर सकें।

1. व्यवसाय डिस्कवरी प्रोफाइल प्रकाशित करता है

UCP-सक्षम व्यवसाय /.well-known/ucp पर एक प्रोफाइल एक्सपोज़ करता है। यह प्रोफाइल किसी भी लेनदेन से पहले प्लेटफ़ॉर्म्स और एजेंट्स को बताता है कि व्यवसाय क्या सपोर्ट करता है, जिसमें उपलब्ध क्षमताएं और एंडपॉइंट्स शामिल हैं।

2. एजेंट समर्थित क्षमताएँ पढ़ता है

डिस्कवरी के बाद, एजेंट जाँचता है कि व्यवसाय कौन-सी सेवाएँ और क्षमताएँ प्रदान करता है। UCP की प्रारंभिक लॉन्च कोर क्षमताओं पर केंद्रित है, जैसे Checkout, Identity Linking और Order Management, जो प्रोटोकॉल के मुख्य बिल्डिंग ब्लॉक्स के रूप में काम करते हैं।

3. एक्सटेंशंस अतिरिक्त फीचर्स जोड़ते हैं

UCP कोर फ्लो को सरल रखता है, लेकिन आवश्यकता पड़ने पर व्यवसाय वैकल्पिक एक्सटेंशंस जोड़ सकते हैं। ये एक्सटेंशंस कोर क्षमताओं पर निर्माण करते हैं और बिना पूरे प्रोटोकॉल में बदलाव किए अधिक समृद्ध फीचर्स को सपोर्ट करने देते हैं।

4. फ्लो किसी समर्थित ट्रांसपोर्ट के ज़रिए चलता है

एक बार एजेंट को पता चल जाए कि क्या सपोर्टेड है, तो वह REST, MCP या A2A जैसे समर्थित ट्रांसपोर्ट का उपयोग करके व्यवसाय के साथ इंटरेक्ट कर सकता है। इससे वही कॉमर्स लॉजिक APIs, AI टूल्स और एजेंट-टू-एजेंट सिस्टम्स में अधिक आसानी से उपयोगी हो जाती है।

5. भुगतान पेमेंट हैंडलर्स के माध्यम से होता है

UCP कॉमर्स फ्लो को पेमेंट लेयर से अलग करता है। व्यवसाय अपने समर्थित पेमेंट हैंडलर्स घोषित कर सकते हैं, और प्रोटोकॉल इस तरह डिज़ाइन किया गया है कि व्यापारी सब कुछ फिर से बनाने के बजाय अपनी मौजूदा पेमेंट इंटीग्रेशंस का उपयोग जारी रख सकें।

6. सुरक्षित एजेंट-नेतृत्व भुगतान AP2 का उपयोग कर सकते हैं

UCP Agent Payments Protocol (AP2) के साथ संगत है, जो एजेंट-चालित पेमेंट्स के लिए एक सुरक्षित लेयर जोड़ता है। इससे तब सुरक्षित प्राधिकरण का समर्थन होता है जब कोई AI एजेंट उपयोगकर्ता की ओर से कार्रवाई कर रहा हो।

एंड-टू-एंड यूनिवर्सल कॉमर्स प्रोटोकॉल वॉकथ्रू

यह गाइड Python रेफरेंस इम्प्लीमेंटेशन का उपयोग करते हुए एक पूर्ण यूनिवर्सल कॉमर्स प्रोटोकॉल फ्लो दिखाता है। आप सैंपल मर्चेंट सर्वर सेट अप करेंगे, एक डेमो फ्लावर-शॉप कैटलॉग लोड करेंगे, व्यवसाय की क्षमताएँ खोजेंगे, एक चेकआउट सेशन बनाएँगे, एक डिस्काउंट लागू करेंगे, और फिर सर्वर बंद कर देंगे।

स्टेप 1: व्यवसाय सर्वर सेट अप करें

इस स्टेप में, आप Python डिपेंडेंसी मैनेजमेंट के लिए uv इंस्टॉल करेंगे, फिर UCP Python SDK और सैंपल सर्वर रिपॉजिटरी—दोनों—क्लोन करेंगे। सैंपल सर्वर का README इसी सेटअप पैटर्न का पालन करता है और नोट करता है कि उदाहरणों के लिए SDK का सापेक्ष पथ मायने रखता है।

क्योंकि हमारा ऑपरेटिंग सिस्टम Linux है, हम uv इंस्टॉल करने के लिए निम्न कमांड का इस्तेमाल करेंगे। uv एक तेज़ और भरोसेमंद Python पैकेज और एनवायरनमेंट मैनेजर है। यह Anaconda जैसे टूल्स जैसा ही उद्देश्य पूरा करता है, लेकिन बहुत हल्का और तेज़ है।

curl -LsSf https://astral.sh/uv/install.sh | sh

इंस्टॉलेशन पूरा हो जाने के बाद, अपना टर्मिनल सेशन रीलोड करें ताकि uv कमांड मौजूदा शेल में उपलब्ध हो जाए।

source ~/.bashrc

अब sdk नाम का एक नया फ़ोल्डर बनाएँ। यह फ़ोल्डर GitHub रिपॉजिटरी से क्लोन करने पर यूनिवर्सल कॉमर्स प्रोटोकॉल Python SDK को स्टोर करेगा। 

mkdir sdk
git clone https://github.com/Universal-Commerce-Protocol/python-sdk.git 
sdk/python

अब sdk/python डायरेक्टरी में जाएँ, जहाँ SDK रिपॉजिटरी क्लोन हुई थी।

pushd sdk/python

SDK डायरेक्टरी के अंदर पहुँचने के बाद, uv sync का उपयोग करके SDK के लिए आवश्यक सभी Python डिपेंडेंसियाँ इंस्टॉल करें।

uv sync

डिपेंडेंसियाँ इंस्टॉल होने के बाद, अपने पिछले कार्यशील डायरेक्टरी पर लौट आएँ।

popd

अब सैंपल्स रिपॉजिटरी क्लोन करें, जिसमें इस वॉकथ्रू में उपयोग किया गया Python रेफरेंस मर्चेंट सर्वर शामिल है।

git clone https://github.com/Universal-Commerce-Protocol/samples.git

अगले चरण में, सैंपल्स रिपॉजिटरी के भीतर Python सर्वर उदाहरण में जाएँ।

cd samples/rest/python/server

अंत में, सैंपल सर्वर चलाने के लिए आवश्यक सभी Python डिपेंडेंसियाँ इंस्टॉल करें।

uv sync

इस बिंदु पर, सैंपल व्यवसाय सर्वर आपके वर्कस्पेस में तैयार है। यह सर्वर पहले से UCP द्वारा परिभाषित मुख्य शॉपिंग क्षमताओं को इम्प्लीमेंट करता है।

स्टेप 2: एक सैंपल प्रोडक्ट डेटाबेस बनाएं

इस स्टेप में, आप सैंपल व्यवसाय के लिए एक लोकल SQLite-आधारित डेमो स्टोर बनाएँगे। इस ट्यूटोरियल में सैंपल व्यवसाय एक फूलों की दुकान है, और यह कमांड उस उदाहरण प्रोडक्ट कैटलॉग और ट्रांज़ैक्शन डेटाबेस को लोड करता है जिसका सर्वर उपयोग करेगा।

पहले, एक अस्थायी फ़ोल्डर बनाएँ जहाँ डेटाबेस फ़ाइलें स्टोर होंगी।

mkdir /tmp/ucp_test

अब आयात स्क्रिप्ट चलाएँ ताकि प्रोडक्ट और ट्रांज़ैक्शन डेटाबेस बनाए और भरे जा सकें।

uv run import_csv.py \
  --products_db_path=/tmp/ucp_test/products.db \
  --transactions_db_path=/tmp/ucp_test/transactions.db \
  --data_dir=../test_data/flower_shop

यह कमांड निम्न कार्य करता है:

  • --products_db_path प्रोडक्ट कैटलॉग डेटाबेस बनाता है।
  • --transactions_db_path चेकआउट स्टेट के लिए उपयोग किया जाने वाला ट्रांज़ैक्शंस डेटाबेस बनाता है।
  • --data_dir=../test_data/flower_shop रिपॉजिटरी में शामिल सैंपल फ्लावर शॉप डेटा की ओर इंगित करता है।

यह स्टेप पूरा होने के बाद, आपका लोकल सैंपल स्टोर डेटा तैयार है, और सर्वर इसका उपयोग कर सकेगा।

स्टेप 3: व्यवसाय सर्वर शुरू करें

इस स्टेप में, आप सैंपल UCP व्यवसाय सर्वर शुरू करेंगे। यह सर्वर पिछले स्टेप में बनाए गए प्रोडक्ट और ट्रांज़ैक्शन डेटाबेस का उपयोग करेगा और पोर्ट 8182 पर UCP शॉपिंग APIs एक्सपोज़ करेगा।

सर्वर को बैकग्राउंड में शुरू करने के लिए निम्न कमांड चलाएँ।

uv run server.py \
  --products_db_path=/tmp/ucp_test/products.db \
  --transactions_db_path=/tmp/ucp_test/transactions.db \
  --port=8182 &
SERVER_PID=$!

यह कमांड निम्न करता है:

  • uv run server.py सैंपल Python सर्वर शुरू करता है।
  • --products_db_path सर्वर को प्रोडक्ट डेटाबेस से जोड़ता है।
  • --transactions_db_path सर्वर को ट्रांज़ैक्शंस डेटाबेस से जोड़ता है।
  • --port=8182 सर्वर को पोर्ट 8182 पर चलने के लिए कहता है।
  • & प्रोसेस को बैकग्राउंड में चलाता है ताकि आप टर्मिनल का उपयोग जारी रख सकें।
  • SERVER_PID=$! प्रोसेस ID सेव करता है ताकि आप बाद में सर्वर को रोक सकें।

इस बिंदु पर, व्यवसाय सर्वर चल रहा है और किसी एजेंट से आने वाले अनुरोधों को स्वीकार करने के लिए तैयार है।

स्टेप 4: व्यवसाय की क्षमताएँ खोजें

इस स्टेप में, आप UCP डिस्कवरी एंडपॉइंट को क्वेरी करेंगे। हर UCP-सक्षम व्यवसाय /.well-known/ucp पर एक डिस्कवरी डॉक्युमेंट प्रकाशित करता है, जो एजेंट्स को बिना कोई अनुरोध भेजे पहले ही समझने देता है कि व्यवसाय क्या सपोर्ट करता है।

पहले, सर्वर URL को एक वेरिएबल में सेव करें ताकि अगली कमांड्स पढ़ने में आसान हों।

export SERVER_URL=http://localhost:8182

अब व्यवसाय सर्वर से UCP डिस्कवरी डॉक्युमेंट प्राप्त करें।

curl -s $SERVER_URL/.well-known/ucp

यह प्रतिक्रिया एजेंट को बताती है:

  • सर्वर कौन-सा UCP संस्करण सपोर्ट करता है,
  • कौन-सी सेवाएँ उपलब्ध हैं,
  • कौन-सी क्षमताएँ इम्प्लीमेंट की गई हैं, जैसे चेकआउट और डिस्काउंट्स,
  • और कौन-से पेमेंट हैंडलर्स या स्कीमा सपोर्टेड हैं।

यह डिस्कवरी स्टेप महत्वपूर्ण है क्योंकि यह हार्ड-कोडेड, कस्टम इंटीग्रेशंस की ज़रूरत को हटाता है। एजेंट पहले सर्वर का निरीक्षण कर सकता है और फिर तय कर सकता है कि उससे कैसे इंटरैक्ट करना है।

स्टेप 5: एक चेकआउट सेशन बनाएँ

इस स्टेप में, आप UCP चेकआउट क्षमता का उपयोग करके एक नया चेकआउट सेशन बनाएँगे। यहीं एजेंट चयनित प्रोडक्ट, ख़रीदार की जानकारी और पेमेंट स्ट्रक्चर व्यवसाय सर्वर को भेजता है।

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

export REQUEST_ID=$(uuidgen 2>/dev/null || cat /proc/sys/kernel/random/uuid)
export IDEMPOTENCY_KEY=$(uuidgen 2>/dev/null || cat /proc/sys/kernel/random/uuid)
export REQUEST_SIGNATURE="dev"

यह निम्न करता है:

  • REQUEST_ID अनुरोध के लिए एक यूनिक पहचानकर्ता बनाता है।
  • IDEMPOTENCY_KEY सुनिश्चित करता है कि रीट्राई होने पर एक ही अनुरोध दोबारा प्रोसेस न हो।
  • REQUEST_SIGNATURE आवश्यक सिग्नेचर हेडर प्रदान करता है। लोकल डेमो में, यदि सख्त सिग्नेचर वेलिडेशन लागू नहीं है, तो "dev" इस्तेमाल किया जा सकता है।

अब सर्वर को चेकआउट अनुरोध भेजें।

curl -X POST "$SERVER_URL/checkout-sessions" \
  -H "Content-Type: application/json" \
  -H "UCP-Agent: profile=\"https://agent.example/profile\"" \
  -H "request-id: $REQUEST_ID" \
  -H "idempotency-key: $IDEMPOTENCY_KEY" \
  -H "request-signature: $REQUEST_SIGNATURE" \
  -d '{
    "line_items": [
      { "item": { "id": "bouquet_roses", "title": "Red Rose" }, "quantity": 1 }
    ],
    "buyer": { "full_name": "John Doe", "email": "[email protected]" },
    "currency": "USD",
    "payment": { "handlers": [], "instruments": [] }
  }'

इस अनुरोध में शामिल है:

  • line_items जिससे खरीदार क्या खरीदना चाहता है, परिभाषित होता है,
  • item.id उत्पाद की पहचान के लिए,
  • item.title पढ़ने योग्य नाम देने के लिए,
  • quantity कितनी यूनिट खरीदी जा रही हैं यह बताने के लिए,
  • buyer ग्राहक विवरण शामिल करने के लिए,
  • currency चेकआउट मुद्रा निर्धारित करने के लिए,
  • और payment आवश्यक पेमेंट स्ट्रक्चर प्रदान करने के लिए।

प्रतिक्रिया में एक चेकआउट सेशन ऑब्जेक्ट मिलेगा। इसमें नया चेकआउट ID, लाइन आइटम IDs, टोटल्स, खरीदार की जानकारी और मौजूदा चेकआउट स्टेटस शामिल होंगे।

स्टेप 6: UCP का उपयोग करके डिस्काउंट्स लागू करें

इस स्टेप में, आप मौजूदा चेकआउट सेशन को अपडेट करेंगे और एक डिस्काउंट कोड लागू करेंगे। UCP में डिस्काउंट्स को चेकआउट क्षमता के एक्सटेंशन के रूप में इम्प्लीमेंट किया गया है, इसलिए डिस्काउंट को चेकआउट अपडेट अनुरोध के हिस्से के रूप में जोड़ा जाता है।

पहले, पिछले चेकआउट प्रतिक्रिया से प्राप्त वास्तविक चेकआउट ID और लाइन आइटम ID सेव करें।

export CHECKOUT_ID=5dd08e18-c9c1-4fa1-a0d1-885ca81cda29
export LINE_ITEM_ID=ed72ebe6-2484-4e7b-afc8-a8ff5c8f430e

अब इस अपडेट अनुरोध के लिए नया रिक्वेस्ट ID और आइडेम्पोटेंसी की जेनरेट करें।

export REQUEST_ID=$(uuidgen 2>/dev/null || cat /proc/sys/kernel/random/uuid)
export IDEMPOTENCY_KEY=$(uuidgen 2>/dev/null || cat /proc/sys/kernel/random/uuid)
export REQUEST_SIGNATURE="dev"

अब डिस्काउंट कोड सहित अपडेटेड चेकआउट अनुरोध भेजें।

curl -X PUT "$SERVER_URL/checkout-sessions/$CHECKOUT_ID" \
  -H "Content-Type: application/json" \
  -H "UCP-Agent: profile=\"https://agent.example/profile\"" \
  -H "request-id: $REQUEST_ID" \
  -H "idempotency-key: $IDEMPOTENCY_KEY" \
  -H "request-signature: $REQUEST_SIGNATURE" \
  -d "{
    \"id\": \"$CHECKOUT_ID\",
    \"line_items\": [
      {
        \"id\": \"$LINE_ITEM_ID\",
        \"item\": { \"id\": \"bouquet_roses\", \"title\": \"Red Rose\" },
        \"quantity\": 1
      }
    ],
    \"buyer\": {
      \"full_name\": \"John Doe\",
      \"email\": \"[email protected]\"
    },
    \"currency\": \"USD\",
    \"discounts\": {
      \"codes\": [\"10OFF\"]
    },
    \"payment\": {
      \"handlers\": [],
      \"instruments\": []
    }
  }"

यह अनुरोध निम्न करता है:

  • मौजूदा चेकआउट को PUT के ज़रिए अपडेट करता है,
  • मूल चेकआउट ID शामिल करता है,
  • लाइन आइटम को फिर से शामिल करता है,
  • discounts सेक्शन जोड़ता है,
  • और 10OFF कोड लागू करता है।

प्रतिक्रिया में अपडेटेड चेकआउट ऑब्जेक्ट प्राप्त होना चाहिए, जिसमें:

  • पुनर्गणना किए गए टोटल्स,
  • डिस्काउंट राशि,
  • अंतिम अपडेटेड टोटल,
  • और लागू किए गए डिस्काउंट का विवरण शामिल होगा।

डिस्काउंट कोड वैध है; आपको प्रतिक्रिया में मूल्य निर्धारण में बदलाव दिखना चाहिए।

स्टेप 7: सर्वर बंद करें

अंतिम स्टेप में, आप वह सैंपल व्यवसाय सर्वर रोकेंगे जिसे आपने पहले शुरू किया था। क्योंकि आपने सर्वर शुरू करते समय प्रोसेस ID सेव कर ली थी, आप इसे एक कमांड से आसानी से बंद कर सकते हैं।

सर्वर को बंद करने के लिए निम्न कमांड चलाएँ।

kill $SERVER_PID

शुरू से अंत तक, आपने अपनी लोकल मशीन पर एक पूर्ण एंड-टू-एंड UCP फ्लो सफलतापूर्वक बनाया और टेस्ट किया।

आपने:

  • uv का उपयोग करके आवश्यक Python टूलिंग इंस्टॉल की,
  • UCP Python SDK और सैंपल सर्वर रिपॉजिटरीज़ क्लोन की,
  • एक सैंपल फ्लावर शॉप प्रोडक्ट डेटाबेस बनाया,
  • व्यवसाय सर्वर शुरू किया,
  • डिस्कवरी एंडपॉइंट के माध्यम से सर्वर की UCP क्षमताएँ खोजीं,
  • एक एजेंट के रूप में चेकआउट सेशन बनाया,
  • उस चेकआउट को डिस्काउंट कोड लागू करके अपडेट किया,
  • और अंत में सर्वर बंद किया।

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

निष्कर्ष

यूनिवर्सल कॉमर्स प्रोटोकॉल उद्योग को AI-नेतृत्व वाले कॉमर्स के लिए एक साझा आधार प्रदान करता है। यह व्यवसायों, AI एजेंट्स और पेमेंट सिस्टम्स के लिए संचार का एक मानक तरीका बनाता है, जिससे डिस्कवरी, चेकआउट, अपडेट्स और पेमेंट्स को हर नए प्लेटफ़ॉर्म के लिए कस्टम इंटीग्रेशन बनाए बिना सपोर्ट करना आसान हो जाता है।

इस गाइड में, आपने जाना कि UCP क्या है, यह क्यों महत्वपूर्ण है, इसकी आर्किटेक्चर कैसे काम करती है, और शुरुआत से अंत तक एक पूर्ण लोकल उदाहरण कैसे चलाया जाए। सैंपल सर्वर सेट अप करने, उसकी क्षमताएँ खोजने, चेकआउट सेशन बनाने और डिस्काउंट लागू करने के ज़रिये आपने देखा कि UCP कैसे कॉमर्स को एक संरचित, एजेंट-फ्रेंडली वर्कफ़्लो में बदल देता है।

UCP के लिए सबसे बड़ा अवसर स्पष्ट है: यह विखंडन को कम कर सकता है और उस दुनिया में कॉमर्स को अधिक इंटरऑपरेबल बना सकता है, जहाँ खरीदारी तेजी से AI असिस्टेंट्स और संवादात्मक इंटरफेस के माध्यम से होती है। 

वास्तविक चुनौती, हालांकि, अपनाने की होगी। व्यवसाय अब भी कस्टम APIs, मौजूदा REST-आधारित इंटीग्रेशंस, MCP-आधारित टूल्स, या अन्य एजेंट वर्कफ़्लोज़ चुन सकते हैं जिनका वे आज उपयोग करते हैं। UCP की सफलता के लिए, इसे व्यापारियों, प्लेटफ़ॉर्म्स, डेवलपर्स और पेमेंट प्रोवाइडर्स से मजबूत इकोसिस्टम सपोर्ट की ज़रूरत होगी।

UCP FAQs

यूनिवर्सल कॉमर्स प्रोटोकॉल (UCP) क्या है?

जनवरी 2026 में Google और Shopify द्वारा घोषित, UCP एक ओपन-सोर्स स्टैंडर्ड है जो "एजेंटिक कॉमर्स" के लिए एक सार्वभौमिक भाषा की तरह काम करता है। हर नए AI प्लेटफ़ॉर्म के लिए कस्टम API कनेक्शंस की आवश्यकता के बजाय, UCP AI असिस्टेंट्स (जैसे Gemini, ChatGPT, या Copilot) को एकल, मानकीकृत फ़्रेमवर्क का उपयोग करके अलग-अलग व्यापारियों के बीच प्रोडक्ट डिस्कवरी, क्षमताओं पर बातचीत और सुरक्षित चेकआउट पूरा करने देता है।

यदि कोई AI एजेंट चेकआउट संभालता है, तो क्या मैं अपना "मर्चेंट ऑफ रिकॉर्ड" स्टेटस खो देता/देती हूँ?

नहीं। UCP के मुख्य सिद्धांतों में से एक यह है कि व्यवसाय "मर्चेंट ऑफ रिकॉर्ड (MoR)" बना रहता है। आप अपने ग्राहक संबंधों, अपनी फर्स्ट-पार्टी डेटा, अपनी प्राइसिंग लॉजिक और पोस्ट-परचेज़ अनुभव (जैसे फुलफिलमेंट और रिटर्न्स) पर पूरा स्वामित्व बनाए रखते हैं। AI केवल उपयोगकर्ता की ओर से इंटरेक्शन लेयर के रूप में कार्य करता है।

क्या UCP मेरे मौजूदा ई-कॉमर्स बैकएंड की जगह लेता है?

बिल्कुल नहीं। UCP आपके मौजूदा इंफ्रास्ट्रक्चर के ऊपर बैठने के लिए डिज़ाइन किया गया है। /.well-known/ucp पर एक साधारण JSON डिस्कवरी प्रोफाइल प्रकाशित करके, आप घोषित करते हैं कि आपका वर्तमान बैकएंड क्या सपोर्ट करता है। UCP ट्रांसपोर्ट-अज्ञेयवादी है, यानी यह इन अनुरोधों को मानक REST APIs, Model Context Protocol (MCP), या Agent-to-Agent (A2A) कम्युनिकेशन के ज़रिये रूट कर सकता है, बिना आपको अपना पूरा डेटाबेस या कैटलॉग फिर से बनाने की ज़रूरत पड़े।

UCP बिना मानवीय हस्तक्षेप के भुगतान को सुरक्षित रूप से कैसे संभालता है?

UCP जानबूझकर कॉमर्स फ्लो (कार्ट, डिस्काउंट्स, शिपिंग) को पेमेंट लेयर से अलग करता है। यह व्यापारियों को अपने समर्थित पेमेंट प्रोसेसर (जैसे Stripe, Adyen, या Google Pay) घोषित करने देता है। पूरी तरह स्वायत्त, एजेंट-नेतृत्व ख़रीद के लिए, UCP Agent Payments Protocol (AP2) के साथ इंटीग्रेट करता है, जो क्रिप्टोग्राफ़िक मैंडेट्स का उपयोग करके साबित करता है कि एजेंट के निष्पादन से पहले उपयोगकर्ता ने लेनदेन को सुरक्षित रूप से अधिकृत किया था।

विषय