web-dev-qa-db-fra.com

Message d'erreur d'Express Checkout: "L'en-tête de sécurité n'est pas valide"

J'implémente Paiement express dans Paypal.

Je n'ai aucun problème avec les deux premières étapes, SetExpressCheckout et GetExpressCheckout. Mais lorsque j'utilise DoExpressCheckout, je rencontre l'erreur "L'en-tête de sécurité n'est pas valide".

Les informations d'identification de l'API sont les mêmes!

Je l'ai corrigé en changeant le $environment à live dans DoExpressCheckout. (La différence $environment fait est qu'il utilisera https://api.sandbox.Paypal.com/nvp/ au lieu de https://api-3t.$environment.Paypal.com/nvp)

Mais pourquoi?

Y a-t-il un problème avec https://api-3t.$environment.Paypal.com/nvp?

25
Paypal

https://api-3t.sandbox.Paypal.com/nvp nécessite des comptes d'utilisateurs différents de ce que https://api-3t.Paypal.com/nvp nécessite .

Les comptes sandbox peuvent être activés sur developer.Paypal.com

35
Cheery

J'ai eu la même erreur lors de l'environnement live. Pour moi, il s'est avéré qu'il y avait un espace à la fin de mon nom d'utilisateur API .... J'ai supprimé l'espace et cela a bien fonctionné .... Je les ai collés dans un fichier de configuration directement depuis Paypal et j'ai dû copié un espace là aussi ... donc si cela vous arrive, vérifiez les espaces de fuite! Cela aurait été évident si le nom d'utilisateur avait été codé en dur dans une chaîne, mais pas parce qu'il était dans un fichier de propriétés Java.

notez que vous obtiendrez également cette erreur si vos informations d'identification sont incorrectes (c.-à-d. mauvais nom d'utilisateur, mot de passe ou signature). J'ai juste eu le même problème lorsque j'ai collé mes informations dans un fichier de configuration et j'ai eu des caractères supplémentaires à la fin de ma signature par erreur.

10
Brad Parks

Il ne peut pas autoriser le paiement. Reportez-vous à cet article , apparemment en panne pour l'instant mais toujours disponible ici .

2
Sandeep