Assistance E-connecteur

Woocommerce : invalid timestamp / nonce invalide

Dans certains contextes d'utilisation, vous pouvez avoir un message dans E-connecteur, fourni par Woocommerce qui indique que le timestamp est invalide (Invalid timestamp) et/ou que le nonce a déjà été utilisé (Invalid nonce - nonce has already been used).


Woocommerce utilisant une authentification OAuth basée sur la date et l'heure + un jeton unique, il se peut que si le poste où est installé E-connecteur fourni une heure trop différente du serveur web induisant un rejet de l'authentification par Woocommerce.

La meilleure solution reste de synchroniser les heures entre le poste de travail et le serveur web, mais cela n'est pas toujours possible à faire.

Il faut donc dans ce cas modifier le système d'authentification de Woocommerce dans le fichier wp-content/plugins/woocommerce/includes/api/v2/class-wc-api-authentication.php, méthode check_oauth_timestamp_and_nonce.


Votre agence web pourra vous proposer une méthode de sécurisation des échanges adaptées à votre utilisation, votre serveur, vos conditions d'exploitation.


Une manière de modifier le code, est de commenter la ligne 157 :

$this->check_oauth_timestamp_and_nonce( $keys, $params['oauth_timestamp'], $params['oauth_nonce'] );


en mettant

//$this->check_oauth_timestamp_and_nonce( $keys, $params['oauth_timestamp'], $params['oauth_nonce'] );


En l'état, la sécurisation des échanges reste assurées par la signature des échanges. Si vous souhaitez conserver continuer à vérifier l'heure et le jeton, vous pouvez n’appeler cette méthode que si la requête émane d'une IP peu sûre par exemple.

Cette réponse a-t-elle été utile ? Oui Non

Envoyer vos commentaires
Nous sommes désolés de ne pas avoir pu répondre à votre question. Aidez-nous à améliorer cet article grâce à vos commentaires.