Chiffre d’affaire sans limites!!!

Sécurisez votre site web pour renforcer votre image de marque, du logo au branding

Chargement…

Documentation 3DIS Shop

Guide administrateur 3DIS Shop

Créez un catalogue WordPress, publiez des produits et leurs formules, puis choisissez entre contact, devis et achat direct avec 3DIS PAYMENT.

Installation et prérequis

Installez le ZIP officiel depuis Extensions, activez 3DIS Shop puis saisissez la clé dans la page de licence. Utilisez un site WordPress compatible, protégé par HTTPS et sauvegardé. Contact Form 7 et 3DIS PAYMENT ne sont requis que pour l’achat direct ; le catalogue, la prise de contact et la demande de devis peuvent fonctionner sans paiement.

Créer un produit

  1. Ouvrez Produits puis Ajouter un produit.
  2. Saisissez un titre public et un slug court.
  3. Choisissez le type digital, physique ou service.
  4. Ajoutez un SKU stable, un prix normal HT et la devise.
  5. Sélectionnez un mode d’action : contact, devis ou achat direct.
  6. Renseignez le badge, l’accroche, la disponibilité et l’image mise en avant.
  7. Ajoutez les formules, fichiers et images de galerie.

Images et galerie

Utilisez une image horizontale de bonne qualité. Les cartes conservent les proportions avec un affichage de type contain afin de ne pas tronquer les textes ou interfaces. Placez les éléments importants à distance des bords. Renseignez un texte alternatif descriptif. La galerie sert aux captures d’interface, étapes ou résultats qui complètent l’image principale.

Formules et identifiants

Chaque formule possède un nom, un identifiant stable, un prix HT et une description. L’identifiant est transmis au formulaire et au profil de paiement. Ne le changez pas après mise en ligne sans contrôler toutes les associations. Utilisez des codes simples comme solo, business ou unlimited.

Le prix principal de la fiche représente le prix d’appel. Lorsqu’il existe plusieurs formules, l’interface commerciale doit afficher « À partir de » plutôt qu’un prix sur demande.

Catégories

Classez les plugins dans Plugins WordPress, le logiciel Windows dans Logiciels et les produits groupés dans Packs, sous-catégorie de Plugins WordPress. Une fiche ne doit pas rester sans catégorie. Après modification, vérifiez le filtre et la carte dans l’archive publique.

Achat direct avec 3DIS PAYMENT

Choisissez le mode Achat direct puis le profil `ACHAT` dédié au produit. Le profil doit utiliser le formulaire « Commande — Produit », un taux de TVA de 20 %, les bons identifiants de formule et Stripe comme fournisseur actif lorsque PayPal est désactivé. N’associez jamais une fiche publique à un profil de recette.

Le formulaire contient les coordonnées, la société, l’adresse, la formule, la quantité, les conditions et le composant de paiement. Testez chaque formule depuis la fiche publique. Comparez le HT, la TVA, le TTC et la transaction enregistrée.

Création automatique du formulaire

Lorsque Contact Form 7 et 3DIS PAYMENT sont actifs, la création d’un produit en achat direct peut générer ou associer un formulaire et un profil. Vérifiez le résultat : titre, formulaire, classes des champs, TVA, formule et code de licence. L’automatisation doit rester modifiable et fonctionner avec un nouveau produit sans condition propre aux identifiants 3DIS actuels.

Fichiers digitaux

Associez uniquement les artefacts prévus pour la vente. Un fichier source n’est pas forcément un installateur. Pour un produit sous licence, utilisez un téléchargement autorisé par License Platform et une version publiée. Les identifiants internes des médias ne doivent pas être exposés comme mécanisme de sécurité.

Produits associés et liens internes

Reliez chaque fiche à sa documentation et aux produits complémentaires. PAYMENT doit pointer vers Shop et Multistep ; Shop vers les packs ; License Platform vers les produits sous licence ; le Générateur XML vers son guide. Les liens doivent aider le visiteur et non former une liste artificielle.

Mises à jour et désinstallation

Sauvegardez WordPress avant une mise à jour. Contrôlez ensuite la boutique, les cartes, les fiches, les formulaires et l’affichage mobile. Avant une désinstallation définitive, exportez les produits et réglages nécessaires. La simple désactivation ne doit pas supprimer le catalogue.

Dépannage

ProblèmeContrôle
Image tronquéeCache CSS, version Shop, dimensions et règle object-fit
Produit absentÉtat, disponibilité, catégorie et filtres
Achat sans paiementMode d’action, profil associé et formulaire CF7
Prix incorrectFormule, identifiant, règles du profil et TVA
Fichier inaccessibleVersion publiée, licence et autorisation de téléchargement

FAQ

Shop est-il dépendant de PAYMENT ?

Non. PAYMENT est nécessaire uniquement pour l’achat direct.

Combien de formules peut-on afficher ?

La fiche actuelle prévoit jusqu’à quatre formules ou variantes.

Comment créer un pack ?

Créez une fiche autonome dans Shop et un produit groupé correspondant dans License Platform.

Pourquoi une catégorie n’apparaît-elle pas ?

Vérifiez qu’elle contient au moins un produit publié et que le filtre du catalogue utilise sa taxonomie.

Besoin d’aide sur votre catalogue ?

Indiquez la version, l’URL de la fiche et le comportement observé.

Contacter le support

Références officielles

Ces ressources officielles complètent les procédures de configuration et d’intégration décrites dans ce guide.

Architecture, intégration et maintenance — 3DIS Shop

Référence : 0.3.5 · documentation vérifiée dans le code le 29 septembre 2026. Cette partie complète le guide d’utilisation. Les exemples doivent être adaptés puis testés sur un formulaire ou contenu de recette. Ils ne modifient pas automatiquement votre site.

Architecture du catalogue

includes/Core/Plugin.php assemble les composants. Content/ProductType déclare le type threedis_product et la taxonomie threedis_product_cat. Content/ProductMeta déclare les métadonnées ; Admin/ProductMetaBox gère l’édition, les formules et le raccordement CF7/PAYMENT. Frontend/Catalog prépare catalogue et ressources, Frontend/Templates choisit les modèles et Frontend/Seo gère les éléments SEO spécifiques. L’intégration de licence est dans Licensing/Integration.

Shop conserve ses produits dans les contenus et métadonnées WordPress. Les paiements sont enregistrés par PAYMENT ; les droits d’activation et licences par License Platform. Un produit publié n’est pas une transaction et un identifiant de média n’est pas une protection de téléchargement.

Données à préserver

  • _3dis_price_cents, _3dis_sale_price_cents, _3dis_currency : prix et devise ; les montants sont stockés en centimes pour les prix du catalogue.
  • _3dis_offers : jusqu’à quatre formules avec identifiant stable, nom, prix et description.
  • _3dis_payment_profile_id et _3dis_cf7_form_id : liens vers profil et formulaire.
  • _3dis_quantity_min et _3dis_quantity_max : bornes de quantité.
  • _3dis_gallery_ids et _3dis_download_ids : médias associés. Les identifiants de téléchargement ne sont pas exposés par le schéma REST de ces métadonnées ; cela ne rend pas privée l’URL physique d’un média public.

Modifiez ces valeurs par les écrans produits. En migration, préservez les relations entre les nouveaux IDs, les profils et les formulaires ; copier seulement le HTML d’une fiche ne suffit pas.

Contrat Shop → CF7 → PAYMENT

Le formulaire utilise threedis_product_id, threedis_offer_id, threedis_quantity et prix_total. Les classes threedis-quantity, prix-total et threedis-license-plan-key participent au raccordement. Conservez noms et classes lorsque vous personnalisez le formulaire.

Le filtre threedis_payment_validate_dynamic_amount, raccordé par ProductMetaBox::validate_payment_amount, contrôle le produit, son profil, la quantité et la formule enregistrée. Il renvoie le prix unitaire issu du catalogue ; la valeur visible du navigateur ne constitue pas l’autorité. Vérifiez aussi le mapping de la formule vers le plan commercial si une licence doit être émise.

Lors de l’enregistrement d’un produit, ensure_cf7_form() peut créer ou adapter son formulaire ; certaines anciennes structures sont reconstruites. Faites une copie du formulaire personnalisé avant cet enregistrement et relisez le résultat. bind_profile() raccorde les classes, la devise et, dans cette version, écrit un taux de TVA de 20 dans le profil : vérifiez le taux applicable après l’association, notamment si votre configuration diffère.

Navigation et personnalisation des modèles

Le formulaire généré par Shop utilise .threedis-form-step, .threedis-next et .threedis-prev. Ce parcours est distinct des marqueurs de l’addon Multistep. N’activez pas deux moteurs de navigation sur le même formulaire sans intégration vérifiée. Les règles serveur de PAYMENT restent requises quelle que soit la navigation.

Pour personnaliser le rendu, placez dans votre thème enfant les fichiers 3dis-shop/single-product.php, 3dis-shop/archive-products.php ou 3dis-shop/taxonomy-product-category.php. Templates::template() recherche ces surcharges avant les modèles du plugin. Copiez le modèle de la version courante, limitez vos modifications et comparez-le après chaque mise à jour ; une surcharge ancienne peut masquer une correction du plugin.

Recette minimale d’un produit

  1. Contrôlez publication, catégorie, image, prix, devise, disponibilité et liens sur mobile et ordinateur.
  2. Sélectionnez chaque formule et testez les quantités aux bornes ; le montant serveur doit correspondre à l’offre enregistrée.
  3. Vérifiez le formulaire réellement associé, la validation des coordonnées, le retour entre étapes et le bon profil de paiement.
  4. Pour un produit sous licence, vérifiez dans l’environnement de test autorisé la confirmation de paiement, l’émission unique, le courriel et la disponibilité du bon paquet.
  5. Contrôlez le cache déconnecté : une page de catalogue peut être mise en cache, mais les sessions et résultats de paiement ne doivent pas être partagés.

Maintenance et retour arrière

Sauvegardez base, médias, réglages, modèles du thème enfant et formulaires avant mise à jour. Après installation, contrôlez catalogue, fiche, formulaire et prix serveur ; purgez les ressources anciennes. Revenir à un ancien ZIP ne restaure ni les formulaires régénérés ni les métadonnées modifiées : utilisez leurs sauvegardes ciblées en préservant les transactions nouvelles.

Avant désactivation ou suppression, prévoyez le devenir des URLs produits et du parcours d’achat. Ne supprimez pas des profils ou formulaires partagés avec d’autres fiches. Pour le support, indiquez IDs produit/formulaire/profil, formule, version, symptôme et étapes de reproduction, sans données client ni secrets.

Retrouver les autres documentations 3DIS · Assistance technique

Shop 0.3.6 — CGV, CGU et preuves d’acceptation

Mise à jour du 2 octobre 2026. Pour les achats avec archivage, installez d’abord 3DIS PAYMENT 1.1.1 ou supérieur, puis Shop 0.3.6. Contact Form 7 et un profil PAYMENT dynamique associé au produit sont nécessaires. Les autres parcours PAYMENT ne sont pas automatiquement couverts par ce module.

Une page source par document

  1. Créez ou choisissez vos pages WordPress CGV et CGU, puis publiez-les.
  2. Dans chaque produit, ouvrez CGV et CGU du produit et sélectionnez les deux pages souhaitées. Le réglage est disponible pour les produits physiques, numériques et les services.
  3. Vérifiez le formulaire CF7, le profil PAYMENT propre au produit et les identifiants des offres, puis enregistrez.
  4. Ouvrez le formulaire pour contrôler les documents présentés et la case d’acceptation.

Plusieurs produits peuvent partager la même page. Modifier et publier cette page actualise les futures acceptations sans réenregistrer les produits. Les archives précédentes restent inchangées. Le titre, le texte et l’URL déterminent automatiquement la version. Sélectionner au moins une page active cette exigence ; sélectionner « Aucune page » pour les deux la désactive. Ne partagez pas un profil entre des produits aux conditions différentes.

Contenu pris en charge

Utilisez des pages publiées, sans mot de passe, avec des paragraphes, titres et listes statiques. Les pages privées, vides, supprimées ou repassées en brouillon bloquent les nouvelles acceptations. Les shortcodes et blocs dynamiques ou synchronisés sont refusés. Le texte normalisé et les destinations des liens sont conservés ; les images, styles et scripts ne font pas partie du texte archivé. Les pages doivent appartenir au même WordPress : aucune URL externe n’est téléchargée.

Contrôle au moment de l’achat

Le visiteur peut consulter les textes, déclare sa qualité Particulier ou Professionnel et coche une case initialement décochée. Shop enregistre les textes et leur empreinte ; PAYMENT lie cette référence au devis signé et contrôle produit, offre, formulaire, session et version avant création d’une nouvelle transaction. Une modification des conditions pendant le parcours impose un rechargement et une nouvelle acceptation. L’autorisation expire après 15 minutes ; l’archive, elle, est conservée. Les reprises d’une même transaction suivent l’idempotence de PAYMENT.

Archives et copie client

Dans Outils → Preuves des conditions, les administrateurs consultent les acceptations et exportent chaque preuve en JSON : date UTC, produit, formule, parcours, qualité déclarée, titre, texte complet, page source, URL et version. Shop conserve ces données indépendamment de CFDB. Une acceptation ne prouve pas à elle seule l’identité du visiteur ou son paiement.

Les textes acceptés sont ajoutés aux courriels CF7 associés à une transaction confirmée ou ne nécessitant pas de paiement. Configurez explicitement le destinataire et E-mail (2) pour une copie au client. Le plugin ne crée pas de destinataire et n’active pas ce courrier automatiquement. Testez sa réception avec votre configuration SMTP.

Téléchargements d’essai protégés

Pour utiliser ce parcours, définissez THREEDIS_SHOP_PRIVATE_DOWNLOADS vers un dossier lisible par PHP, situé hors de la racine web. Associez au produit le nom du ZIP et son SHA-256. Utilisez ensuite /wp-admin/admin-post.php?action=threedis_trial&product=ID, en remplaçant ID par l’identifiant du produit. Les anciens liens directs ne sont pas migrés automatiquement.

Le visiteur accepte les documents puis peut obtenir leur copie TXT et le ZIP. Le serveur vérifie chemin, taille et empreinte, utilise une session sécurisée sous HTTPS et refuse la réutilisation du même formulaire de téléchargement. Aucun achat, abonnement ou licence n’est créé par ce téléchargement. Un dossier seulement nommé « private » dans uploads n’est pas suffisant.

Conservation et responsabilités

Les preuves sont stockées dans des options WordPress non autoloadées sous threedis_legal_*, la configuration sous threedis_shop_legal_policies. Désactiver les conditions ne supprime pas les archives. Aucune purge automatique n’est fournie : définissez votre politique de conservation, vos accès et vos sauvegardes. Le vendeur rédige et tient à jour ses conditions. Ce module ne remplace ni une autorisation bancaire ni le contrat métier et ne recueille aucune renonciation à la rétractation.

Vérifications après configuration

Vérifiez le refus sans acceptation, la réussite après acceptation, la copie dans l’historique, le rejet d’un ancien texte après modification et la conservation des deux versions. Contrôlez ensuite votre parcours visiteur, les courriels et le téléchargement avec vos propres fichiers. La recette de cette version sur le site a utilisé un produit fictif et un montant nul, sans nouveau paiement réel ni envoi de courriel ; elle ne valide pas la délivrance SMTP de votre installation.

Shop 0.3.7 — Enregistrement des pages CGV et CGU

Version publiée le 2 octobre 2026. Cette correction conserve les sélections CGV et CGU après enregistrement et rechargement du produit, notamment pour les pages Gutenberg contenant des titres et des listes statiques. Les blocs réellement dynamiques et les liaisons de données restent exclus du texte archivable.

Choisissez les pages dans la fiche produit, enregistrez puis rechargez la fiche pour vérifier les deux valeurs. Retirer une page ne doit pas effacer l’autre. Les pages restent la source des futures acceptations ; les preuves déjà enregistrées conservent le texte accepté à leur date. Aucun changement des licences ni des formulaires existants n’est requis pour cette correction.

La mise à jour reste une décision de l’administrateur. Téléchargez le paquet officiel depuis 3dis-development.com et sauvegardez le site avant installation. La recette de cette correction a vérifié la persistance des sélections et les liens du formulaire ; elle ne constitue pas un nouveau test de paiement ou de réception de courriel.

Shop 0.3.8 — Fiabilisation des mises à jour sous licence

Publication du 2 octobre 2026. La recherche conserve une cadence de douze heures. WordPress affiche la version disponible ; seul l’administrateur décide de cliquer sur « Mettre à jour ». Aucun réglage de mise à jour automatique n’est activé par cette correction.

La recherche vérifie les métadonnées signées et les conserve 24 heures, sans y stocker le jeton de téléchargement. Un jeton neuf est demandé au moment du téléchargement. La licence, la version, la signature, la destination, l’expiration, la taille et l’empreinte SHA-256 sont vérifiées ; un refus ou un fichier altéré empêche l’installation.

Le bouton de vérification de licence relance aussi la recherche, avec une limite d’une fois par minute et un verrou contre les appels concurrents. Une visite de l’administration peut effectuer le contrôle arrivé à échéance même lorsque WP-Cron est désactivé. Cela ne modifie pas la configuration cron de l’hébergement. Les anciens liens signés conservés dans une annonce WordPress ne sont plus réutilisés.

Les licences, données et réglages existants sont conservés. Shop et PAYMENT embarquent désormais chacun leur copie isolée du SDK pour éviter une dépendance à l’ordre de chargement. Multistep 0.4.10 possédait déjà ce mécanisme ; les versions associées sont Shop 0.3.8, PAYMENT 1.1.2, Multifiles 1.2.1 et CFDB Optimizer 1.1.2.

Sur 3dis-development.com, les quatre candidats ont conservé leur licence valide ; les quatre téléchargements officiels ont été vérifiés, puis les quatre mises à jour manuelles natives vers les versions stables ont réussi. Les tests locaux couvrent aussi le refus des liens expirés, des fichiers corrompus et des autorisations refusées. Ces contrôles concernent le mécanisme de mise à jour, pas une nouvelle recette de tous les paiements ou formulaires.

Si le site héberge lui-même son serveur de licences, la maintenance pendant une mise à jour AJAX peut interrompre la demande de jeton. Le parcours WordPress dans une page complète a été validé sur cette configuration. Ne pas contourner un refus en exposant publiquement le ZIP ; utiliser le paquet officiel autorisé et le téléversement administrateur si nécessaire. Sauvegarder le site avant toute mise à jour.