Dépannage

Le guide de dépannage pour le Web couvre les problèmes et les questions liés aux sujets suivants.

Inscription et accès

Vous pouvez rencontrer les erreurs suivantes à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

Ce marchand n'est pas activé pour Google Pay
L'API Google Pay nécessite un merchantId Google pour les sites qui configurent PaymentsClient pour un environnement PRODUCTION. Un merchantId Google est associé à un ou plusieurs noms de domaine complets via la Google Pay & Wallet Console. Pour en savoir plus, consultez les détails de l'erreur renvoyée.
Ce marchand ne s'est pas encore inscrit pour utiliser l'API Google Pay. Veuillez accéder à la console (https://pay.google.com/business/console) pour effectuer la validation.
Vous n'avez pas terminé la procédure d'enregistrement de vos sites Web pour l'API Google Pay. Examen Demander l'accès à la production pour vous inscrire à l'aide de la Google Pay & Wallet Console et demander un examen de l'utilisation de l'API Google Pay par votre site Web.
Ce profil de marchand n'a pas accès à cette fonctionnalité
Google n'a pas configuré votre site Web pour qu'il utilise l'API Google Pay. Examen Demandez l'accès à la production pour demander un examen de l'utilisation de l'API Google Pay par votre site Web via la Google Pay & Wallet Console.
Cette intégration de l'API Google Pay est désactivée. Pour en savoir plus, veuillez nous contacter (https://developers.google.com/pay/api/faq#how-to-get-support).
Contactez-nous pour en savoir plus sur les étapes à suivre pour réactiver l'API Google Pay pour votre compte Google.
Votre domaine example.com n'est pas enregistré pour utiliser cette API.
Le domaine sur lequel votre page de paiement est hébergée n'est pas associé au merchantId que vous utilisez. Assurez-vous que le paramètre merchantId est correct et que votre domaine est enregistré dans la Google Pay & Wallet Console.
L'API Google Pay doit être appelée dans un contexte sécurisé.
 L'API Google Pay ne peut être utilisée que sur des sites Web dans un contexte sécurisé. Pour en savoir plus, consultez Contextes sécurisés.
Aucune clé trouvée pour ce profil de marchand
Vous devez enregistrer votre clé de chiffrement publique auprès de Google via la Google Pay & Wallet Console pour finaliser l'intégration DIRECTtokenizationSpecification type.

merchantId

Vous pouvez rencontrer les erreurs suivantes liées à merchantId à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

merchantId doit être défini.
Le paramètre merchantId à l'intérieur de PaymentDataRequest doit être défini sur la valeur fournie à l'aide de la Google Pay & Wallet Console. Un paramètre merchantId n'est requis que lorsque vous utilisez un PaymentsClient configuré pour un environnement PRODUCTION. Consultez notre checklist d'intégration pour demander un examen de l'utilisation de l'API Google Pay par votre site Web et obtenir votre merchantId.
merchantId n'est pas une chaîne
Le paramètre merchantId dans PaymentDataRequest doit toujours être une chaîne. Assurez-vous que le type du paramètre merchantId que vous utilisez est une chaîne avant d'appeler l'API.
merchantId n'est pas enregistré.
Le paramètre merchantId dans PaymentDataRequest doit être provisionné via la Google Pay & Wallet Console. Pour en savoir plus, consultez Demander un accès à la production.

Validité de la passerelle

Vous pouvez rencontrer les erreurs suivantes liées à la validité de la passerelle à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

Passerelle inconnue yourgateway
Le paramètre de passerelle que vous avez spécifié dans paymentMethodTokenizationParameters.parameters n'est actuellement pas accepté par Google. Contactez votre passerelle pour en savoir plus sur son identifiant et les champs associés, tels que gatewayMerchantId.
La passerelle "example" ne peut pas être utilisée en mode production
La valeur de paramètre de passerelle de l'exemple n'est utilisée qu'à des fins de test et ne peut pas être utilisée avec un PaymentsClient configuré pour un environnement PRODUCTION. Contactez votre passerelle pour en savoir plus sur les valeurs des paramètres PaymentMethodTokenizationSpecification que vous devez définir pour l'utiliser avec l'API Google Pay.

Validité des objets

Vous pouvez rencontrer les erreurs suivantes liées à la validité des objets à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

PaymentDataRequest de Google Pay n'est pas un fichier JSON valide
Le paramètre fourni à loadPaymentData doit toujours être un objet PaymentDataRequest valide.
transactionInfo doit être défini.
Le paramètre transactionInfo dans PaymentDataRequest doit toujours être un objet TransactionInfo valide.

Marchands directs

Vous pouvez rencontrer les erreurs suivantes liées aux marchands directs à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

Validation de la signature
Vous pouvez rencontrer une erreur de validation de la signature si le merchantId est incorrect. Cela peut se produire dans l'environnement TEST lorsque vous utilisez la bibliothèque Tink paymentmethodtoken. Pour éviter ce problème, définissez YOUR_MERCHANT_ID sur 12345678901234567890 dans :
.recipientId("merchant:YOUR_MERCHANT_ID")
Impossible de déchiffrer le jeton
Si vous utilisez la bibliothèque Tink paymentmethodtoken pour déchiffrer un jeton, tenez compte des points suivants :
  • Assurez-vous que l'environnement de réponse de l'API Google Pay correspond à l'environnement Tink paymentmethodtoken. Pour en savoir plus, consultez l'exemple suivant :
    • Si la réponse de l'API Google Pay a été renvoyée par l'environnement TEST, Tink pointe vers l'environnement de test pour le déchiffrement.
  • Ne modifiez pas la réponse de l'API Google Pay avant de la transmettre à Tink. Assurez-vous de transmettre l'intégralité du jeton renvoyé par la réponse de l'API Google Pay. Pour en savoir plus, consultez la note suivante :
  • Vérifiez que vous disposez de la clé privée appropriée associée à la clé publique que vous avez enregistrée auprès de Google.
Générer une paire de clés publique et privée sous Windows
 Si vous utilisez Windows et que vous souhaitez suivre les étapes mentionnées dans Utiliser OpenSSL pour générer une paire de clés privée et publique, assurez-vous d'installer Cygwin sur votre ordinateur. Cette étape est nécessaire pour exécuter les commandes Linux.

Objets d'erreur

Les objets d'erreur sont des objets renvoyés par une promesse refusée à partir d'une méthode JavaScript du client.

PaymentsError
Cet objet contient des informations sur les erreurs renvoyées par les méthodes JavaScript du client. Les erreurs ne s'affichent pas forcément dans une boîte de dialogue destinée à l'utilisateur.
Propriété Type Description
statusCode Chaîne Code court décrivant le type d'erreur.
statusMessage Chaîne Message destiné aux développeurs qui décrit l'erreur rencontrée et les étapes possibles pour la corriger.
Erreurs courantes
Cet objet affiche les erreurs que vous pouvez rencontrer dans toutes les méthodes JavaScript. Veillez à consulter la console développeur pour obtenir d'autres messages d'erreur.
Code d'état Description
BUYER_ACCOUNT_ERROR L'utilisateur Google actuel ne peut pas fournir d'informations de paiement.
DEVELOPER_ERROR

Le format d'un paramètre transmis n'est pas valide. Un message d'erreur peut s'afficher dans la console du navigateur pour tous les environnements configurés.

MERCHANT_ACCOUNT_ERROR

Le site qui accède à l'API Google Pay ne dispose pas des autorisations appropriées. Cela peut être dû à une configuration incorrecte ou à un identifiant de marchand incorrect défini dans la requête. Pour en savoir plus, consultez le champ statusMessage. Si le problème persiste, contactez l'assistance.

INTERNAL_ERROR Erreur générale du serveur.

CardInfo

Qu'est-ce que la fonctionnalité CardInfo ?
Google Pay indique aux consommateurs qu'une carte est associée au bouton de paiement Google Pay, qui affiche à la fois le réseau de la marque de la carte et les quatre derniers chiffres de la carte.
Pourquoi la fonctionnalité CardInfo ne s'affiche-t-elle pas dans mon implémentation ?

Pour que la fonctionnalité CardInfo fonctionne, les conditions suivantes doivent être remplies :

Pourquoi le bouton de paiement Google Pay se charge-t-il indéfiniment ?
Ne supprimez pas les écouteurs d'événements onLoad. Si vous supprimez les écouteurs d'événements onLoad, le bouton de paiement Google Pay peut se charger indéfiniment.
Pourquoi aucune invite de paiement ne s'affiche-t-elle après que j'ai cliqué sur le bouton de paiement Google Pay ?
Attribuez un rappel d'écouteur d'événements à l'événement ButtonOptions.onClick.

OR_BIBED_15 erreurs

Vous pouvez rencontrer une erreur OR_BIBED_15 à un moment donné de votre intégration. Cette liste fournit des conseils de dépannage utiles en cas d'erreur.

Utiliser des composants WebView
 Suivez les guides pour Android et iOS afin de vous assurer que votre intégration est compatible avec les WebViews.
En-tête de réponse HTTP Cross-Origin-Opener-Policy
Si l'en-tête de réponse HTTP Cross-Origin-Opener-Policy est défini sur same-origin, il peut empêcher le navigateur d'ouvrir le pop-up nécessaire pour que les utilisateurs puissent finaliser leur transaction. Essayez de remplacer la valeur de l'en-tête par same-origin-allow-popups pour réduire ces problèmes.
Délai entre l'événement de clic de l'utilisateur et l'appel à loadPaymentData()
Si un délai s'écoule entre le moment où l'utilisateur clique sur le bouton Google Pay (ou un bouton de paiement similaire) et l'appel loadPaymentData() (par exemple, setTimeout(), des appels réseau supplémentaires ou une logique de longue durée similaire), le mécanisme de blocage des pop-ups du navigateur peut se déclencher. Nous vous recommandons de ne pas définir de délai entre le clic de l'utilisateur et l'appel loadPaymentData().