PAYPAL API Soap - 2007 Guide de référence [fr]

Guide de référence de l'API SOAP Référence : 100002.en_US-20070524
© 2007 PayPal, Inc. Tous droits réservés. PayPal et le logo P ayPal sont des marques déposées de PayPal, Inc. Les autres marques et marques commerciales mentionnées appartiennent à leurs propriétaires respectifs. Les informations contenues dans ce document sont la propriété de PayPal, Inc. et ne peuvent être utilisées, reproduites ni diffusées sans l'autorisation écrite de PayPal, Inc. PayPal Europe Limited est autorisée et réglementée par la Financial Services Authority (FSA) du Royaume-Uni en tant qu'institution émettrice de monnaie électronique. Numéro de registre FSA de PayPal : 226056.
Avis de non responsabilité : PayPal, Inc. fournit les informations de ce manuel en l'état. PayPal, Inc. ne fournit de quelque manière que ce soit (expresse, tacite ou légale) aucune garantie résultant de ces informations. PayPal, Inc. n'assume aucune responsabilité en cas d'erreurs ou d 'omissions pour tous dommages (directs ou indirects), résultant de l'utilisation de ce manuel ou des informations qu'il contient ou résultant de l'application ou de l'utilisation du produit ou du service décrit dans ce document. PayPal, Inc. se réserve le droit de modifier les informations de ce manuel sans préavis. PayPal, Inc. ne garantit pas que les fonctionnalités décrites dans ce manuel seront annoncées ou mises à disposition de tous à l'avenir.
Sommaire
Préface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
A propos de ce document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Public ciblé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Conventions typographiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Problèmes relatifs à la documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Historique des révisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Chapitre 1 Architecture de l'API SOAP de PayPal . . . . . . . . . . . 13
Architecture des services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Définitions du schéma WSDL/XSD PayPal . . . . . . . . . . . . . . . . . . . . . . . 14
Concepts et terminologie API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
RequesterCredentials SOAP : identifiant, mot de passe, signature et appelé. . . . . . 16
Nœuds de service SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Implémentation SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Style de message SOAP : doc-literal . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Structure d'une requête SOAP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Structure d'une requête . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Structure de la réponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Réponses aux erreurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
CorrelationID pour signaler des problèmes à PayPal . . . . . . . . . . . . . . . . . . 23
Définitions de l'API SOAP de PayPal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Codage de caractères, types et formats des données et devises. . . . . . . . . . . . 24
API par fonction de gestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
API pour échanger des fonds ou afficher des informations . . . . . . . . . . . . . . . 26
Notification instantanée de paiement et API. . . . . . . . . . . . . . . . . . . . . . . 26
Mai 2007 3
Sommaire
Chapitre 2 Structures fondamentales des requêtes
et des réponses eBL . . . . . . . . . . . . . . . . . . . . 29
Schéma des principaux types eBL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
AbstractRequestType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
AbstractResponseType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Chapitre 3 API Autorisation et collecte . . . . . . . . . . . . . . . . .33
DoCapture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Schéma des types de DoCapture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
DoCaptureRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
DoCaptureResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
DoAuthorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Schéma des types de DoAuthorization . . . . . . . . . . . . . . . . . . . . . . . . . 41
DoAuthorizationRequest. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
DoAuthorizationResponse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
DoVoid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Schéma des types de DoVoid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
DoVoidRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
DoVoidResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
DoReauthorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Schéma des types de DoReauthorization . . . . . . . . . . . . . . . . . . . . . . . . 45
DoReauthorizationRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
DoReauthorizationResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Chapitre 4 API Paiement express PayPal . . . . . . . . . . . . . . . 47
Paiement express PayPal pour les enchères eBay . . . . . . . . . . . . . . . . . . . . . 47
SetExpressCheckout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Schéma des types de Set ExpressCheckout . . . . . . . . . . . . . . . . . . . . . . 48
SetExpressCheckoutRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
SetExpressCheckoutResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
GetExpressCheckoutDetails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Schéma des types de GetExpressCheckoutDetails . . . . . . . . . . . . . . . . . . . 58
GetExpressCheckoutDetailsRequest . . . . . . . . . . . . . . . . . . . . . . . . . . 59
GetExpressCheckoutDetailsResponse . . . . . . . . . . . . . . . . . . . . . . . . . 60
DoExpressCheckoutPayment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Schéma des types de DoExpressCheckoutPayment . . . . . . . . . . . . . . . . . . 63
4 Mai 2007
Sommaire
DoExpressCheckoutPaymentRequest. . . . . . . . . . . . . . . . . . . . . . . . . . 64
DoExpressCheckoutPaymentResponse. . . . . . . . . . . . . . . . . . . . . . . . . 72
Chapitre 5 API GetTransactionDetails . . . . . . . . . . . . . . . . .77
Schéma des types de GetTransactionDetails . . . . . . . . . . . . . . . . . . . . . . . . 77
GetTransactionDetailsRequest. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
GetTransactionDetailsResponse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Chapitre 6 API MassPay . . . . . . . . . . . . . . . . . . . . . . . .91
Notification instantanée de paiement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Schéma des types de MassPay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
MassPayRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
MassPayResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Chapitre 7 API RefundTransaction . . . . . . . . . . . . . . . . . . . 97
Schéma des types de RefundTransaction . . . . . . . . . . . . . . . . . . . . . . . . . . 97
RefundTransactionRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
RefundTransactionResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Chapitre 8 API TransactionSearch . . . . . . . . . . . . . . . . . . 101
Schéma des types de TransactionSearch . . . . . . . . . . . . . . . . . . . . . . . . . .101
TransactionSearchRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
TransactionSearchResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106
Champs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107
Mai 2007 5
Sommaire
Chapitre 9 API Paiements récurrents . . . . . . . . . . . . . . . . . 109
SetCustomerBillingAgreement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
Schéma des types de SetCustomerBillingAgreement. . . . . . . . . . . . . . . . . .110
SetCustomerBillingAgreementRequest . . . . . . . . . . . . . . . . . . . . . . . . .110
SetCustomerBillingAgreementResponse . . . . . . . . . . . . . . . . . . . . . . . .113
GetBillingAgreementCustomerDetails . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
Schéma des types de GetBillingAgreementCustomerDetails . . . . . . . . . . . . . .114
GetBillingAgreementCustomerDetailsRequest . . . . . . . . . . . . . . . . . . . . .114
GetBillingAgreementCustomerDetailsResponse . . . . . . . . . . . . . . . . . . . .115
CreateRecurringPaymentsProfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
Schéma des types de CreateRecurringPaymentsProfile . . . . . . . . . . . . . . . .115
CreateRecurringPaymentsProfileRequest. . . . . . . . . . . . . . . . . . . . . . . .116
CreateRecurringPaymentsProfileResponse. . . . . . . . . . . . . . . . . . . . . . .119
Chapitre 10 ReferenceTransactions . . . . . . . . . . . . . . . . . . 121
DoReferenceTransaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
DoReferenceTransactionRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . .123
DoReferenceTransactionResponse . . . . . . . . . . . . . . . . . . . . . . . . . . .125
Annexe A Codes et messages d'erreur de toutes les API PayPal . . 129
Erreurs de l'API Autorisation et collecte . . . . . . . . . . . . . . . . . . . . . . . . . . .129
Erreurs de l'API Paiement express PayPal . . . . . . . . . . . . . . . . . . . . . . . . .133
Erreurs de l'API GetTransactionDetails . . . . . . . . . . . . . . . . . . . . . . . . . . .151
Erreurs de l'API MassPay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
Erreurs de l'API RefundTransaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
Erreurs de l'API TransactionSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159
Erreurs de l'API Paiements récurrents. . . . . . . . . . . . . . . . . . . . . . . . . . . .160
Erreurs SetCustomerBillingAgreement . . . . . . . . . . . . . . . . . . . . . . . . .160
Erreurs de GetBillingAgreementCustomerDetails . . . . . . . . . . . . . . . . . . . .162
Erreurs de CreateRecurringPaymentsProfile . . . . . . . . . . . . . . . . . . . . . .163
Transactions de référence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .165
Annexe B Kit de développement Java pour l'API SOAP . . . . . . . 171
Installation du kit de développement PayPal. . . . . . . . . . . . . . . . . . . . . . . . .171
Langues acceptées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171
Numéro de version du kit de développement PayPal . . . . . . . . . . . . . . . . . .171
Configuration matérielle recommandée . . . . . . . . . . . . . . . . . . . . . . . . . . .172
6 Mai 2007
Télécharger et décompresser le kit de développement PayPal . . . . . . . . . . . . . . .172
Configuration post-installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
Ajouter des fichiers JAR du kit de développement PayPal dans CLASSPATH . . . . .172
Répertoires et configurations facultatives du kit de développement PayPal . . . . . .173
Journaux du kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . . .173
Services d'API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
Préférences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175
Exemples d'applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177
Exemple d'utilisateur API avec signature API . . . . . . . . . . . . . . . . . . . . . .177
Exemple d'utilisateur API avec certificat d'API. . . . . . . . . . . . . . . . . . . . . .178
Configurer ColdFusion pour le kit de développement PayPal Java . . . . . . . . . . . . .178
Récapitulatif des étapes de l'installation. . . . . . . . . . . . . . . . . . . . . . . . .178
Exemples de pages CFM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179
Recopier les fichiers JAR après les mises à jour WSDL . . . . . . . . . . . . . . . .180
Annexe C Kits de développement PayPal ASP.NET
et Classic ASP pour l'API SOAP . . . . . . . . . . . . . . . . . 181
Sommaire
Installation du kit de développement PayPal. . . . . . . . . . . . . . . . . . . . . . . . .181
Normes acceptées. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
Télécharger et installer le kit de développement PayPal . . . . . . . . . . . . . . . .182
Répertoires du kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . .182
Désinstaller le kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . .183
Installer les exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
Configuration du kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . . .183
Ajouter les références ASP.NET dans les DLL du kit de développement PayPal . . . .183
Modifier le fichier Web.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
Définir le nombre maximum de tentatives pour les requêtes SOAP. . . . . . . . . . .184
Journaux du kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . . .184
Activer la prise en charge des procurations pour ASP.NET . . . . . . . . . . . . . . .186
Services d'API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
Documentation complète du kit de développement PayPal et des classes d'API. . . .187
Préférences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187
Aperçu des classes liées aux préférences. . . . . . . . . . . . . . . . . . . . . . . .188
Classes COM spécifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
COMAdapter2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
COMArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
COMUtil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
Exemples d'applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
Exemple d'utilisateur API avec signature API . . . . . . . . . . . . . . . . . . . . . .191
Mai 2007 7
Sommaire
Exemple d'utilisateur et de certificat d'API. . . . . . . . . . . . . . . . . . . . . . . .192
Installer les exemples sur Microsoft IIS . . . . . . . . . . . . . . . . . . . . . . . . .192
Exécuter les exemples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
Annexe D Kit de développement PHP pour l'API SOAP . . . . . . . 195
Configurer PHP et Apache pour le kit de développement PayPal . . . . . . . . . . . . . .195
Normes acceptées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
Langues acceptées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
Numéro de version du kit de développement PayPal . . . . . . . . . . . . . . . . . .196
Télécharger et installer le kit de développement PayPal . . . . . . . . . . . . . . . . . .196
Installer sur un ordinateur local . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
Installer sur un ordinateur distant à partir de Microsoft Windows . . . . . . . . . . . .197
Répertoires et fichiers de configuration du kit de développement PayPal . . . . . . . . . .198
Fichier de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
Journaux du kit de développement PayPal . . . . . . . . . . . . . . . . . . . . . . .199
Services d'API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Préférences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201
Aperçu des classes liées aux préférences. . . . . . . . . . . . . . . . . . . . . . . .202
Exemples d'applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
Exemple d'utilisateur API avec signature API . . . . . . . . . . . . . . . . . . . . . .203
Exemple d'utilisateur et de certificat d'API. . . . . . . . . . . . . . . . . . . . . . . .203
Exécuter les exemples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203
Annexe E Abréviations des états et provinces. . . . . . . . . . . . 205
Annexe F Codes pays . . . . . . . . . . . . . . . . . . . . . . . . 209
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
8 Mai 2007

Préface

A propos de ce document

Ce document décrit l'API (Application Programming Interface) et le service SOAP PayPal.

Public ciblé

Ce document s'adresse aux programmeurs qui maîtrisent les normes de programmation, par exemple le protocole SOAP (Simple Object Access Protocol), le langage WSDL (Web Services Description Language) et le langage XSD (XML Schema Definition).

Conventions typographiques

Différents types de caractères sont utilisés dans ce document pour identifier les caractéristiques du texte. Ces types de caractères et leurs caractéristiques sont décrits ci­dessous :
Type de caractère Utilisation
italique sérif Titre de document
Terme traité ou défini Exemple : un fichier est un flux de données sous fo rm e de caractères lisibles ou
inscriptibles… Valeurs booléennes (pas les mots-clés)
Exemple : la fonction renvoie la valeur true si une erreur se produit.
Guide de référence de l'API SOAP Mai 2007 9
Conventions typographiques
Type de caractère Utilisation
police à espacement constant
gras sérif Noms d'interfaces utilisateur, tels que les noms de fenêtres ou les options de
oblique san­sérif
Chemins d'accès aux fichiers ou noms de fichier apparaissant dans le corps du texte.
Noms associés au code apparaissant dans le corps du texte. Ces noms sont utilisés pour les fonctions, les rappels, les arguments, les structures de données et les champs.
Exemple : AbstractResponseType est le type de réponse SOAP sur lequel sont basés tous les modes de réponse API de PayPal.
Composants de requêtes et de réponses de protocole Internet, tels que les variables HTTPS et FORM.
Exemple : le système PayPal utilise une requête method=POST pour renvoyer les variables d'état NIP relatives aux abonnements, telles que txn_type.
menus. Exemple : dans la page Préférences, cliquez sur Email pour confirmer votre
adresse email. Espaces réservés utilisés dans le contexte d'un format, ou norme de
programmation, ou descriptions formelles de la syntaxe du système PayPal. Les espaces réservés indiquent les valeurs ou les noms que l'utilisateur doit fournir.
Exemple : par exemple, amount est la variable d'un panier contenant un seul objet, mais amount_X est le nom de la variable d'un panier contenant plusieurs objets. amount_3 est le montant du troisième objet dans un panier contenant plusieurs objets.
Outre les types de caractères décrits ci-dessus, les mots et les phrases de ce document peuvent également apparaître en gras ou soulignés, auquel cas ils donnent des informations supplémentaires. Ces informations sont décrites ci-dessous :
Attribut du texte Utilisation
xxxxxx Lien hypertexte vers une page du document actuel ou vers un autre document de
l'ensemble.
xxxxxx Lien hypertexte vers une URL ou démarrant une action Web, telle que l'envoi d'un
email.
10 Mai 2007 Guide de référence de l'API SOAP

Problèmes relatifs à la documentation

Si vous relevez des erreurs ou si vous rencontrez des problèmes liés à cette documentation, envoyez-nous un email en suivant les instructions ci-dessous. Décrivez l'erreur ou le problème aussi précisément que possible et communiquez-nous le titre du document, sa date (indiquée dans le pied de page de chaque page) et le(s) numéro(s) de page(s).
Pour contacter le service d'assistance des développeurs au sujet des problèmes liés à la documentation :
1. Connectez-vous à votre compte à l'adresse https://developer.paypal.com/ en
entrant votre adresse email et votre mot de passe dans la zone Connexion sécurisée.
2. Cliquez sur Help Center en haut à droite de la page.
3. Cliquez sur Email PayPal Technical Support.
4. Complétez le formulaire.

Historique des révisions

Problèmes relatifs à la documentation
Historique des révisions du Guide de référence de l’API SOAP.
TABLEAU P.1 Historique des ré visions
Date Description
Avril 2007 Ajout d'API pour les paiements récurrents :
SetCustomerBillingAgreement, GetBillingAgreementCustomerDeta ils et CreateRecurringPaymentsProfile.
Mars 2007 Correction de problèmes mineurs y compris l'ajout des codes Switch/Solo aux
codes de réponse AVS et aux codes de réponse CVV2 (cryptogramme visuel),
dans le chapitre API Paiement direct. Février 2007 Correction de problèmes mineurs. Décembre 2006 Correction de problèmes mineurs. Octobre 2006 Ouvrage rebaptisé Guide de référence de développement d'API SOAP Les
guides précédents portant sur les kits de développement pour SOAP sont inclus
dans cet ouvrage. Juin 2006 Champ CardNumber ajouté à l'API TransactionSearch. Messages d'erreur
sensiblement améliorés pour l'API Paiement direct. Changements mineurs dans
un message d'erreur de l'API Paiements groupés. Mars 2006 Mise à jour avec les nouvelles informations d'identification des API : signatures
API. Nouveau nœud de service SOAP pour les signatures.
Diverses corrections mineures.
Guide de référence de l'API SOAP Mai 2007 11
Historique des révisions
T
ABLEAU P.1 Historique des ré visions (s uite)
Date Description
Janvier 2006 Messages d'erreur supplémentaires pour les API Autorisation et collecte et les
Décembre 2005 Suppression de la description erronée indiquant que le champ cpp-header-
API Paiement express PayPal.
image de SetExpressCheckoutRequest doit être encodé dans l'URL.
12 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de
1
PayPal
L'API SOAP de PayPal offre un accès par programmation aux fonctions et services de PayPal. Les développeurs peuvent créer des applications, des outils et des services personnalisés qui correspondent aux mêmes services et outils disponibles sur le site principal de Paypal, https://www.paypal.fr/. Les applications classiques sont la recherche de transactions, les paiements groupés et les remboursements. L'API repose sur des normes ouvertes communément appelées « Services Web », qui englobent le protocole SOAP (Simple Object Access Protocol), le langage WSDL (Web Services Definition Language) et le langage XSD (XML Schema Definition). Ces normes sont acceptées par un large éventail d'outils de développement sur diverses plates-formes.

Architecture des services

A l'instar de nombreux services Web, les services SOAP de PayPal constituent une combinaison de schémas, de serveurs matériels et logiciels et de services de base côté client et côté serveur.
Guide de référence de l'API SOAP Mai 2007 13
Architecture de l'API SOAP de PayPal
Architecture des services
FIGURE 1.1 Schéma détaillé des services SOAP de PayPal
Dans un modèle de traitement orienté objet, l'interface des requêtes et des répo nses SOAP est un objet dans le langage de programmation natif de votre application. Votre client SOAP tiers génère les interfaces vers des objets métier et les relais réseau à partir des fichiers WSDL et XSD fournis par PayPal qui indiquent la structure du message SOAP, son contenu et les liaisons des services de l'API PayPal. Une application d'entreprise utilise des données sous forme de propriétés d'objets pour envoyer et recevoir des données en appelant des méthodes d'objet. Le client SOAP gère les détails relatifs à la création de la requête SOAP, à son envoi au service PayPal et à la reconversion de la réponse en objet.

Définitions du schéma WSDL/XSD PayPal

Le schéma des services Web de PayPal et ses composants eBay Business Language (eBL) de base et principaux sous-jacents sont obligatoires pour développer des applications avec l'API PayPal. Le tableau ci-après indique les emplacements des fichiers WSDL et XSD.
TABLEAU 1.1 Emplaceme nts des fichiers WSDL e t XSD de PayPal
Développer et tester avec le service de l'API de l'Environnement de test de PayPal Schéma de PayPal https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl Composants eBL
de base et types de composants
https://www.sandbox.paypal.com/wsdl/eBLBaseComponents.xsd https://www.sandbox.paypal.com/wsdl/CoreComponentTypes.xsd
14 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de PayPal
Architecture des services
T
ABLEAU 1.1 Emplace ments des fichiers WSDL e t XSD de PayPal ( suite)
Production avec le service de l'API PayPal en direct Schéma de PayPal https://www.paypal.com/wsdl/PayPalSvc.wsdl Composants eBL
de base et types de composants
http://www.paypal.com/wsdl/eBLBaseComponents.xsd http://www.paypal.com/wsdl/CoreComponentTypes.xsd

Concepts et terminologie API

Vous trouverez ci-dessous quelques concepts et termes de base concernant le service API de PayPal et l'authentification de la sécurité.
TABLEAU 1.2 Concepts et termes de b ase rela tifs à la configuration de l'API PayPal
Terme Définition
Appels API Services d'API (Application Programming Interface) PayPal permettant aux sociétés d'effectuer
des paiements, de rechercher des transactions, de rembourser des paiements, d'afficher les informations sur les transactions et d'autres fonctions de gestion.
Certificat d'API
Signature API S'exclut mutuellement avec la signature API. Signature numérique unique générée par PayPal
S'exclut mutuellement avec la signature API. Fichier de certificat numérique unique généré par PayPal que vous devez télécharger sur le site de PayPal et utiliser sur l'ordinateur client pour crypter les requêtes HTTPS de vos appels API vers le serveur API PayPal.
Vous pouvez utiliser un certificat d'API si vous disposez d'un contrôle total sur votre propre serveur Web.
(ligne de texte ou hachage) que vous copiez sur le site de PayPal et incluez dans vos appels API. Alternative à la sécurité par certificat d'API.
La combinaison de votre signature numérique, votre identifiant API et votre mot de passe API forme une authentification à trois jetons car vous incluez chacun d'eux comme jeton par programmation dans vos appels API.
Une signature API convient parfaitement pour les serveurs Web Microsoft Windows ou d'autres configurations de serveur Web partagées, par exemple celles utilisées par les services d'hébergement Web.
Identifiant et mot de passe API
Autorisation d'appelé
Guide de référence de l'API SOAP Mai 2007 15
Nom et mot de passe d'identification de compte générés par PayPal que vous utilisez spécifiquement pour effectuer des appels API. Vous devez entrer votre identifiant et votre mot de passe API pour chaque appel API. L'identifiant et le mot de passe API diffèrent de vos identifiant (adresse email) et mot de passe de connexion PayPal.
Indicateur dans un appel API du compte pour lequel l'appel est effectué. Correspond à la fonction par programmation de l'autorisation tierce. La valeur du champ Appelé est l'adresse email PayPal du tiers.
Architecture de l'API SOAP de PayPal
Architecture des services
T
ABLEAU 1.2 Concep ts et termes de base relatifs à la configuration de l'API PayPal
(suite)
Terme Définition
Accès direct Une société effectue elle-même des appels API à partir de son propre serveur vers le serveur de
PayPal. Elle possède son propre certificat d'API, ou encore sa signature, son identifiant et son mot de passe API.
Exemple : Un programmateur de la société d'un marchand obtient un fichier de certificat d'API délivré par
PayPal et effectue des appels API pour la société à partir de son serveur Web.
Accès tiers Une autre personne ou société effectue des appe ls API pour votre compte. Vous octroyez au tiers
la permission d'effectuer des appels API pour vous. Exemple : Un service d'hébergement sur Internet possède ses propres certificat d'API, identifiant et mot de
passe API. Ses clients, à savoir des marchands qui utilisent PayPal, autorisent le service d'hébergement à effectuer des appels API pour leur compte. Le service d'hébergement inclut l'adresse email PayPal du marchand dans le champ Appelé d'un appel API.

Sécurité

Le service API SOAP de PayPal est protégé, et seuls les membres PayPal autorisés peuvent l'utiliser. Il existe quatre niveaux de sécurité :
1. Un identifiant API (champ Identifiant) et un mot de passe API (champ Mot de passe)
obligatoires
2. Un troisième mécanisme d'authentification obligatoire, parmi les suivants :
– Signature des requêtes côté client via un certificat d'API émis par PayPal – Authentification des requêtes via une signature API incluse dans la requête (champ
Signature)
3. Autorisation tierce facultative d'effectuer l'appel API au nom d'un autre compte (champ
Appelé facultatif)
4. Transmission de données SSL (Secure Sockets Layer) En cas d'échec de la sécurité authentifiée à l'un de ces niveaux, l'accès à l'API SOAP de PayPal
est refusé.
RequesterCredentials SOAP : identifiant, mot de passe, signature et
appelé
Pour la sécurité de votre entreprise, PayPal doit vérifier que les marchands ou les développeurs tiers sont autorisés à initier une transaction avant d'en effectuer une. PayPal authentifie chaque requête. Si la requête ne peut pas être authentifiée, une erreur de sécurité SOAP est renvoyée.
16 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de PayPal
Architecture des services
Dans l'en-tête de la requête SOAP, votre client SOAP doit définir les éléments Username et Password pour transmettre une combinaison identifiant/mot de passe API. En outre, vous
pouvez définir les éléments Signature ou Subject pour indiquer votre chaîne de signature API et une adresse email de compte tiers facultative pour l'authentification. Vous trouverez ci­dessous un exemple partiel des éléments RequesterCredentials requis pour toutes les requêtes SOAP. Pour une corrélation de ces éléments avec la structure générique d'une requête SOAP complète, reportez-vous à la section « Structure d'une requête SOAP » page 18.
<SOAP-ENV:Header>
<RequesterCr edentials xmlns=”urn: ebay:api:PayPalAPI”
xsi:type=”ebl:CustomSecurityHe aderType”>
<Credentials xmlns=”urn:ebay:a pis:eBLBaseComponents ”
xsi:type=”ebl:UserIdPasswordTy pe”>
<Username >api_username</Username> <Password >api_password</Password> <Signature >api_signature</Signature> <Subject>authorizing_account_emailaddress</Subject>
</Credentials>
</RequesterCredentials>
</SOAP-ENV:Header>
où :
TABLEAU 1.3 Eléments d'auth entificat ion Reque sterCreden tials dan s un en-tête
SOAP
Elément Valeur Description
<Identifiant> api_username Votre identifiant API, généré automatiquement par PayPal
lorsque vous demandez un certificat numérique pour utiliser l'API SOAP de PayPal. Cette valeur s'affiche sur
https://www.paypal.fr/
> Informations relatives au certificat d'API.
REMARQUE : le Guide d'utilisation de l'Environnement de test
<Mot de passe>
<Signature> api_signature Votre signature API, si vous en utilisez une à la place d'un
<Appelé> authorizing_
api_password Votre mot de passe API, que vous spécifiez lorsque vous
demandez un certificat numérique pour utiliser l'API SOAP de PayPal.
certificat d'API. Adresse email d'un tiers pour lequel vous envoyez des requêtes à
account_
emailaddress
l'API SOAP de PayPal. Votre identifiant API doit avoir reçu l'autorisation de ce tiers d'effectuer une requête API PayPal spécifique.
dans vos Préférences sous Accès à l'API
PayPal explique comment obtenir des
certificats numériques à utiliser avec l'API SOAP de PayPal.
Guide de référence de l'API SOAP Mai 2007 17
Architecture de l'API SOAP de PayPal

Nœuds de service SOAP

Nœuds de service SOAP
Selon le mécanisme d'authentification que vous avez choisi, vos requêtes SOAP doivent être traitées par différents nœuds de service.
TABLEAU 1.4 Nœuds de service SOAP
Mécanisme d'authentification Nœud de service réel de production
Signature API https://api-3t.paypal.com/2.0/ https://api-3t.sandbox.paypal.com/2.0/ Certificat d'API https://api.paypal.com/2.0/ https://api.sandbox.paypal.com/2.0/
REMARQUE : pour la correspondance entre les appels API et leurs nœuds de service,
Nœud de service test (Environnement de test)
reportez-vous au Tableau 1.8, « API par fonction de gestion », page 25.

Implémentation SOAP

Cette section contient des informations sur l'implémentation SOAP de PayPal.

Style de message SOAP : doc-literal

PayPal utilise des messages SOAP de type doc-literal, et non rpc-encoding. Avec doc-literal, un appel d'interface de service unique transmet un document XLM dans la
requête au serveur API de PayPal, qui répond par une instance de document XML.

Structure d'une requête SOAP

Le schéma suivant illustre le contenu de la structure d'une requête SOAP de PayPal. T outes les API PayPal reposent sur deux structures fondamentales : AbstractRequestType
et AbstractResponseType.
18 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de PayPal
FIGURE 1.2 Schéma de l'enveloppe d'une requête SOAP
Implémentation SOAP

Structure d'une requête

Vous trouverez ci-dessous la description annotée de la struct ure de requête SOAP requise par l'API SOAP de PayPal.
Structure générale de la requête SOAP de l'API PayPal
<?xml version=”1.0” encoding=” UTF-8”?> <SOAP-ENV:Envelope xmlns:xsi=” http://www.w3.org/ 2001/XMLSchema-instan ce”
xmlns:SOAP-ENC=”http://schemas .xmlsoap.org/soap/enc oding/” xmlns:SOAP-ENV=”http://schemas .xmlsoap.org/soap/env elope/” xmlns:xsd=”http://www.w3.org/2 001/XMLSchema” SOAP-ENV:encodingStyle=”http:/ /schemas.xmlsoap.o rg/soap/encoding/”
><SOAP-ENV:Header>
<RequesterCr edentials xmlns=”urn: ebay:api:PayPalAPI”>
<Credentials xmlns=”urn:ebay:a pis:eBLBaseCompone nts”>
<Username >api_username</Username> <Password >api_password</Password> <Signature /> <Subject/>
</Credentials>
</RequesterCredentials>
</SOAP-ENV:Header> <SOAP-ENV:Body>
<specific_api_name_Req xmlns=”urn:ebay:api:PayP alAPI”>
Guide de référence de l'API SOAP Mai 2007 19
Architecture de l'API SOAP de PayPal
Implémentation SOAP
<specific_api_name_Request>
<Version xml ns=urn:ebay:apis:eBLBas eComponents”>service_version </Version> <required_or_optional_fields xsi:type=”some_type_here”> data </required_or_optional_fields>
</specific_api_name_Request>
</specific_api_name_Req>
</SOAP-ENV:Body> </SOAP-ENV:Envelope>
T
ABLEAU 1.5 Annotation d'une requête SOAP générique
Lignes Commentaire
12, 13 Les champs <Username> et <Password> font partie du mécanisme d'authentification
de la sécurité <RequesterCredentials> de l'API SOAP de PayPal que vous devez créer pour chaque en-tête de requête SOAP. Pour plus de détails, reportez-vous à la section
appelé » page 16
14 L'élément <Signature> doit inclure votre chaîne de signature API s'il s'agit du type
d'informations d'identification API que vous utilisez. Pour en savoir plus, reportez-vous au
tête SOAP », page 17
« RequesterCredentials SOAP : identifiant, mot de passe, signature et
.
Tableau 1.3, « Eléments d'authentification RequesterCredentials dans un en-
.
15 L'élément <Subject> peut indiquer un compte PayPal tiers qui vous autorise à
effectuer cette requête. Pour en savoir plus, reportez-vous au
d'authentification RequesterCredentials dans un en-tête SOAP », page 17
19 à 27 La requête SOAP de chaque API PayPal suit le modèle suivant d'attribution de nom aux
éléments. L'élément Req est ajouté au nom spécifique de l'API, et specific_api_name_Request est imbriqué dans cet élément. Chaque specific_api_name_Request a un specific_api_name_RequestType correspondant.
22 Le numéro de version de l'API SOAP de PayPal est requis pour chaque requête SOAP.
Ce numéro de version est la valeur de ns:version dans https://www.paypal.com/wsdl/PalPalSvc.wsdl
24 Pour en savoir plus sur les éléments et les valeurs obligatoires et facultatifs pour des
requêtes spécifiques, consultez la description de chaque API.
T ableau 1.3, « Eléments
.
20 Mai 2007 Guide de référence de l'API SOAP

Structure de la réponse

Vous trouverez ci-dessous la description annotée de la structure d'une réponse SOAP de l'API PayPal, lorsque la réponse est Success :
<?xml version=”1.0”?> <SOAP-ENV:Envelope
xmlns:SOAP-ENV=”http://schemas .xmlsoap.org/soap/env elope/” xmlns:SOAP-ENC=”http://schemas .xmlsoap.org/soap/enc oding/” xmlns:xsi=”http://www.w3.org/2 001/XMLSchema-instanc e” xmlns:xsd=”http://www.w3.org/2 001/XMLSchema” xmlns:xs=”http://www.w3.org/20 01/XMLSchema” xmlns:cc=”urn:ebay:apis:CoreCo mponentTypes” xmlns:wsu=”http://schemas.xmls oap.org/ws/2002/07 /utility” xmlns:saml=”urn:oasis:names:tc :SAML:1.0:assertion” xmlns:ds=”http://www.w3.org/20 00/09/xmldsig#” xmlns:wsse=”http://schemas.xml soap.org/ws/2002/1 2/secext” xmlns:ebl=”urn:ebay:apis:eBLBa seComponents” xmlns:ns=”urn:ebay:api:PayPalA PI”> <SOAP-ENV:Header>
<Security
xmlns=”http://schemas.xmlsoap. org/ws/2002/12/sece xt”
xsi:type=”wsse:SecurityType” /> <RequesterCredentials xmlns=”urn: ebay:api:PayPalAPI”
xsi:type=”ebl:CustomSecurityHe aderType”>
<Credentials
xmlns=”urn:ebay:apis:eBLBaseCo mponents” xsi:type=”ebl:UserIdPasswordTy pe”
/> </RequesterCredentials>
</SOAP-ENV:Header> <SOAP-ENV:Body id=”_0”>
<specific_api_name_Response xmlns=”urn:ebay:api :PayPalAPI”>
<Timestamp xmlns=”urn:ebay:api:PayPalAPI” >
dateTime_in_UTC/GMT
</TIMESTAMP>
<Ack xmln s=”urn:ebay:apis:eBLB aseComponents”>Succ ess</Ack>
<Version xmlns=”urn:ebay:apis:eBL BaseComponents”>
serviceVersion
</Version>
<Correlation Id xmlns=”urn:ebay:ap is:eBLBaseComponents”>
applicationCorrelation </CorrelationID> <Build xmlns=”urn:ebay:apis:eBLBa seComponents”>
api_build_number
</Build> <element s_for_specific_ap i_response>
data
</elements_for_specific_api_response>
</specific_api_name_Response>
Architecture de l'API SOAP de PayPal
Implémentation SOAP
Guide de référence de l'API SOAP Mai 2007 21
Architecture de l'API SOAP de PayPal
Implémentation SOAP
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
T
ABLEAU 1.6 Annotation d'une rép onse SOAP génériqu e
Lignes Commentaire
22 et 31 Eléments de début et de fin de specific_api_name_Response. 23 Chaque réponse API contient un horodateur avec la date et l'heure au format
UTC/GMT.
24 L'élément <Ack> contient la chaîne Success lorsque la requête correspondante a été
traitée avec succès. (Pour obtenir la liste complète des chaînes renvoyées possibles, reportez-vous à la section
En cas d'erreurs, Ack est défini sur une valeur autre que Success, et le corps de la réponse contient un élément <Errors> contenant des informations pour vous aider à déterminer la cause de l'erreur. Reportez-vous à la section
page 22
26 L'élément <CorrelationID> contient des informations sur l'application PayPal qui a
traité la requête. Utilisez la valeur de cet élément si vous devez résoudre un problème concernant l'une
de vos requêtes.
.
« AbstractResponseType » page 30).
« Réponses aux erreurs »
27 à 30 Chaque API PayPal renvoie une structure di fférente en fonction de ses définitions de
réponse. Pour en savoir plus, consultez la description de chaque API.
REMARQUE : le fait qu'un champ soit défini dans la structure formelle d'une réponse

Réponses aux erreurs

Si une requête est incorrecte ou si une autre erreur est détectée, le corps de la réponse SOAP contient un élément <Errors> ainsi que d'autres éléments qui peuvent vous aider à déterminer la cause de l'erreur. Les plus importants de ces autres éléments sont les suivants :
z ShortMessage z LongMessage z ErrorCode
Pour une description du contenu de ces éléments, reportez-vous à l'Annexe A, «“Codes et
messages d'erreur de toutes les API PayPal”».
L'exemple ci-après présente la réponse d'erreur qui s'affiche si votre identifiant et mot de passe API ne correspondent pas à ceux enregistrés chez PayPal.
Exemple de réponse d'erreur SOAP : Identifiant ou mot de passe incorrect
API n'implique pas forcément que ce champ soit renvoyé. Les données sont renvoyées dans une réponse uniquement si PayPal a enregistré les données associées au champ.
<?xml version="1.0" encoding=" UTF-8"?> <SOAP-ENV:Envelope details not shown>
22 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de PayPal
<SOAP-ENV:Header>... details not shown.</SOAP-E NV:Header> <SOAP-ENV:Body id="_0">
<GetTransactionDetailsResponse xmlns="urn:ebay:a pi:PayPalAPI">
<Timestamp xmlns="urn:ebay:api s:eBLBaseComponents ">
2005-02-09T21:51:26Z </Timestamp> <Ack xmlns="urn:ebay:apis:eBLB aseComponents"> Failu re</Ack> <Errors
xmlns="urn:ebay:apis:eBLBaseCo mponents"
xsi:type="ebl:ErrorType">
<ShortMessage xsi:type="xs:str ing">
Authentication/Authorization F ailed
</ShortMessage>
<LongMessage xsi:type="xs:stri ng">
L'identifiant ou le mot de pas se est incorrect
</LongMessage>
<ErrorCode xsi:type="xs:token" >10002</ErrorCode>
<SeverityCode xmlns="urn:ebay: apis:eBLBaseCompone nts">
Error
</SeverityCode> </Errors> <Correlation ID xmlns="urn:ebay:ap is:eBLBaseComponents">
debugging_info
</CorrelationID> <Version xmlns="urn:ebay:apis:eBL BaseComponents">
1.000000 </Version> <Build xmlns="urn:ebay:apis:eBLBa seComponents">1.0006< /Build>
.. autres éléments de la réponse.
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Définitions de l'API SOAP de PayPal

CorrelationID pour signaler des problèmes à PayPal

La valeur renvoyée dans CorrelationID est importante car elle permet à PayPal de déterminer la cause précise d'une éventuelle erreur que vous pouvez rencontrer. Si vous devez résoudre un problème concernant vos requêtes, nous vous recommandons d'extraire la valeur de CorrelationID afin de la communiquer à PayPal.
Définitions de l'API SOAP de PayPal
L'API SOAP de PayPal comprend des définitions API individuelles pour des fonctions de gestion spécifiques. En tant que base, l'API repose sur la base et les principaux composants eBL (eBay Business Language). Les structures eBL principales AbstractRequestType et AbstractResponseType constituent la base de la requête et de la réponse SOAP de chaque API PayPal. AbstractResponseType est également le cadre des messages d'erreur communs à toutes les API PayPal.
Guide de référence de l'API SOAP Mai 2007 23
Architecture de l'API SOAP de PayPal
Définitions de l'API SOAP de PayPal
PayPal a pris certaines décisions concernant la conception des schémas qui peuvent influer sur la manière dont les entreprises conçoivent leurs propres applications.
z Enumérations : les énumérations sont définies directement dans le schéma de l'API PayPal. z Informations sur la résolution des problèmes : l'API PayPal renvoie des informations sur
les éléments qui ont déclenché des erreurs.
z Compatibilité en amont : la version de l'API PayPal a été mise à niveau de telle sorte que
les applications d'entreprise sont compatibles en amont lorsque de nouveaux éléments sont introduits dans le schéma côté serveur.
REMARQUE : eBL définit de nombreuses structures propre s au traitement des enchères. Ces
définitions sont contenues dans le schéma SOAP de PayPal afin de garantir une compatibilité en amont avec SOAP d'eBay et une utilisation conjointe future de SOAP sur eBay et PayPal. Les informations contenues dans ce document portent uniquement sur les définitions SOAP afférentes à l'utilisation de l'API SOAP de PayPal.

Codage de caractères, types et formats des données et devises

Cette section présente en détail le codage et les jeux de caractères, ainsi que les types et formats des données de date.
Codage de caractères UTF-8
Le service API SOAP de PayPal considère que toutes les données contenues dans les requêtes SOAP sont au format Unicode, précisément au format de codage 8 bits Unicode (ou UCS) Transformation Format (UTF-8).
Dans les réponses SOAP, le service renvoie toujours les données au format UTF-8.
Formats de date et d'heure
Le schéma API SOAP de PayPal définit les valeurs de date et d'heure comme étant Heure universelle coordonnée (UTC/GMT), utilisant le format ISO 8601, et de type ns:dateTime. Exemple d'horodatage : 2006-08-24T05:38:48Z
Ttype de données de base pour le montant des devises
Le type de données de base pour le montant des devises est appelé BasicAmountType et est dérivé d'une chaîne, et tous les éléments relatifs au montant des devises présentent la structure ci-après :
1. L'attribut currencyID est requis.
2. Le montant doit comporter deux positions décimales.
3. Le séparateur décimal doit être une virgule (« , »).
4. Vous ne devez pas utiliser de séparateur des milliers.
24 Mai 2007 Guide de référence de l'API SOAP
5. BasicAmountType a pour type de données ebl:CurrencyCodeType, qui définit un
grand nombre de codes de devises différents. Toutefois, pour que le traitement se déroule correctement, vous devez définir colonne du « Codage de caractères, types et formats des données et devises » page 24. Certaines API ne prennent en charge qu'un sous-ensemble de ces devises.
Voici un exemple. (Le nom de champ Amount est un exemple ; les noms de champs réels varient selon l'API spécifique).
<Amount currencyID=”currencyCode”>3.00</Am ount>

API par fonction de gestion

L'API SOAP de PayPal comprend des définitions API individuelles pour des utilisations de gestion spécifiques.
TABLEAU 1.8 API par fonction de gestion
Fonction de gestion Requête/Réponse SOAP
Architecture de l'API SOAP de PayPal
Définitions de l'API SOAP de PayPal
currencyCode sur l'une des valeurs de la première
API Autorisation et collecte
API Paiement direct
API Paiement express PayPal
API GetTransaction Details
API MassPay MassPayRequest
DoCaptureRequest DoCaptureResponse DoAuthorizationRequest DoAuthorizationResponse DoVoidRequest DoVoidResponse DoReauthorizationReques DoReauthorizationResponse
DoDirectPaymentRequest DoDirectPaymentResponse
SetExpressCheckoutRequest SetExpressCheckoutResponse GetExpressCheckoutDetailsReques t GetExpressCheckoutDetailsRespon se DoExpressCheckoutPaymentRequest DoExpressCheckoutPaymentRespons e
GetTransactionDetailsRequest GetTransactionDetailsResponse
MassPayResponse
API Refund Transaction
Guide de référence de l'API SOAP Mai 2007 25
RefundTransactionRequest RefundTransactionResponse
Architecture de l'API SOAP de PayPal
Définitions de l'API SOAP de PayPal
T
ABLEAU 1.8 API par fonction de gestion (suite)
Fonction de gestion Requête/Réponse SOAP
API Transaction Search
TransactionSearchRequest TransactionSearchResponse

API pour échanger des fonds ou afficher des informations

Toutes les API PayPal portent sur les transactions commerciales. Toutefois, elles peuvent être classées par catégorie comme suit :
z API donnant lieu à un échange de fonds : z Autorisation et collecte z Paiement express PayPal z MassPay z RefundTransaction z API fournissant des informations sur les transactions commerciales : z GetTransactionDetails z TransactionSearch

Notification instantanée de paiement et API

L'utilisation d'une API PayPal donnant lieu à un échange de fonds déclenche l'envoi d'une notification instantanée de paiement. L'émetteur de l'appel API reçoit la notification instantanée de paiement. Les API qui envoient des notifications instantanées de paiement sont les suivantes : A l'exception de Masspay, la réponse API contient toutes les informations nécessaires à la transaction.
z DoExpressCheckoutPayment z DoDirectPayment z DoCapture z RefundTransaction z MassPay
Pour en savoir plus sur la fonction de notification instantanée de paiement, reportez-vous au
Guide d'intégration de la gestion des commandes de PayPal
.
26 Mai 2007 Guide de référence de l'API SOAP
Architecture de l'API SOAP de PayPal
Définitions de l'API SOAP de PayPal
Guide de référence de l'API SOAP Mai 2007 27
Architecture de l'API SOAP de PayPal
Définitions de l'API SOAP de PayPal
28 Mai 2007 Guide de référence de l'API SOAP
Structures fondamentales des
2
requêtes et des réponses eBL
L'API SOAP de PayPal repose sur les structures fondamentales du schéma eBL qui définit les éléments requis dans toutes les requêtes et les réponses SOAP :
z AbstractRequestType z AbstractResponseType

Schéma des principaux types eBL

Le schéma suivant représente la composition des éléments AbstractRequestType et AbstractResponseType.
FIGURE 2.1 Principaux ty pes eBL
Guide de référence de l'API SOAP Mai 2007 29
Structures fondamentales des requêtes et des réponses eBL

AbstractRequestType

AbstractRequestType
AbstractRequestType est la définition type de base pour toutes les requêtes SOAP de PayPal.
IMPORTANT : vous devez définir la valeur de l'élément Version pour toutes les requêtes
sur l'une des API PayPal.

Champs

TABLEAU 2.1 Champs de AbstractRequestType
Elément Description
Version Une chaîne représentant la version du
schéma PayPal, plus précisément la valeur de l'attribut version de l'élément wsdl:definitions.
Pour connaître l'emplacement du schéma PayPal, reportez-vous à la section
« Définitions du schéma WSDL/XSD PayPal » page 14
.

AbstractResponseType

AbstractResponseType est la définition type de base pour toutes les réponses SOAP de PayPal.

Champs

Pour en savoir plus sur les codes et les messages d'erreur et leur signification, consultez l'
Annexe A, « Codes et messages d'erreur de toutes les API PayPal ».
Type de données
xs:string V oir le schéma
Valeurs autorisées Obligatoire ?
PayPal.
Oui
ABLEAU 2.2 Champs de Abstrac tRespon seType
T
Valeurs
Elément Description T ype de données
Timestamp Date et heure (UTC/GMT) de génération de la
réponse par le service SOAP de PayPal à la suite du traitement d'une requête.
30 Mai 2007 Guide de référence de l'API SOAP
xs:dateTime Transaction-
possibles
specific
Loading...
+ 189 hidden pages