Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 23-12-2019 à 14:52
- GG le sympa
- Administrateur
- Lieu : Graçay
- Inscription : 03-08-2006 à 14:41
- Messages : 17 599
Bug currency avec le module Stripe sur Prestashop 1.6
Bug currency avec le module Stripe sur Prestashop 1.6
Attention si vous avez le module stripe sur votre Prestashop 1.6 vous pouvez avoir un problème de devise avec décalage de la virgule de 2 zero
Avec le yen par exemple au lieu de 1 000 yen cela va facturer 100 000 yen.
Le problème se trouve dans le fichier stripe_official.php ligne 788
public function isZeroDecimalCurrency($currency)
{
// @see: [url]https://support.stripe.com/questions/which-zero-decimal-currencies-does-stripe-support[/url]
$zeroDecimalCurrencies = array(
'BIF',
'CLP',
'DJF',
'GNF',
'KMF',
'JPY',
'KRW',
'MGA',
'PYG',
'RWF',
'UGX',
'VND',
'VUV',
'XAF',
'XOF',
'XPF'
);
return in_array($currency, $zeroDecimalCurrencies);
}
Comme vous pouvez le voir tous les codes ISO sont en majuscule et c'est bien là le problème, en fait la variable de comparaison sors c'est code en minuscule donc c'est comme si ses codes ne correspondait jamais alors la correction de la virgule ne te fais jamais du côté serveur mets toujours du côté client. Autant vous dire que si votre client au lieu de payer 26 € en taille de 2600, il va ne pas être content.
J'ai appelé le service client de stripe pour tenter de leur expliquer le problème mais la fille m'a dit que ce n'est pas eux qui se charge de la gestion du module alors je lance cette bouteille à la mer en espérant que ça pourra aider d'autres informaticiens.
Par exemple au lieu de 'JPY' mettez 'jpy'.
Franchement laisser un bug comme ça dans le module officiel c'est un peu la honte.
Hors ligne