PS PrestaShop Débutant

Paiement par acompte : acompte à la commande et solde à la livraison

Installation, règles et taux d'acompte, Stripe et virement, demande de solde, factures d'acompte, gestion en back-office et dépannage.

Mis à jour Version du module 1.2.1

Installation

Installez le module depuis Modules > Gestionnaire de modules > Installer un module en envoyant le fichier ZIP, ou déposez le dossier dfdeposit dans le répertoire /modules/ de votre boutique puis cliquez sur Installer.

À l’installation, le module :

  • crée ses tables (acomptes, transactions Stripe, règles de taux) ;
  • crée cinq statuts de commande : En attente de l’acompte, Acompte reçu, solde à régler, Solde demandé, Prête au retrait, solde à régler et Expédiée, solde à régler ;
  • ajoute le menu Commandes > Acomptes et l’écran Taux d’acompte, accessible depuis ce menu et depuis la configuration ;
  • enregistre ses hooks : moyens de paiement, fiche produit, panier, confirmation de commande, compte client, page commande du back-office et facture PDF.

À la désinstallation, les tables sont conservées volontairement : la numérotation des factures d’acompte et des avoirs doit rester continue si vous réinstallez le module.

Vérification de la configuration

La page de configuration commence par une liste de contrôles en vert, orange ou rouge : moyen de paiement prêt, clé Stripe acceptée par Stripe, mode test encore actif, secret du webhook renseigné et date du dernier événement reçu, dernier passage de la tâche cron, statuts déclencheurs présents, statut déclencheur marqué comme payé, mentions légales des factures. Tant qu’une ligne est rouge, corrigez-la avant d’ouvrir les ventes.

Le bouton Tester la clé Stripe interroge Stripe avec la clé du mode sélectionné. Le test est aussi lancé automatiquement à l’enregistrement quand la clé change. Les URL du webhook et du cron se copient avec le bouton Copier.

Règles d’acompte

Taux et montant minimum

Taux d’acompte : part des produits éligibles payée à la commande, entre 1 et 99 %. Montant minimum de commande (TTC) : en dessous, l’option acompte est masquée. 0 signifie aucun minimum.

Catégories éligibles et autres produits

Laissez la liste vide pour proposer l’acompte sur tout le catalogue, ou sélectionnez les catégories concernées. Le réglage Autres produits du panier décide du sort des produits non éligibles dans un panier mixte : Payés en totalité avec l’acompte (ils sont ajoutés à 100 % au montant de l’acompte) ou Masquer l’option acompte.

Frais de port et arrondi

Les frais de port peuvent être payés avec le solde (par défaut), payés avec l’acompte ou répartis au taux d’acompte. L’arrondi se fait au centime ou à l’unité supérieure, pour des montants comme 748 € au lieu de 747,35 €.

Groupes clients et affichage

Groupes clients : seuls les groupes sélectionnés voient l’option, par exemple les professionnels pour du matériel pro. Vide = tous les clients. Afficher sur les fiches produit ajoute sous le bouton d’ajout au panier une ligne du type « Commandez avec un acompte de 30 % : 747,00 € maintenant, 1 743,00 € à l’expédition ou au retrait ». Afficher dans le panier ajoute la répartition acompte / solde au récapitulatif.

Taux par produit, catégorie ou marque

Ouvrez Taux d’acompte depuis la liste des acomptes ou la configuration, puis Ajouter un taux. Chaque règle vise une seule cible : un produit (recherche par nom, référence ou ID), une catégorie ou une marque, avec un taux entre 0 et 99 %.

Ordre de priorité : la règle du produit, puis celle de la catégorie la plus profonde parmi les catégories du produit, puis celle de la marque, puis le taux par défaut de la configuration. Un taux de 0 % exclut la cible : le produit est payé en totalité avec l’acompte. Une règle s’applique même si la catégorie du produit n’est pas dans les catégories éligibles.

Quand un panier contient des produits à taux différents, l’acompte est calculé ligne par ligne. Le taux affiché au client et sur la facture est alors le taux effectif, par exemple 48,39 %.

Solde

Statuts qui demandent le solde

Quand une commande dont l’acompte est réglé passe dans l’un de ces statuts, le client reçoit l’email de demande de solde avec le lien de paiement. Par défaut : Solde demandé, Prête au retrait, solde à régler et Expédiée, solde à régler.

N’utilisez pas le statut natif Expédié pour une commande dont le solde n’est pas payé : il est marqué comme payé dans PrestaShop, qui enregistre alors automatiquement le reste comme réglé. Utilisez Expédiée, solde à régler. La vérification de la configuration signale un statut déclencheur marqué comme payé.

Statut une fois entièrement réglée

Statut appliqué quand le solde atteint zéro (par défaut Paiement accepté), et un second pour les commandes déjà expédiées (par défaut Expédié). C’est à ce moment que PrestaShop génère la facture finale.

Relances et notifications

Relance tous les X jours et Nombre maximum de relances pilotent les emails de rappel envoyés par la tâche cron. Notifications à l’équipe : adresses, séparées par des virgules, prévenues quand un client paie un acompte ou un solde en ligne, quand un acompte arrive avec un montant inattendu, et quand une commande par virement est passée.

Autres moyens de régler le solde

Texte libre par langue affiché sur la page du solde et dans les emails, par exemple « Le solde peut aussi être réglé par carte ou en espèces lors du retrait à l’atelier ».

Paiement par carte (Stripe)

  1. Activez Paiement par carte et choisissez le mode Test ou Production.
  2. Collez la clé secrète du mode choisi (sk_test_, sk_live_ ou une clé restreinte rk_). Les clés enregistrées sont masquées à l’affichage.
  3. Dans le tableau de bord Stripe, menu Développeurs > Webhooks, créez un endpoint avec l’URL affichée dans la configuration et les événements checkout.session.completed et checkout.session.async_payment_succeeded.
  4. Copiez le secret de signature whsec_ dans le champ Secret de signature du webhook.

Le client est redirigé vers une page Stripe Checkout. Au retour, la commande est créée immédiatement. Si le client ferme l’onglet avant de revenir, le webhook crée la commande. Chaque session n’est traitée qu’une fois.

Après votre premier paiement de test, la ligne « Dernier événement Stripe reçu » de la vérification doit passer au vert. Si elle reste orange, vérifiez l’URL et les événements de l’endpoint.

Virement bancaire

Activez Proposer l’acompte par virement et renseignez le titulaire, l’IBAN, le BIC et le nom de la banque. La commande est créée en En attente de l’acompte, le client voit vos coordonnées sur la page de confirmation et les reçoit par email, avec la référence de commande comme libellé.

Afficher les coordonnées bancaires pour le solde ajoute le virement comme moyen de régler le solde. Annuler les commandes par virement impayées après X jours : la tâche cron annule les commandes toujours en attente de l’acompte, sans aucun paiement, et le stock est remis en vente. 0 désactive cette annulation.

Facture d’acompte

Préfixe de numérotation (AC par défaut) et Préfixe des avoirs (AVAC par défaut) doivent être différents. Prochain numéro (minimum) permet de reprendre une numérotation existante : la prochaine facture prend cette valeur si elle est supérieure au dernier numéro émis. Mentions légales : texte par langue imprimé en bas de chaque facture d’acompte (raison sociale, capital, SIRET, numéro de TVA, conditions de paiement).

Tâche cron

Planifiez une fois par jour l’URL cron affichée dans la configuration, par exemple à 6 h. Elle envoie les relances de solde et annule les commandes par virement expirées, pour toutes les boutiques. La vérification de la configuration indique son dernier passage.

Le parcours du client

  1. Au checkout, le client choisit « Payer un acompte de X € par carte » ou « par virement ». Le détail affiche le total, l’acompte, le solde et une barre de répartition.
  2. Après paiement par carte, la commande passe en Acompte reçu, solde à régler, la facture d’acompte est émise et jointe à l’email. Par virement, la commande reste en attente jusqu’à votre confirmation.
  3. Quand la commande atteint un statut déclencheur, le client reçoit le lien vers la page du solde : paiement par carte, coordonnées bancaires et vos consignes.
  4. Une fois le solde réglé, la commande passe au statut final et le client reçoit un email de confirmation.

Un suivi en trois étapes (Acompte versé, Commande prête et solde demandé, Entièrement réglée) s’affiche sur la confirmation, dans le détail de commande du compte client et sur la page du solde. Le client peut payer le solde avant la demande depuis son compte.

Gérer les acomptes en back-office

Commandes > Acomptes

Quatre indicateurs en tête : soldes restant dus, soldes demandés, virements à confirmer et acomptes encaissés ce mois-ci. La liste affiche pour chaque commande le taux, le total, l’acompte, le montant réglé, le solde dû, le statut et la facture d’acompte. Cochez plusieurs commandes puis Demander le solde pour envoyer les liens en une fois, par exemple le jour où un lot est prêt au retrait.

Bloc « Acompte et solde » de la fiche commande

  • Confirmer l’acompte : pour un virement reçu, saisissez le montant, le moyen et la référence. Le paiement est enregistré, la facture d’acompte émise et envoyée.
  • Demander le solde maintenant ou Renvoyer le lien de paiement, et copie du lien du solde.
  • Enregistrer un paiement du solde : virement, chèque, espèces, carte en magasin ou à la livraison. Quand le solde atteint zéro, la commande passe au statut final et le client est prévenu.
  • Annuler la facture d’acompte (avoir) : pour une commande annulée, émet un avoir numéroté. Le remboursement se fait dans Stripe ou par virement.

Facturation

La facture d’acompte reprend l’adresse de facturation, le numéro de commande, le taux, une ligne par taux de TVA avec base HT, TVA et TTC, le moyen de paiement et le solde restant. La ventilation de TVA est calculée au prorata des taux de la commande, frais de port et emballage compris, puis figée à l’émission. Le client la télécharge depuis son compte, l’administrateur depuis la liste ou la fiche commande.

La facture PrestaShop finale est générée au paiement du solde, avec un encart rappelant la facture d’acompte. L’avoir reprend les montants de la facture d’acompte en négatif et la référence de la facture annulée.

Dépannage

L’option acompte n’apparaît pas au checkout

Vérifiez dans l’ordre : un moyen de paiement prêt (clé Stripe ou IBAN), le groupe du client, le montant minimum, les catégories éligibles et les règles à 0 %, et le réglage « Masquer l’option acompte » si le panier contient un produit non éligible.

Un paiement par carte n’a pas créé de commande

Le secret du webhook est probablement absent ou faux, ou l’endpoint n’écoute pas les bons événements. Le paiement reste visible dans Stripe. Une fois le webhook corrigé, renvoyez l’événement depuis le tableau de bord Stripe : la commande est créée.

La commande est en « Erreur de paiement »

Le montant payé par carte ne correspond pas à l’acompte attendu, en général parce que le panier a changé pendant le paiement. Vérifiez les paiements de la commande, puis confirmez l’acompte depuis le bloc de la fiche commande ou remboursez le client.

Les relances ne partent pas

La tâche cron ne tourne pas ou le délai de relance est à 0. La vérification de la configuration indique la date de son dernier passage.

Le solde a été marqué payé alors que le client n’a rien versé

Un statut marqué comme payé (Paiement accepté, Expédié) a été appliqué à la commande : PrestaShop enregistre alors le reste comme réglé. Contrôlez les paiements de la commande et, pour les suivantes, utilisez les statuts du module.

Compatibilité

  • PrestaShop 8.0 à 9.x, le même ZIP couvre les deux branches.
  • Multiboutique, multidevise (devises sans décimales gérées par Stripe) et multilingue.
  • Architecture ModuleAdminController, API Stripe appelée directement, sans dépendance Composer.
  • Interface, emails et PDF en français, anglais, espagnol, allemand, italien, néerlandais, polonais et portugais.
Cette page vous a-t-elle été utile ?

Toujours bloqué ? Contactez le support