PayPal
officielLe serveur PayPal Model Context Protocol permet une intégration avec les API PayPal via l'appel de fonctions. Ce protocole prend en charge divers outils pour interagir avec différents services PayPal.
Que pouvez-vous faire avec PayPal MCP ?
Demandez à votre assistant de « créer une facture et de l'envoyer » ou de gérer d'autres tâches PayPal comme les paiements, les litiges et l'expédition.
- Créer et envoyer des factures — Générez une nouvelle facture avec les détails de facturation et les lignes d'articles, puis envoyez-la via
create_invoiceetsend_invoice. - Envoyer des rappels de facture — Envoyez un rappel pour une facture existante à l'aide de
send_invoice_reminder. - Traiter les paiements — Créez une commande et traitez son paiement avec
create_orderetpay_order. - Gérer les litiges — Listez les litiges ouverts et acceptez une réclamation à l'aide de
list_disputesetaccept_dispute_claim. - Suivre les expéditions — Créez et mettez à jour les enregistrements de suivi d'expédition avec
create_shipment_trackingetupdate_shipment_tracking. - Lister les transactions — Récupérez l'historique des transactions avec un filtrage optionnel via
list_transactions.
Documentation
PayPal Agent Toolkit
Le PayPal Agent Toolkit permet aux frameworks d'agents populaires, notamment l'Agent SDK d'OpenAI, LangChain, l'AI SDK de Vercel et le Model Context Protocol (MCP), de s'intégrer aux API PayPal via l'appel de fonctions. Il prend en charge TypeScript et est construit sur les API PayPal et les SDK PayPal.
Outils disponibles
Le PayPal Agent Toolkit fournit les outils suivants :
Factures
create_invoice: Créer une nouvelle facture dans le système PayPal, y compris les coordonnées de facturation du destinataire, les lignes d'articles, une note de facture, un thème de couleur personnalisé, un coût d'expédition optionnel et une option pour activer PAY_BY_BANK comme méthode de paiementcreate_recurring_series: Créer une série de factures récurrentes qui génère et envoie automatiquement des factures selon un calendrierlist_invoices: Lister les factures avec pagination et filtres optionnelsget_invoice: Récupérer les détails d'une facture spécifiquesend_invoice: Envoyer une facture aux destinatairessend_invoice_reminder: Envoyer un rappel pour une facture existantecancel_sent_invoice: Annuler une facture envoyéegenerate_invoice_qr_code: Générer un code QR pour une facture
Paiements
create_order: Créer une commande dans le système PayPal en fonction des détails fournisget_order: Récupérer les détails d'une commandepay_order: Traiter le paiement d'une commande autoriséecreate_refund: Traiter un remboursement pour un paiement capturéget_refund: Obtenir les détails d'un remboursement spécifique
Gestion des litiges
list_disputes: Récupérer un résumé de tous les litiges ouvertsget_dispute: Récupérer des informations détaillées sur un litige spécifiqueaccept_dispute_claim: Accepter une réclamation de litige
Suivi des expéditions
create_shipment_tracking: Créer un enregistrement de suivi d'expéditionget_shipment_tracking: Récupérer les informations de suivi d'expéditionupdate_shipment_tracking: Mettre à jour les informations de suivi d'expédition
Gestion du catalogue
create_product: Créer un nouveau produit dans le catalogue PayPallist_products: Lister les produits avec pagination et filtres optionnelsshow_product_details: Récupérer les détails d'un produit spécifique
Gestion des abonnements
create_subscription_plan: Créer un nouveau plan d'abonnementlist_subscription_plans: Lister les plans d'abonnementshow_subscription_plan_details: Récupérer les détails d'un plan d'abonnement spécifiquecreate_subscription: Créer un nouvel abonnementshow_subscription_details: Récupérer les détails d'un abonnement spécifiqueupdate_subscription: Mettre à jour un abonnement existantcancel_subscription: Annuler un abonnement actif
Rapports et analyses
list_transactions: Lister les transactions avec pagination et filtres optionnelsget_merchant_insights: Récupérer les métriques d'intelligence économique et les analyses pour un marchand
TypeScript
Installation
Vous n'avez pas besoin de ce code source sauf si vous souhaitez modifier le package. Si vous voulez simplement utiliser le package, exécutez :
npm install @paypal/agent-toolkit
Prérequis
- Node 18+
Utilisation
La bibliothèque doit être configurée avec l'identifiant client et le secret de votre compte, disponibles dans votre tableau de bord développeur PayPal.
Le toolkit fonctionne avec l'AI SDK de Vercel et peut être passé comme une liste d'outils. Pour plus de détails, consultez nos exemples
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 },
},
},
});
Pour utiliser le mode sandbox, ajoutez le contexte dans votre configuration.
configuration: {
context: {
sandbox: true,
}
}
Initialisation des 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,
},
});
Utilisation
Utilisation du toolkit
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.`,
});
Variables d'environnement
Les variables d'environnement suivantes peuvent être utilisées :
PAYPAL_ACCESS_TOKEN: Votre jeton d'accès PayPalPAYPAL_ENVIRONMENT: Définissez surSANDBOXpour le mode sandbox,PRODUCTIONpour la production (par défaut, modeSANDBOX)
Ce guide explique comment générer un jeton d'accès pour l'intégration de l'API PayPal, y compris comment trouver votre identifiant client et votre secret client.
Prérequis
- Compte développeur PayPal (pour le sandbox)
- Compte professionnel PayPal (pour la production)
Trouver votre identifiant client et votre secret client
-
Créer un compte développeur PayPal :
- Allez sur le tableau de bord développeur PayPal
- Inscrivez-vous ou connectez-vous avec vos identifiants PayPal
-
Accéder à vos identifiants :
- Dans le tableau de bord développeur, cliquez sur Applications et identifiants dans le menu
- Basculez entre les modes Sandbox et Live selon vos besoins
-
Créer ou consulter une application :
- Pour créer une nouvelle application, cliquez sur Créer une application
- Donnez un nom à votre application et sélectionnez un compte professionnel à associer
- Pour les applications existantes, cliquez sur le nom de l'application pour afficher les détails
-
Récupérer les identifiants :
- Une fois votre application créée ou sélectionnée, vous verrez un écran avec :
- Identifiant client : Un identifiant public pour votre application
- Secret client : Une clé privée (affichée après avoir cliqué sur « Afficher »)
- Enregistrez ces identifiants en toute sécurité car ils sont nécessaires pour générer des jetons d'accès
- Une fois votre application créée ou sélectionnée, vous verrez un écran avec :
Génération d'un jeton d'accès
Utilisation de 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\"
Remplacez CLIENT_ID et CLIENT_SECRET par vos identifiants réels. Pour la production, utilisez https://api-m.paypal.com au lieu de l'URL sandbox.
Utilisation de Postman
- Créez une nouvelle requête vers
https://api-m.sandbox.paypal.com/v1/oauth2/token - Définissez la méthode sur POST
- Sous Autorisation, sélectionnez Authentification de base et saisissez votre identifiant client et votre secret client
- Sous Corps, sélectionnez x-www-form-urlencoded et ajoutez une clé
grant_typeavec la valeurclient_credentials - Envoyez la requête
Réponse
Une réponse réussie ressemblera à :
{
"scope": "...",
"access_token": "Your Access Token",
"token_type": "Bearer",
"app_id": "APP-80W284485P519543T",
"expires_in": 32400,
"nonce": "..."
}
Copiez la valeur access_token pour l'utiliser dans votre intégration Claude Desktop.
Détails du jeton
- Jetons sandbox : Valides pendant 3 à 8 heures
- Jetons de production : Valides pendant 8 heures
- Il est recommandé d'implémenter une logique de renouvellement du jeton avant son expiration
Utilisation du jeton avec Claude Desktop
Une fois que vous avez votre jeton d'accès, mettez à jour la valeur PAYPAL_ACCESS_TOKEN dans votre configuration du connecteur Claude Desktop :
{
"env": {
"PAYPAL_ACCESS_TOKEN": "YOUR_NEW_ACCESS_TOKEN",
"PAYPAL_ENVIRONMENT": "SANDBOX"
}
}
Bonnes pratiques
- Stockez l'identifiant client et le secret client en toute sécurité
- Implémentez une logique de renouvellement du jeton pour gérer l'expiration
- Utilisez des jetons spécifiques à l'environnement (sandbox pour les tests, production pour les transactions réelles)
- Évitez de coder en dur les jetons dans le code de l'application
Avertissement
Le contenu généré par l'IA peut être inexact ou incomplet. Les utilisateurs sont responsables de vérifier indépendamment toute information avant de s'y fier. PayPal ne garantit pas l'exactitude des résultats et n'est pas responsable des décisions, actions ou conséquences résultant de leur utilisation.