THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Hello,

J'ai configuré 4 modules de paiements (dont Paypal et Stripe) sur mon Thelia 2.3.3. Dans le template par défaut, une fois qu'on a rempli son panier et qu'on arrive sur la page de sélection d'un moyen de paiement (ROOT/order/invoice), un des moyens de paiement (Stripe) n'apparaît pas dans la liste.
Le module est activé, passé en mode Live et les variables correctement définies.

J'ai vidé les caches dev / prod via l'admin et manuellement, ça ne change rien.
J'ai essayé de modifier la boucle pour ne cibler que l'ID du module StripePayment, la boucle a l'air de ne pas connaître le module. Même pas un <li> vide.

{loop type="payment" name="payments" force_return="true" id="41"}
	{assign "paymentModuleId" $ID}
	<li class="list-group-item text-left">
		<label for="payment_{$paymentModuleId}">
			<input type="radio" name="{$name}" id="payment_{$paymentModuleId}" value="{$paymentModuleId}" {if $LOOP_TOTAL ==1 && $LOOP_COUNT == 1}checked{/if}>
			{loop type="image" name="paymentspicture" source="module" source_id=$ID force_return="true" width="100" height="72"}
				<img src="{$IMAGE_URL nofilter}" alt="{intl l="Pay with %module_title" module_title={$TITLE}}">
			{/loop}
			{$TITLE}
		</label>
		{hook name="order-invoice.payment-extra" module={$paymentModuleId}}
	</li>
{/loop}

En DEV (index_dev.php/order/invoice), tous les moyens de paiements sont bien listés et dans l'ordre défini dans l'admin. Et ils fonctionnent (transactions tests....).

Ça ressemble à un problème de cache, où alors y'a quelque chose à regénérer, mais je n'ai plus d'idée où chercher.

Merci

Offline


Il te faut vider le cache de prod. Pour ce faire, connecte toi à l'admin en prod (donc pas avec index_dev.php), et vide le cache depuis Configuration -> Configuration Avancée.

Tu peux aussi utiliser la commande Thelia cache:clear --env=prod

Tu peux aussi supprimer le répertoire cache/prod


OpenStudio Toulouse

Offline


J'avais déjà essayé, depuis la console d'admin et en supprimant le dossier cache/prod à la main, ça n'avait pas résolu le problème. La commande Thelia que je viens de lancer aussi n'a pas aidé.

Petit détail, mon layout.tpl est toujours en mode assets generation (il pointe sur les sources LESS).

Offline


Autre possibilité: le module ne s'affiche pas parce qu'il n'est pas configuré correctement, et la méthode isValidPayment() retourne false.

return ( ($this->isDevEnvironment() || $this->isSslEnabled()) && $this->getConfigValue('enabled') );

(cf. https://github.com/thelia-modules/Strip … t.php#L170)

A la lecture du code, on dirait bien que pour que le module s'affiche en prod, il faut qui ta boutique soit en https


OpenStudio Toulouse

Offline


Bingo, une fois le site en https, le moyen de paiement Stripe s'affiche correctement.
Un grand merci à toi pour ton aide et ta réactivité.