PayPal Express - L'en-tête de sécurité 10002 n'est pas une erreur valide


12

Je reçois une erreur lors du test de PayPal Express, l'erreur est la suivante 10002 security header is not valid:.

Le site fonctionne sur un AWS EC2 avec nginx et Varnish devant. J'utilise de la térébenthine pour la config et la perforation. Cette architecture aurait-elle quelque chose à voir avec cela?

Je ne teste pas le mode Sandbox, mais les informations d'identification de l'API en direct sont toutes correctes, je l'ai réinitialisé plusieurs fois. J'ai parcouru les journaux mais je ne trouve rien de significatif.

2014-01-31T05:47:11+00:00 ERR (3): 
exception 'Mage_Core_Exception' with message 'PayPal NVP gateway errors: Security header is not valid (#10002: Security error). Correlation ID: 60e76cc8d89c5. Version: 72.0.' in /var/www/app/Mage.php:580

Peut-être que les éléments suivants pourraient être pertinents? Le jeton est vide:

==> payment_paypal_express.log <==
2014-01-31T05:22:42+00:00 DEBUG (7): Array
(
    [url] => https://api-3t.paypal.com/nvp
    [GetExpressCheckoutDetails] => Array
        (
            [TOKEN] => 
            [METHOD] => GetExpressCheckoutDetails
            [VERSION] => 72.0
            [USER] => ****
            [PWD] => ****
            [SIGNATURE] => ****
            [BUTTONSOURCE] => Varien_Cart_EC_AU
        )

    [response] => Array
        (
            [TIMESTAMP] => 2014-01-31T05:22:42Z
            [CORRELATIONID] => 5bcdb0da70494
            [ACK] => Failure
            [VERSION] => 72.0
            [BUILD] => 9285531
            [L_ERRORCODE0] => 10002
            [L_SHORTMESSAGE0] => Security error
            [L_LONGMESSAGE0] => Security header is not valid
            [L_SEVERITYCODE0] => Error
        )

    [__pid] => 1219
)

Réponses:


9

C'est ce qui a fonctionné pour moi, étrange mais ça a fait l'affaire Magento 1.8.1 Paypal Website

Tout d'abord, je suis allé sur le compte Paypal.com et j'ai activé tous les accès API

  1. Accéder au profil> Demander les informations d'identification de l'API> Configurer les informations d'identification et les autorisations de l'API PayPal> Ajouter ou modifier les autorisations de l'API

  2. Ajouter un nouveau tiers ou modifier un tiers existant le nom d'utilisateur utilisé pour Magento

  3. J'ai accordé toutes les autorisations, probablement pas nécessaires, mais j'ai pensé que cela ne pouvait pas faire de mal

Puis dans Magento Admin:

  1. Allez dans Système> Configuration> PayPal> API / Paramètres d'intégration

  2. Supprimez toutes les valeurs du nom d'utilisateur API, du mot de passe API et de la signature API de.

  3. Accédez à Système> Gestion du cache et effacez tous les caches.

  4. Remettez les informations d'identification de l'API dans


Il vous suffit de configurer votre API par Sandbox Credentials et "account sandbox" et non pas de véritables informations d'identification paypal, également dans mon cas, OpePagecheckout a des options supplémentaires pour "activer Sandbox" ON
user956584

3
 PayPal gateway has rejected request. Invalid token (#10410: Invalid token)

Activer le paiement express (la navigation PayPal est devenue)

  Profile & Settings >> My selling tools >> API access >> Update
  Enable Express Checkout 
  Accept >> Submit.

Vérifier les paramètres de Magento Paypal

 System >> Configuration >> Sales >> Payment Methods

Choisissez votre option PayPal

Configue >> Set API Credential    

Activer paypal

 Enable this solution: Yes

Désactivez SSL si vous n'avez pas SSL

 Enable SSL verification : No

Avec le mode de développement

 Sandbox Mode : Yes

Vider le cache Magento, devrait fonctionner.


1
Je vous remercie. La désactivation de la vérification SSL est ce qui a fait pour moi.
kevando

2

0

Nouveau développement: PayPal a interrompu la prise en charge de SSL à partir de janvier 2015, ou plus précisément, nécessite la mise en œuvre de TLS. D'après ce que dit mon hébergeur, il s'agit d'une demande d'assistance pour la configuration d'Apache et vous pourrez peut-être le faire vous-même si vous avez un accès root et que vous êtes compétent. Ajoutez TLS à la configuration du serveur et cela pourrait résoudre votre problème, je reviendrai et confirmerai si cela l'a corrigé pour moi.


0

J'ai le même problème et j'ai trouvé que mon problème était

  • Je tape le caractère de signature API par charte, le caractère "I" est similaire à "l"
  • Comme il y a plusieurs "je" dans la signature, je dois les tester un par un via le lien des informations d'identification de l'API paypal.
  • Alors bon sang, ça marche.

Par conséquent, la copie est un meilleur moyen tout en faisant attention aux espaces à l'avant ou à la fin.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.