Visualisation d'une page Webjax
Traiter des paiements par carte de crédit via Paypal
Cette page est propulsée par
Cette page présente une traduction française de la page de documentation Paypal API présentant la méthode autorisant la prise en compte de paiements par carte de crédit au profit d'un compte Paypal existant.
Ce type de procédure peut se révéler extrèmement utile, si l'on fait exception des commissions, pour éviter de passer par des systèmes d'intégrations des banques "classiques" (ndr : délais, pauvreté des documentations etc).
La version originale de ce document est accessible en cliquant ici.
00 :: Direct Payment (paiement par CB en direct)
Avec « Direct Payment », vous pouvez procéder à la prise en compte de transactions à partir de numéros de cartes bleues précisés par les utilisateurs et interragir en arrière plan avec « Direct Payment API ». Vos utilisateurs/clients ne quitteront jamais le site et n'auront pas forcément du fait que Paypal est impliqué dans la prise en compte de la transaction qu'ils effectuent.
« Direct Payment API » dispose d'un seul appel possible et cette page décrit le contexte d'utilisation de la méthode de l'API.
!!! :: si vous permettez à vos utilisateurs/clients d'utiliser « Direct Payment », Paypal vous oblige a également proposer « Express Checkout » comme autre moyen de paiement.
Le nom de la méthode utilisable de « Direct Payment API » est « DoDirectPayment ». Pour créer une requête d'appel à l'API utilisant cette méthode, vous devez connaître le format de requête et le format de réponse retourné.
01 :: Créer la requête d'appel à « DoDirectPayment »
Pour créer un appel « DoDirectPayment » vous devez créer un objet de type « DoDirectPaymentRequestType » qui possède un membre « DoDirectPaymentRequestDetails ».
L'objet « DoDirectPaymentRequestType » doit contenir :
-
l'adresse IP de votre utilisateur/client, adresse IP que vous pouvez obtenir via le HTTP_REQUEST effectué vers votre serveur
-
un objet de type « PaymentAction » qui permet de spécifier si la transaction concerne une « Vente/Sale », « Autorisation/Authorization » ou une « Commande/Order »
-
un objet de type « CreditCard » qui contient le numéro de la carte bancaire et la date d'expiration
-
un objet de type « PaymentDetails » qui contient le montant total de la transaction plus des informations supplémentaires sur les ventes concernées.
02 :: Effectuer l'appel à l'API « Direct Payment »
Si vous utilisez le SDK, passez l'objet « DoDirectPaymentRequestType » à la méthode « call » d'une instance de la classe « CallerServices » et spécifier « DoDirectPayment » comme nom pour l'API à interroger.
La valeur retournée suite à l'appel sera un objet de type « DoDirectPaymentResponseType » et contiendra les résultats de la transaction.
Si vous n'utilisez pas le SDK, utilisez votre interface personnalisée pour centraliser les données à envoyer vers l'url « SOAP end-point ».
03 :: Traiter la réponse renvoyée par « Direct Payment API »
Les informations que vous pouvez centraliser depuis l'objet de type « DoDirectPaymentResponseType » sont les suivantes :
-
« Ack code » qui peut contenir « Success » ou « Failure »
-
le montant de la transaction
-
le code réponse AVS (Adresse Verification Check ou Procédure de vérification de l'adresse)
-
le code réponse CVV (vérification des informations de la carte de crédit)
-
l'identifiant de transaction Paypal
-
les messages et codes d'erreurs si existants
-
identifiant unique d'appel à l'API « Correlation ID »
La première valeur à traiter est le « Ack Code » qui dans le cas d'une valeur contenant « Success » confirme le succès d'une transaction par carte de crédit. Il peut convenir d'afficher un message de confirmation à l'utilisateur.
Si la valeur de « Ack code » est « Failure » la transaction ne s'est pas déroulée correctement et n'a pu être finalisée. Dans ce cas, vous obtiendrez un ou plusieurs messages d'erreurs.
Lorsque une ou des erreurs sont retournées, Paypal fournit un code d'erreur, un message long d'erreur, un message court d'erreur. Lors de l'affichage d'un message d'erreur correspondant à une transaction non finalisée, Paypal vous conseille une des deux méthodes exposées ci après :
-
rediriger le code d'erreur Paypal vers un message d'erreur de votre système d'informations
-
afficher le message d'erreur « long » que Paypal fournit dans ce cas. Paypal vous déconseille d'afficher le message « court » d'erreur à vos utilisateurs/clients.
Dans le cas d'une transaction non finalisée, tentez de proposer à vos utilisateurs/clients un autre moyen de paiement.
Vous pouvez consulter l'ensemble de la liste des codes d'erreurs à partir de cette url https://www.paypal.com/IntegrationCenter/ic_api-reference.html
04 :: Recommandations pour vos pages « Checkout/Paiement de Commande »
Sur vos pages de « Checkout/Paiement de Commande », vous devez collecter les informations suivantes auprès de votre utilisateur/client. Ces informations sont utilisées pour effectuer l'appel à l'API « Direct Payment ».
La liste des informations est présentée au sein de la liste ci après :
-
Type de carte de crédit
-
Numéro de carte de crédit
-
Mois d'expiration de la carte de crédit
-
Année d'expiration de la carte de crédit
-
3 chiffres « CVV » de la carte de crédit
-
Identité du propriétaire de la carte de crédit Nom et Prénom
-
Adresse du propriétaire de la carte de crédit
Vous devez également récupérer l'adresse IP de votre utilisateur/client et la transmettre dans l'appel à l'API « Direct Payment ».
Autres recommandations
-
Fournir aux utilisateurs/clients des listes déroulantes pour les champs « Province » et/ou « State ». Pour les adresses sur le territoire américain, le champ « state » doit être un champ de deux lettres, deux lettres correspondantes à un état valide US, ou province militaire.
Pour le Canada, les deux lettres doivent correspondre à un état valide du Canada.
-
La valeur « CVV » soit des chiffres lisibles sur le dos des cartes de crédit est requise. Chaque carte « Visa », « Mastercard », « American Express » ou « Discover » possède aujourd'hui une valeur « CVV ». La valeur est de 3 chiffres pour « Visa », « Mastercard » et « Discover » et de 4 chiffres pour « American Express ». Présenter un texte pour expliquer à vos utilisateurs/clients comment trouver cette valeur « CVV ».
-
Un appel à « Direct Payment API » peut prendre plus de 30 secondes à s'effectuer. Vous devez donc configurer les paramètres dits de « timeout » de façon à prendre en compte cette contrainte. Penser par exemple à afficher une icône/image « transaction en cours » lors du traitement de l'appel à « Direct Payment API ». Vous pouvez aussi désactiver le bouton « Payer » lors du traitement de l'appel, pour éviter notamment l'enregistrement de multiples transactions à la suite (ndr : lors d'un bug ou assimilé).
-
Vous pouvez aussi utiliser le champ « Invoice ID » pour prévenir les transactions frauduleuses ou les erreurs comme présenté en fin de point 3. Paypal s'assure que le champ « Invoice ID » n'est utilisé qu'une seule fois par compte Paypal. Des requêtes multiples avec le même « Invoice ID » retourneraient des erreurs et constitueraient des transactions non finalisées, non validées.
05 :: Valeurs retournées pour les codes d'erreurs AVS et CVV
En réponse à un appel à « DoDirectPayment API », Paypal retourne un code d'erreur d'une lettre pour transcrire le retour de l'API au sujet de la vérification de l'AVS et du CVV.
Les tableaux ci après transcrivent la signification des lettres renvoyées par l'API.
Codes d'erreurs retournés pour AVS sur les cartes de crédit (USA)
A
seule l'adresse est vérifiée (pas de code postal ZIP précisé)
W
seule le code postal à 9 chiffres est vérifié (pas d'adresse précisée)
X
l'adresse et le code postal (9 chiffres) sont vérifiés
Y
l'adresse et le code postal (5 chiffres) sont vérifiés
Z
seul le code postal à 5 chiffres est vérifié
N
pas de correspondance
R
Réessayer
S
Service non supporté
U
Indisponible
Codes d'erreurs retournés pour AVS sur les cartes de crédit (hors-USA)
B
seule l'adresse est vérifiée (pas de code postal ZIP précisé)
D
l'adresse et le code postal sont vérifiés
F
l'adresse et le code postal sont vérifiés (UK uniquement)
P
seul le code postal est vérifié
C
pas de correspondance
I
Cartes Internationales Indisponibles
G
Totalement Indisponible
Codes d'erreurs retournés pour CVV sur les cartes de crédit (USA)
M
le code CVV n'est pas valide
N
pas de correspondance
U
indisponible
S
service non supporté
P
non traité
X
pas de réponse
Codes d'erreurs retournés pour CVV sur les cartes de crédit (hors-USA)
M
le code CVV n'est pas valide
N
pas de correspondance
U
indisponible
S
service non supporté
P
non traité
X
pas de réponse
Cette page présente une traduction française de la page de documentation Paypal API présentant la méthode autorisant la prise en compte de paiements par carte de crédit au profit d'un compte Paypal existant.
Ce type de procédure peut se révéler extrèmement utile, si l'on fait exception des commissions, pour éviter de passer par des systèmes d'intégrations des banques "classiques" (ndr : délais, pauvreté des documentations etc).
La version originale de ce document est accessible en cliquant ici.
00 :: Direct Payment (paiement par CB en direct)
Avec « Direct Payment », vous pouvez procéder à la prise en compte de transactions à partir de numéros de cartes bleues précisés par les utilisateurs et interragir en arrière plan avec « Direct Payment API ». Vos utilisateurs/clients ne quitteront jamais le site et n'auront pas forcément du fait que Paypal est impliqué dans la prise en compte de la transaction qu'ils effectuent.
« Direct Payment API » dispose d'un seul appel possible et cette page décrit le contexte d'utilisation de la méthode de l'API.
!!! :: si vous permettez à vos utilisateurs/clients d'utiliser « Direct Payment », Paypal vous oblige a également proposer « Express Checkout » comme autre moyen de paiement.
Le nom de la méthode utilisable de « Direct Payment API » est « DoDirectPayment ». Pour créer une requête d'appel à l'API utilisant cette méthode, vous devez connaître le format de requête et le format de réponse retourné.
01 :: Créer la requête d'appel à « DoDirectPayment »
Pour créer un appel « DoDirectPayment » vous devez créer un objet de type « DoDirectPaymentRequestType » qui possède un membre « DoDirectPaymentRequestDetails ».
L'objet « DoDirectPaymentRequestType » doit contenir :
-
l'adresse IP de votre utilisateur/client, adresse IP que vous pouvez obtenir via le HTTP_REQUEST effectué vers votre serveur
-
un objet de type « PaymentAction » qui permet de spécifier si la transaction concerne une « Vente/Sale », « Autorisation/Authorization » ou une « Commande/Order »
-
un objet de type « CreditCard » qui contient le numéro de la carte bancaire et la date d'expiration
-
un objet de type « PaymentDetails » qui contient le montant total de la transaction plus des informations supplémentaires sur les ventes concernées.
02 :: Effectuer l'appel à l'API « Direct Payment »
Si vous utilisez le SDK, passez l'objet « DoDirectPaymentRequestType » à la méthode « call » d'une instance de la classe « CallerServices » et spécifier « DoDirectPayment » comme nom pour l'API à interroger.
La valeur retournée suite à l'appel sera un objet de type « DoDirectPaymentResponseType » et contiendra les résultats de la transaction.
Si vous n'utilisez pas le SDK, utilisez votre interface personnalisée pour centraliser les données à envoyer vers l'url « SOAP end-point ».
03 :: Traiter la réponse renvoyée par « Direct Payment API »
Les informations que vous pouvez centraliser depuis l'objet de type « DoDirectPaymentResponseType » sont les suivantes :
-
« Ack code » qui peut contenir « Success » ou « Failure »
-
le montant de la transaction
-
le code réponse AVS (Adresse Verification Check ou Procédure de vérification de l'adresse)
-
le code réponse CVV (vérification des informations de la carte de crédit)
-
l'identifiant de transaction Paypal
-
les messages et codes d'erreurs si existants
-
identifiant unique d'appel à l'API « Correlation ID »
La première valeur à traiter est le « Ack Code » qui dans le cas d'une valeur contenant « Success » confirme le succès d'une transaction par carte de crédit. Il peut convenir d'afficher un message de confirmation à l'utilisateur.
Si la valeur de « Ack code » est « Failure » la transaction ne s'est pas déroulée correctement et n'a pu être finalisée. Dans ce cas, vous obtiendrez un ou plusieurs messages d'erreurs.
Lorsque une ou des erreurs sont retournées, Paypal fournit un code d'erreur, un message long d'erreur, un message court d'erreur. Lors de l'affichage d'un message d'erreur correspondant à une transaction non finalisée, Paypal vous conseille une des deux méthodes exposées ci après :
-
rediriger le code d'erreur Paypal vers un message d'erreur de votre système d'informations
-
afficher le message d'erreur « long » que Paypal fournit dans ce cas. Paypal vous déconseille d'afficher le message « court » d'erreur à vos utilisateurs/clients.
Dans le cas d'une transaction non finalisée, tentez de proposer à vos utilisateurs/clients un autre moyen de paiement.
Vous pouvez consulter l'ensemble de la liste des codes d'erreurs à partir de cette url https://www.paypal.com/IntegrationCenter/ic_api-reference.html
04 :: Recommandations pour vos pages « Checkout/Paiement de Commande »
Sur vos pages de « Checkout/Paiement de Commande », vous devez collecter les informations suivantes auprès de votre utilisateur/client. Ces informations sont utilisées pour effectuer l'appel à l'API « Direct Payment ».
La liste des informations est présentée au sein de la liste ci après :
-
Type de carte de crédit
-
Numéro de carte de crédit
-
Mois d'expiration de la carte de crédit
-
Année d'expiration de la carte de crédit
-
3 chiffres « CVV » de la carte de crédit
-
Identité du propriétaire de la carte de crédit Nom et Prénom
-
Adresse du propriétaire de la carte de crédit
Vous devez également récupérer l'adresse IP de votre utilisateur/client et la transmettre dans l'appel à l'API « Direct Payment ».
Autres recommandations
-
Fournir aux utilisateurs/clients des listes déroulantes pour les champs « Province » et/ou « State ». Pour les adresses sur le territoire américain, le champ « state » doit être un champ de deux lettres, deux lettres correspondantes à un état valide US, ou province militaire.
Pour le Canada, les deux lettres doivent correspondre à un état valide du Canada.
-
La valeur « CVV » soit des chiffres lisibles sur le dos des cartes de crédit est requise. Chaque carte « Visa », « Mastercard », « American Express » ou « Discover » possède aujourd'hui une valeur « CVV ». La valeur est de 3 chiffres pour « Visa », « Mastercard » et « Discover » et de 4 chiffres pour « American Express ». Présenter un texte pour expliquer à vos utilisateurs/clients comment trouver cette valeur « CVV ».
-
Un appel à « Direct Payment API » peut prendre plus de 30 secondes à s'effectuer. Vous devez donc configurer les paramètres dits de « timeout » de façon à prendre en compte cette contrainte. Penser par exemple à afficher une icône/image « transaction en cours » lors du traitement de l'appel à « Direct Payment API ». Vous pouvez aussi désactiver le bouton « Payer » lors du traitement de l'appel, pour éviter notamment l'enregistrement de multiples transactions à la suite (ndr : lors d'un bug ou assimilé).
-
Vous pouvez aussi utiliser le champ « Invoice ID » pour prévenir les transactions frauduleuses ou les erreurs comme présenté en fin de point 3. Paypal s'assure que le champ « Invoice ID » n'est utilisé qu'une seule fois par compte Paypal. Des requêtes multiples avec le même « Invoice ID » retourneraient des erreurs et constitueraient des transactions non finalisées, non validées.
05 :: Valeurs retournées pour les codes d'erreurs AVS et CVV
En réponse à un appel à « DoDirectPayment API », Paypal retourne un code d'erreur d'une lettre pour transcrire le retour de l'API au sujet de la vérification de l'AVS et du CVV.
Les tableaux ci après transcrivent la signification des lettres renvoyées par l'API.
|
Codes d'erreurs retournés pour AVS sur les cartes de crédit (USA) |
|
|---|---|
|
A |
seule l'adresse est vérifiée (pas de code postal ZIP précisé) |
|
W |
seule le code postal à 9 chiffres est vérifié (pas d'adresse précisée) |
|
X |
l'adresse et le code postal (9 chiffres) sont vérifiés |
|
Y |
l'adresse et le code postal (5 chiffres) sont vérifiés |
|
Z |
seul le code postal à 5 chiffres est vérifié |
|
N |
pas de correspondance |
|
R |
Réessayer |
|
S |
Service non supporté |
|
U |
Indisponible |
|
Codes d'erreurs retournés pour AVS sur les cartes de crédit (hors-USA) |
|
|---|---|
|
B |
seule l'adresse est vérifiée (pas de code postal ZIP précisé) |
|
D |
l'adresse et le code postal sont vérifiés |
|
F |
l'adresse et le code postal sont vérifiés (UK uniquement) |
|
P |
seul le code postal est vérifié |
|
C |
pas de correspondance |
|
I |
Cartes Internationales Indisponibles |
|
G |
Totalement Indisponible |
|
Codes d'erreurs retournés pour CVV sur les cartes de crédit (USA) |
|
|---|---|
|
M |
le code CVV n'est pas valide |
|
N |
pas de correspondance |
|
U |
indisponible |
|
S |
service non supporté |
|
P |
non traité |
|
X |
pas de réponse |
|
Codes d'erreurs retournés pour CVV sur les cartes de crédit (hors-USA) |
|
|---|---|
|
M |
le code CVV n'est pas valide |
|
N |
pas de correspondance |
|
U |
indisponible |
|
S |
service non supporté |
|
P |
non traité |
|
X |
pas de réponse |

:

