PayPal

आधिकारिक

PayPal Model Context Protocol सर्वर आपको फंक्शन कॉलिंग के माध्यम से PayPal APIs के साथ एकीकृत करने की अनुमति देता है। यह प्रोटोकॉल विभिन्न PayPal सेवाओं के साथ इंटरैक्ट करने के लिए विभिन्न टूल्स का समर्थन करता है।

PayPal MCP के साथ आप क्या कर सकते हैं?

अपने सहायक से "इनवॉइस बनाएँ और भेजें" कहने के लिए कहें या भुगतान, विवाद और शिपिंग जैसे अन्य PayPal कार्यों को संभालने के लिए कहें।

  • इनवॉइस बनाएँ और भेजें — बिलिंग विवरण और लाइन आइटम के साथ एक नया इनवॉइस बनाएँ, फिर उसे create_invoice और send_invoice के माध्यम से भेजें।
  • इनवॉइस अनुस्मारक भेजेंsend_invoice_reminder का उपयोग करके किसी मौजूदा इनवॉइस के लिए अनुस्मारक भेजें।
  • भुगतान संसाधित करेंcreate_order और pay_order के साथ एक ऑर्डर बनाएँ और उसके लिए भुगतान संसाधित करें।
  • विवाद प्रबंधित करेंlist_disputes का उपयोग करके खुले विवादों की सूची बनाएँ और accept_dispute_claim के साथ दावा स्वीकार करें।
  • शिपमेंट ट्रैक करेंcreate_shipment_tracking और update_shipment_tracking के साथ शिपमेंट ट्रैकिंग रिकॉर्ड बनाएँ और अपडेट करें।
  • लेन-देन सूचीबद्ध करेंlist_transactions के माध्यम से वैकल्पिक फ़िल्टरिंग के साथ लेन-देन इतिहास प्राप्त करें।

दस्तावेज़

PayPal एजेंट टूलकिट

PayPal एजेंट टूलकिट लोकप्रिय एजेंट फ्रेमवर्क जैसे कि OpenAI का Agent SDK, LangChain, Vercel का AI SDK, और Model Context Protocol (MCP) को PayPal APIs के साथ फ़ंक्शन कॉलिंग के माध्यम से एकीकृत करने में सक्षम बनाता है। यह TypeScript के लिए समर्थन शामिल करता है और PayPal APIs और PayPal SDKs के ऊपर बनाया गया है।

उपलब्ध टूल

PayPal एजेंट टूलकिट निम्नलिखित टूल प्रदान करता है:

इनवॉइस (Invoices)

  • create_invoice: PayPal सिस्टम में एक नया इनवॉइस बनाएं, जिसमें प्राप्तकर्ता की बिलिंग विवरण, लाइन आइटम, एक इनवॉइस नोट, एक कस्टम कलर थीम, एक वैकल्पिक शिपिंग लागत, और PAY_BY_BANK को भुगतान विधि के रूप में सक्षम करने का विकल्प शामिल हो।
  • create_recurring_series: एक आवर्ती इनवॉइस श्रृंखला बनाएं जो स्वचालित रूप से एक शेड्यूल पर इनवॉइस उत्पन्न और भेजती है।
  • list_invoices: वैकल्पिक पेजिनेशन और फ़िल्टरिंग के साथ इनवॉइस सूचीबद्ध करें।
  • get_invoice: किसी विशिष्ट इनवॉइस का विवरण प्राप्त करें।
  • send_invoice: प्राप्तकर्ताओं को इनवॉइस भेजें।
  • send_invoice_reminder: मौजूदा इनवॉइस के लिए एक अनुस्मारक भेजें।
  • cancel_sent_invoice: भेजा गया इनवॉइस रद्द करें।
  • generate_invoice_qr_code: इनवॉइस के लिए एक QR कोड उत्पन्न करें।

भुगतान (Payments)

  • create_order: प्रदान किए गए विवरण के आधार पर PayPal सिस्टम में एक ऑर्डर बनाएं।
  • get_order: किसी ऑर्डर का विवरण प्राप्त करें।
  • pay_order: एक अधिकृत ऑर्डर के लिए भुगतान प्रक्रिया करें।
  • create_refund: कैप्चर किए गए भुगतान के लिए रिफंड प्रक्रिया करें।
  • get_refund: किसी विशिष्ट रिफंड का विवरण प्राप्त करें।

विवाद प्रबंधन (Dispute Management)

  • list_disputes: सभी खुले विवादों का सारांश प्राप्त करें।
  • get_dispute: किसी विशिष्ट विवाद की विस्तृत जानकारी प्राप्त करें।
  • accept_dispute_claim: विवाद दावा स्वीकार करें।

शिपमेंट ट्रैकिंग (Shipment Tracking)

  • create_shipment_tracking: एक शिपमेंट ट्रैकिंग रिकॉर्ड बनाएं।
  • get_shipment_tracking: शिपमेंट ट्रैकिंग जानकारी प्राप्त करें।
  • update_shipment_tracking: शिपमेंट ट्रैकिंग जानकारी अपडेट करें।

कैटलॉग प्रबंधन (Catalog Management)

  • create_product: PayPal कैटलॉग में एक नया उत्पाद बनाएं।
  • list_products: वैकल्पिक पेजिनेशन और फ़िल्टरिंग के साथ उत्पाद सूचीबद्ध करें।
  • show_product_details: किसी विशिष्ट उत्पाद का विवरण प्राप्त करें।

सदस्यता प्रबंधन (Subscription Management)

  • create_subscription_plan: एक नई सदस्यता योजना बनाएं।
  • list_subscription_plans: सदस्यता योजनाएँ सूचीबद्ध करें।
  • show_subscription_plan_details: किसी विशिष्ट सदस्यता योजना का विवरण प्राप्त करें।
  • create_subscription: एक नई सदस्यता बनाएं।
  • show_subscription_details: किसी विशिष्ट सदस्यता का विवरण प्राप्त करें।
  • update_subscription: मौजूदा सदस्यता अपडेट करें।
  • cancel_subscription: एक सक्रिय सदस्यता रद्द करें।

रिपोर्टिंग और इनसाइट्स (Reporting and Insights)

  • list_transactions: वैकल्पिक पेजिनेशन और फ़िल्टरिंग के साथ लेनदेन सूचीबद्ध करें।
  • get_merchant_insights: एक व्यापारी के लिए व्यावसायिक बुद्धिमत्ता मेट्रिक्स और एनालिटिक्स प्राप्त करें।

TypeScript

स्थापना (Installation)

आपको इस स्रोत कोड की आवश्यकता नहीं है जब तक कि आप पैकेज को संशोधित नहीं करना चाहते। यदि आप केवल पैकेज का उपयोग करना चाहते हैं, तो चलाएँ:

npm install @paypal/agent-toolkit

आवश्यकताएँ (Requirements)

  • Node 18+

उपयोग (Usage)

लाइब्रेरी को आपके खाते के क्लाइंट आईडी और सीक्रेट के साथ कॉन्फ़िगर किया जाना चाहिए, जो आपके PayPal डेवलपर डैशबोर्ड में उपलब्ध है।

टूलकिट Vercel के AI SDK के साथ काम करता है और इसे टूल की सूची के रूप में पारित किया जा सकता है। अधिक विवरण के लिए, हमारे उदाहरण देखें।

import { PayPalAgentToolkit } from '@paypal/agent-toolkit/ai-sdk';
const paypalToolkit = new PayPalAgentToolkit({
  clientId: process.env.PAYPAL_CLIENT_ID,
  clientSecret: process.env.PAYPAL_CLIENT_SECRET,
  configuration: {
    actions: {
      invoices: {
        create: true,
        createRecurringSeries: true,
        list: true,
        send: true,
        sendReminder: true,
        cancel: true,
        generateQRC: true,
      },
      products: { create: true, list: true, update: true },
      subscriptionPlans: { create: true, list: true, show: true },
      shipment: { create: true, show: true, cancel: true },
      orders: { create: true, get: true },
      disputes: { list: true, get: true },
    },
  },
});

सैंडबॉक्स मोड का उपयोग करने के लिए, अपने कॉन्फ़िगरेशन के भीतर संदर्भ जोड़ें।

configuration: {
  context: {
    sandbox: true,
  }
}

वर्कफ़्लोज़ प्रारंभ करना (Initializing the Workflows)

import { PayPalWorkflows, ALL_TOOLS_ENABLED } from '@paypal/agent-toolkit/ai-sdk';
const paypalWorkflows = new PayPalWorkflows({
  clientId: process.env.PAYPAL_CLIENT_ID,
  clientSecret: process.env.PAYPAL_CLIENT_SECRET,
  configuration: {
    actions: ALL_TOOLS_ENABLED,
  },
});

उपयोग (Usage)

टूलकिट का उपयोग करना

const llm: LanguageModelV1 = getModel(); // The model to be used with ai-sdk
const { text: response } = await generateText({
  model: llm,
  tools: paypalToolkit.getTools(),
  maxSteps: 10,
  prompt: `Create an order for $50 for custom handcrafted item and get the payment link.`,
});

पर्यावरण चर (Environment Variables)

निम्नलिखित पर्यावरण चर का उपयोग किया जा सकता है:

  • PAYPAL_ACCESS_TOKEN: आपका PayPal एक्सेस टोकन
  • PAYPAL_ENVIRONMENT: सैंडबॉक्स मोड के लिए SANDBOX पर सेट करें, उत्पादन के लिए PRODUCTION (डिफ़ॉल्ट SANDBOX मोड है)

यह मार्गदर्शिका PayPal API एकीकरण के लिए एक्सेस टोकन उत्पन्न करने का तरीका बताती है, जिसमें आपका क्लाइंट आईडी और क्लाइंट सीक्रेट कैसे खोजें, शामिल है।

पूर्वापेक्षाएँ (Prerequisites)

  • PayPal डेवलपर खाता (सैंडबॉक्स के लिए)
  • PayPal व्यावसायिक खाता (उत्पादन के लिए)

अपना क्लाइंट आईडी और क्लाइंट सीक्रेट खोजना

  1. PayPal डेवलपर खाता बनाएं:

  2. अपने क्रेडेंशियल्स तक पहुंचें:

    • डेवलपर डैशबोर्ड में, मेनू में ऐप्स और क्रेडेंशियल्स पर क्लिक करें
    • अपनी आवश्यकताओं के अनुसार सैंडबॉक्स और लाइव मोड के बीच स्विच करें
  3. ऐप बनाएं या देखें:

    • नया ऐप बनाने के लिए, ऐप बनाएं पर क्लिक करें
    • अपने ऐप को एक नाम दें और उसके साथ जोड़ने के लिए एक व्यावसायिक खाता चुनें
    • मौजूदा ऐप्स के लिए, विवरण देखने के लिए ऐप के नाम पर क्लिक करें
  4. क्रेडेंशियल्स प्राप्त करें:

    • एक बार आपका ऐप बनाया या चुना जाता है, तो आपको अपनी स्क्रीन पर निम्न दिखाई देगा:
      • क्लाइंट आईडी: आपके ऐप के लिए एक सार्वजनिक पहचानकर्ता
      • क्लाइंट सीक्रेट: एक निजी कुंजी ("दिखाएं" पर क्लिक करने के बाद दिखाई देती है)
    • इन क्रेडेंशियल्स को सुरक्षित रूप से सहेजें क्योंकि एक्सेस टोकन उत्पन्न करने के लिए इनकी आवश्यकता होती है

एक्सेस टोकन उत्पन्न करना

cURL का उपयोग करना

curl -v https://api-m.sandbox.paypal.com/v1/oauth2/token \\
  -H \"Accept: application/json\" \\
  -H \"Accept-Language: en_US\" \\
  -u \"CLIENT_ID:CLIENT_SECRET\" \\
  -d \"grant_type=client_credentials\"

CLIENT_ID और CLIENT_SECRET को अपने वास्तविक क्रेडेंशियल्स से बदलें। उत्पादन के लिए, सैंडबॉक्स URL के बजाय https://api-m.paypal.com का उपयोग करें।

Postman का उपयोग करना

  1. https://api-m.sandbox.paypal.com/v1/oauth2/token पर एक नया अनुरोध बनाएं
  2. विधि को POST पर सेट करें
  3. प्रमाणीकरण के अंतर्गत, बेसिक ऑथ चुनें और अपना क्लाइंट आईडी और क्लाइंट सीक्रेट दर्ज करें
  4. बॉडी के अंतर्गत, x-www-form-urlencoded चुनें और मान client_credentials के साथ एक कुंजी grant_type जोड़ें
  5. अनुरोध भेजें

प्रतिक्रिया

एक सफल प्रतिक्रिया इस प्रकार दिखाई देगी:

{
  "scope": "...",
  "access_token": "Your Access Token",
  "token_type": "Bearer",
  "app_id": "APP-80W284485P519543T",
  "expires_in": 32400,
  "nonce": "..."
}

अपने क्लॉड डेस्कटॉप एकीकरण में उपयोग के लिए access_token मान कॉपी करें।

टोकन विवरण

  • सैंडबॉक्स टोकन: 3-8 घंटे के लिए मान्य
  • उत्पादन टोकन: 8 घंटे के लिए मान्य
  • समाप्ति से पहले टोकन रीफ्रेश लॉजिक लागू करने की अनुशंसा की जाती है

क्लॉड डेस्कटॉप के साथ टोकन का उपयोग करना

एक बार आपके पास अपना एक्सेस टोकन हो जाए, तो अपने क्लॉड डेस्कटॉप कनेक्टर कॉन्फ़िगरेशन में PAYPAL_ACCESS_TOKEN मान अपडेट करें:

{
  "env": {
    "PAYPAL_ACCESS_TOKEN": "YOUR_NEW_ACCESS_TOKEN",
    "PAYPAL_ENVIRONMENT": "SANDBOX"
  }
}

सर्वोत्तम अभ्यास

  1. क्लाइंट आईडी और क्लाइंट सीक्रेट को सुरक्षित रूप से संग्रहीत करें
  2. टोकन समाप्ति को संभालने के लिए टोकन रीफ्रेश लॉजिक लागू करें
  3. पर्यावरण-विशिष्ट टोकन का उपयोग करें (परीक्षण के लिए सैंडबॉक्स, वास्तविक लेनदेन के लिए उत्पादन)
  4. एप्लिकेशन कोड में टोकन हार्डकोडिंग से बचें

अस्वीकरण

AI-जनित सामग्री गलत या अधूरी हो सकती है। उपयोगकर्ता किसी भी जानकारी पर भरोसा करने से पहले उसे स्वतंत्र रूप से सत्यापित करने के लिए जिम्मेदार हैं। PayPal आउटपुट सटीकता के संबंध में कोई गारंटी नहीं देता है और इसके उपयोग से उत्पन्न किसी भी निर्णय, कार्रवाई या परिणाम के लिए उत्तरदायी नहीं है।