Référentiel fonctionnel FroggShop

Toutes les fonctionnalités FroggShop, rangées par socle

Cette page sert de référentiel commercial et technique : elle détaille les briques FroggShop disponibles, leur objectif, leur fonctionnement et les évolutions prévues dans la roadmap.

Socle, architecture et configuration

Les fondations techniques qui rendent FroggShop composable, maintenable et exploitable sur plusieurs projets. 7 fonctionnalités dans ce socle.

Socle modulaire FroggShop

Objectif : Fournir un plugin Shopware réutilisable et multi-clients.

FroggShop est organisé en bundles internes autonomes, chacun avec ses services, routes, configurations, entités et documentation. Cette architecture permet de composer des fonctionnalités e-commerce sans hardcoder de logique client.

Fonctionnement

Le plugin principal charge des bundles additionnels via Shopware. Chaque bundle enregistre ses services, routes, migrations et configurations, puis expose ses fonctionnalités de manière isolée.

Configuration centralisée des bundles

Objectif : Administrer les réglages FroggShop depuis le back-office Shopware.

Le bundle Bootstrap regroupe les configurations XML de chaque bundle dans une interface d'administration dédiée. Les fonctionnalités peuvent être activées, paramétrées et exposées par bundle.

Fonctionnement

Chaque bundle contribue ses fichiers de configuration via un événement. Le controller d'administration agrège ces données et les présente dans une zone FroggShop unique.

Helpers de migration

Objectif : Fiabiliser les opérations d'installation et d'évolution de données.

FroggShop fournit des traits de migration pour gérer les system configs, CMS, state machines, custom fields et shipping methods. Ils standardisent les changements de données récurrents.

Fonctionnement

Les migrations appellent des helpers idempotents pour insérer ou mettre à jour des données Shopware sans dupliquer les enregistrements ni casser les environnements existants.

Commandes de maintenance Bootstrap

Objectif : Outiller les opérations techniques récurrentes.

Des commandes permettent de maintenir les custom fields, créer des pages CMS de référence ou diagnostiquer l'environnement d'exécution.

Fonctionnement

Les commandes console s'exécutent via Symfony/Shopware et appellent les repositories ou services FroggShop pour appliquer des actions contrôlées.

Documentation intégrée

Objectif : Centraliser les guides fonctionnels et techniques.

La documentation MkDocs couvre les bundles, les guides de développement, les commandes utiles, les standards et les procédures de test.

Fonctionnement

Les pages Markdown sont organisées par bundle et publiées via MkDocs pour servir de référence aux développeurs, QA et rédacteurs.

Thème FroggShop

Objectif : Fournir une base storefront réutilisable.

Le bundle Thème apporte templates Twig, variables, extensions, décorations CMS et configuration d'affichage pour construire un thème Shopware cohérent.

Fonctionnement

Le thème surcharge ou étend les templates Shopware, expose des variables globales et s'appuie sur la configuration thème pour adapter le rendu.

Outils transverses

Objectif : Fournir des helpers réutilisables.

FroggShop inclut des outils de logging structure, stockage de logs, chaînes de loggers et helpers de dates.

Fonctionnement

Ces classes utilitaires sont injectables par les bundles pour éviter de dupliquer les mécanismes de log, stockage ou manipulation de dates.

Contenu, CMS headless et éditorial

Les briques qui donnent de l’autonomie aux équipes contenu et marketing sans sacrifier la performance. 10 fonctionnalités dans ce socle.

Blog éditorial

Objectif : Publier et organiser des contenus blog dans Shopware.

Le blog gère les listings, catégories, auteurs, pages détail, redirections legacy, SEO URLs, pagination, métadonnées et sitemap. Il peut être alimenté par Storyblok ou par import legacy.

Fonctionnement

Des entités blog stockent les contenus. Les controllers storefront et page loaders construisent les pages, tandis que les commandes importent ou reconstruisent les données SEO.

Intégration Storyblok

Objectif : Connecter Shopware à un CMS headless.

FroggShop gère le rendu de pages Storyblok, la preview, les webhooks de cache, la synchronisation de contenus et les commandes de dump/restore de structure.

Fonctionnement

Les controllers appellent les services Storyblok, récupèrent les stories, les transforment en rendu storefront et invalident le cache lors des webhooks ou synchronisations.

Synchronisation de structure Storyblok

Objectif : Maintenir les schémas CMS entre environnements.

Les composants Storyblok peuvent être exportés, versionnés et restaurés pour synchroniser DEV, PREPROD ou autres espaces.

Fonctionnement

Des commandes lisent la structure des composants Storyblok, l'écrivent dans des fichiers versionnés puis peuvent la restaurer dans un autre espace cible.

Content Renderer headless

Objectif : Insérer du contenu CMS headless dans le storefront.

Le renderer permet d'injecter des contenus Storyblok ou modules CMS dans les templates, avec prise en charge Twig, modules dédiés et rendu compatible cache.

Fonctionnement

FroggShop décore le renderer CMS, résout les modules headless, prépare les variables Twig et retourne du HTML exploitable dans les pages Shopware.

Shortcodes éditoriaux

Objectif : Enrichir dynamiquement des contenus texte ou CMS.

Les shortcodes permettent de transformer des marqueurs éditoriaux en rendus HTML ou composants, utilisables notamment dans le blog et les surfaces CMS globales.

Fonctionnement

Un expander détecte les tokens dans le contenu, délègue chaque shortcode à un handler dédié puis remplace le marqueur par le rendu final.

Header et footer dynamiques

Objectif : Piloter les zones globales du site via CMS.

Les en-têtes et pieds de page peuvent être rendus depuis Storyblok avec stratégies de cache HTML ou ESI pour conserver de bonnes performances.

Fonctionnement

Des pagelets récupèrent les contenus globaux, les rendent via Storyblok et les exposent en HTML direct ou en fragment ESI selon la configuration.

Formulaires CMS génériques

Objectif : Transformer des formulaires Storyblok en interactions Shopware.

Les formulaires génériques gèrent validation, captcha, rate limit, token, cache et émission d'événements Flow Builder. Ils permettent de créer des formulaires sans développement spécifique.

Fonctionnement

Le controller reçoit la soumission, recharge la définition du formulaire, valide les champs et sécurités, puis dispatch un événement Flow avec les données nettoyées.

Robots.txt piloté

Objectif : Administrer le contenu robots.txt.

FroggShop expose une route robots.txt configurable, avec rendu dédié et possibilité de gérer les restrictions selon le contexte, notamment les domaines d'administration.

Fonctionnement

La route `/robots.txt` appelle un renderer qui assemble le contenu selon la configuration active et le contexte de domaine.

Analytics et tag management

Objectif : Configurer les scripts de mesure et marketing.

Des configurations dédiées permettent d'intégrer Google Analytics, Google Tag Manager ou des tags marketing depuis l'administration.

Fonctionnement

Les valeurs configurées sont lues par le storefront ou les templates pour injecter les identifiants et scripts uniquement quand ils sont actifs.

SEO éditorial

Objectif : Gérer les métadonnées et données SEO.

FroggShop ajoute des entités et services pour gérer les données SEO, nettoyer les métadonnées et produire des URLs optimisés pour les contenus éditoriaux.

Fonctionnement

Les contenus éditoriaux sont enrichis avec titres, descriptions, aliases et routes SEO. Des commandes peuvent nettoyer ou régénérer les métadonnées.

SEO catalogue, recherche et navigation

Les fonctionnalités dédiées aux catalogues complexes, aux listings indexables et aux migrations SEO. 7 fonctionnalités dans ce socle.

Recherche enrichie

Objectif : Améliorer les suggestions de recherche Shopware.

FroggShop décore la route de suggestion produit pour ajouter produits, catégories, fabricants et suggestions textuelles. Le système est extensible via événements et OpenSearch.

Fonctionnement

La route native est décorée, les critères sont enrichis, les résultats sont combinés puis retournés dans un format compatible storefront.

Analyse de pertinence recherche

Objectif : Évaluer la qualité des résultats de recherche.

Des routes d'analyse permettent d'enregistrer des jugements, mesurer la pertinence et aider au réglage des résultats de recherche.

Fonctionnement

Un controller expose une interface d'analyse, sauvegarde les jugements et calcule des indicateurs de qualité sur les résultats observés.

Pages fabricant

Objectif : Créer des pages dédiées aux marques ou fabricants.

FroggShop ajoute des routes storefront, loaders, extensions d'entité fabricant et SEO URLs pour exposer les pages fabricant comme pages de navigation.

Fonctionnement

Une route résout le fabricant par slug, charge les produits associés et applique les templates SEO pour produire une page indexable.

CatalogPage

Objectif : Unifier les pages de listing catalogue.

CatalogPage modélise des pages de listing catégories ou fabricants, avec statut, SEO URL, sitemap, recomputation et tâches planifiées.

Fonctionnement

Une entité dédiée décrit la page, ses critères et son statut. Des services recalculent sa validité, ses URLs et sa présence dans le sitemap.

Permalinks catalogue

Objectif : Administrer des pages de listing filtrées et SEO.

Les permalinks représentent des listings construits à partir de filtres, visibles par sales channel, exposables en storefront et via Store API.

Fonctionnement

L'admin crée un permalink depuis une URL ou des filtres. FroggShop parse les paramètres, génère une page CatalogPage associée et expose la route publique.

Redirections legacy

Objectif : Importer et résoudre des anciennes URLs.

FroggShop permet d'ajouter ou importer des redirections, avec résolution cachée pour accompagner les migrations SEO.

Fonctionnement

Les commandes alimentent une entité redirect depuis saisie ou CSV. Un resolver retrouve la cible et applique la redirection lors des requêtes.

Templates SEO de navigation

Objectif : Installer les modèles SEO nécessaires aux pages catalogue.

Des commandes configurent les templates SEO pour fabricants, catalog pages et autres routes de navigation.

Fonctionnement

La commande d'installation crée ou met à jour les templates SEO URL Shopware pour les routes FroggShop concernées.

Produit, catalogue et règles commerce

Les mécanismes métier qui enrichissent les produits, les paniers, les variantes, les taxes et la disponibilité commerciale. 10 fonctionnalités dans ce socle.

Personnalisation d'affichage produit

Objectif : Ajouter des informations produit configurées.

DisplayCustomization permet de définir des informations affichées sur les produits via configuration JSON et de les propager jusqu'au panier.

Fonctionnement

La configuration JSON est interprétée par un service, appliquée aux produits concernés et ajoutée aux line items via cart processor.

Disponibilité produit

Objectif : Calculer la disponibilité commerciale du catalogue.

Le bundle Product fournit une entité de disponibilité, des commandes de calcul, une scheduled task et des triggers pour maintenir l'information à jour.

Fonctionnement

Les commandes ou scheduled tasks recalculent la disponibilité à partir des données produit/stock/règles, puis stockent le résultat dans une entité dédiée.

Informations logistiques produit

Objectif : Gérer des données logistiques et SKU secondaires.

Une entité dédiée stocke les informations logistiques produit, exposées via Admin API, avec gestion du versioning et synchronisation Alfred.

Fonctionnement

L'information est attachée au produit via extension DAL. Les APIs admin lisent/écrivent l'entité en respectant la version produit Shopware.

Restrictions d'affichage produit

Objectif : Restreindre la visibilité produit selon des règles.

Les restrictions s'appuient sur le Rule Builder, les critères DAL, le cache de décision, l'indexation OpenSearch et les listeners storefront.

Fonctionnement

Des subscribers ajoutent des filtres aux critères produit, un service décide l'accès selon les règles et les index sont enrichis pour filtrer aussi la recherche.

Gestion du stock produit

Objectif : Adapter les comportements de stock liés aux commandes.

FroggShop décore et complète les mécanismes Shopware pour tenir compte d'états de commande ou de règles métier spécifiques.

Fonctionnement

Des subscribers surveillent les transitions de commande et des décorations ajustent les opérations de stock au moment opportun.

Combinaison de variantes

Objectif : Générer des variantes produit depuis l'administration.

Une route Admin API et un service dédié permettent de combiner des variantes à partir d'un produit parent.

Fonctionnement

L'API reçoit le produit parent, calcule les combinaisons d'options et délègue la création ou mise à jour des variantes au service métier.

Badges produits

Objectif : Afficher des badges promotionnels ou informatifs.

Des custom fields et services permettent d'associer des badges produits, y compris en plusieurs parties.

Fonctionnement

Les migrations ajoutent les champs, puis le service lit les valeurs produit pour fournir les badges aux templates ou intégrations.

Packs produits

Objectif : Composer des produits sous forme de packs.

Le bundle Pack gère les relations entre packs et produits inclus, la visibilité, le calcul de stock consolidé et la décoration du stockage de stock.

Fonctionnement

Les entités Pack relient le produit pack à ses composants. Le stock du pack est calculé depuis les stocks disponibles des produits inclus.

Taxes additionnelles

Objectif : Ajouter des taxes supplémentaires aux produits et paniers.

Des entités DAL lient des taxes additionnelles aux produits, puis les services de prix les appliquent dans le calcul produit et panier.

Fonctionnement

Le calculateur de prix est décoré pour ajouter les taxes configurées. Le panier est ensuite enrichi avec les montants additionnels applicables.

Précommande et panier

Objectif : Adapter les comportements panier pour les précommandes.

Des subscribers et configurations permettent de moduler les prix ou règles panier selon les cas de précommande.

Fonctionnement

Les subscribers inspectent les line items et le contexte panier, puis appliquent les ajustements configurés avant le recalcul du panier.

Omnicanal, livraison et checkout

Les briques terrain pour connecter magasins, stocks locaux, points relais, adresses et parcours de commande. 12 fonctionnalités dans ce socle.

Store locator

Objectif : Exposer un annuaire de magasins.

Le bundle Store gère les entités magasin, pages listing, pages détail, recherche AJAX, SEO URLs et intégrations storefront.

Fonctionnement

Les magasins sont stockés en DAL, chargés par des controllers storefront et exposés via pages indexables ou endpoints de recherche.

Stock magasin

Objectif : Afficher les stocks disponibles par magasin.

FroggShop ajoute une entité stock magasin, une Store API, des routes storefront produit/checkout et des services de disponibilité locale.

Fonctionnement

Les stocks par produit/magasin sont lus via repository et exposés au storefront pour afficher disponibilité locale et options checkout.

Magasin favori

Objectif : Permettre au client de choisir un magasin de référence.

Le client peut sélectionner un magasin favori, le retrouver au login et l'utiliser dans les parcours storefront.

Fonctionnement

Une relation client-magasin est persistée. Des routes permettent de la créer, la lire ou la modifier, et un subscriber la recharge au login.

Retrait magasin

Objectif : Gérer le retrait magasin pendant le checkout.

Les services de checkout vérifient la disponibilité en magasin et accompagnent les parcours de retrait local.

Fonctionnement

Le checkout interroge les services Store pour vérifier les stocks et proposer les magasins compatibles avec le panier.

Points relais

Objectif : Proposer la sélection de relais transporteur au checkout.

Le bundle RelayPoint intègre Chronopost, Colissimo et Mondial Relay, avec cache, sélection panier/commande, APIs transporteur et résilience par connecteur.

Fonctionnement

Les controllers et routes Store API recherchent les relais, les connecteurs interrogent les APIs transporteur, puis le choix est sauvegarde sur le panier ou la commande.

Géolocalisation relais

Objectif : Faciliter la recherche de points relais proches.

Des routes transforment coordonnées et codes postaux pour alimenter la recherche de relais.

Fonctionnement

Les endpoints convertissent code postal en coordonnées ou coordonnées en code postal, puis ces données servent aux recherches transporteur.

Monitoring points relais

Objectif : Surveiller les APIs des transporteurs.

Une probe dédiée s'intègre au healthcheck pour détecter les problèmes de disponibilité des services relais.

Fonctionnement

La probe exécute des contrôles simples sur les connecteurs ou endpoints transporteurs et remonte un statut au healthcheck global.

Autocomplete adresse

Objectif : Aider la saisie d'adresse client.

FroggShop connecte des services comme Google Places ou adresse.data.gouv.fr pour proposer une autocompletion d'adresse.

Fonctionnement

Le controller reçoit la saisie utilisateur, interroge le provider configure et renvoie des suggestions normalisées au formulaire storefront.

Validation adresse et compte

Objectif : Adapter les contraintes de compte client.

Des subscribers et configs gèrent des exigences comme les champs société, la validation adresse ou certains comportements de compte.

Fonctionnement

Les subscribers enrichissent ou modifient les contraintes de validation Shopware selon la configuration active et le contexte client.

Référentiel codes postaux

Objectif : Importer les villes et codes postaux français.

Des entités, une commande et des messages asynchrones permettent de maintenir un référentiel postal exploitable par les formulaires.

Fonctionnement

La commande lance l'import, les messages traitent les données en arrière-plan et les entités postal city/zip code sont alimentées.

Redirection checkout login

Objectif : Simplifier le parcours de connexion checkout.

FroggShop peut rediriger la page de login checkout vers le parcours d'inscription ou de connexion adapté.

Fonctionnement

Un controller intercepte la route concernée et retourne une redirection vers l'étape checkout souhaitée.

Adresse de livraison panier

Objectif : Persister ou adapter l'adresse de livraison au checkout.

Le bundle Delivery décore les controllers adresse, gère des routes panier et intervient au confirm checkout.

Fonctionnement

Les controllers sauvegardent le choix d'adresse dans le panier ou le contexte, puis le subscriber le réapplique lors de la confirmation.

Compte client, avis, confidentialité et support

Les fonctionnalités qui structurent l’espace client, les avis, le consentement et les opérations support. 9 fonctionnalités dans ce socle.

Décoration des formulaires client

Objectif : Adapter les formulaires natifs Shopware.

Les formulaires contact/newsletter peuvent être ajustés via décoration de controller.

Fonctionnement

FroggShop décore le controller natif, exécute sa logique ou la complète, puis retourne une réponse compatible avec Shopware.

Commandes client enrichies

Objectif : Présenter les commandes avec livraisons structurées.

Le bundle Customer enrichit la route des commandes, les extensions order et line item, et reconstruit les livraisons pour l'espace client.

Fonctionnement

La route `OrderRoute` est décorée. Les commandes chargées sont complétées par un builder qui organisé livraisons, line items et données additionnelles.

Avis multi-providers

Objectif : Centraliser des avis provenant de plusieurs sources.

FroggShop stocke des avis génériques, sources produit et agrégats, avec un service CRUD unifié et des providers extensibles.

Fonctionnement

Les providers importent ou exposent leurs avis via une interface commune. Le service central normalise les données et maintient les agrégats.

Affichage des avis génériques

Objectif : Afficher des avis rattachés à une entité.

Une route permet de lister et filtrer les avis d'une entité donnée, pas seulement les produits natifs Shopware.

Fonctionnement

Le controller charge les avis par type et identifiant d'entité, applique les filtres puis retourne un rendu ou une réponse exploitable.

Maintenance des avis

Objectif : Nettoyer ou générer des données d'avis.

Des commandes facilitent le nettoyage des avis ou la création de volumes de test.

Fonctionnement

Les commandes manipulent les repositories d'avis pour supprimer les données ciblées ou insérer des fixtures de test.

Intégration Avis Garantis

Objectif : Brancher un fournisseur d'avis externe.

Une configuration dédiée et des providers permettent d'intégrer Avis Garantis dans le système multi-providers.

Fonctionnement

Le provider lit la configuration Avis Garantis, récupère ou transforme les avis puis les injecte dans le modèle générique FroggShop.

Consentement cookies

Objectif : Ajouter des cookies et groupes personnalisés.

Le bundle Privacy décore le provider de cookies Shopware et expose les cookies personnalisés au consent manager.

Fonctionnement

Le provider natif est décoré pour ajouter les cookies configurés avant affichage de la modale ou lecture des préférences.

Journalisation du consentement

Objectif : Tracer les choix de consentement utilisateur.

Une route POST enregistre les consentements, en identifiant client connecté ou visiteur anonyme.

Fonctionnement

Le controller reçoit l'état du consentement, ajoute les informations de contexte et écrit un log dédié pour audit ou diagnostic.

Impersonation support client

Objectif : Permettre au support de se connecter comme un client.

Le bundle CustomerService génère et vérifie des tokens temporaires pour ouvrir une session client contrôlée, avec événements d'audit.

Fonctionnement

Un endpoint génère un token via master token. Un second endpoint valide ce token, connecte le client cible et trace l'action.

Emails, OAuth et authentification

Les outils de connexion, d’association de compte et de maintenance des emails transactionnels. 9 fonctionnalités dans ce socle.

Import/export de mails

Objectif : Versionner et réimporter les templates d'emails.

MailUtils fournit des commandes de dump et injection de templates mails, headers et footers.

Fonctionnement

Les commandes lisent les templates depuis la base ou les fichiers, puis les exportent ou réinjectent selon l'opération demandée.

Preview et dump mails

Objectif : Faciliter les tests emails.

Des services et commandes activent le dump de mails, gèrent les chemins et facilitent la vérification des templates.

Fonctionnement

Le mode dump redirige ou stocke les emails générés pour permettre leur inspection sans envoi réel aux destinataires.

Logs mails

Objectif : Journaliser les emails envoyés.

Des subscribers capturent les transformations/envois mails pour faciliter le diagnostic.

Fonctionnement

Le subscriber écoute les événements mail, extrait sujet, destinataires et contexte, puis écrit les informations dans le canal de log dédié.

FroggOAuth / FroggAuth

Objectif : Ajouter l'authentification sociale à l'écosystème FroggShop.

Le plugin FroggOAuth gère la connexion OAuth dans Shopware, avec des services externes configurables comme Google et Apple. Il fait partie des plugins installés dans l'environnement de test FroggShop.

Fonctionnement

Chaque fournisseur OAuth dispose de sa configuration et d'un service dédié. Le controller OAuth orchestre la redirection, le retour fournisseur, l'association au client Shopware et la création des données OAuth rattachées au compte.

Connexion Google OAuth

Objectif : Permettre aux clients de se connecter avec leur compte Google.

FroggOAuth intègre Google via `google/apiclient`, avec configuration des identifiants, redirect URLs et utilisateurs de test pendant la phase de validation.

Fonctionnement

Le service Google OAuth valide le retour fournisseur, récupère l'identité externe, puis crée ou associe le client Shopware via l'entité de liaison OAuth.

Connexion Apple OAuth

Objectif : Permettre aux clients de se connecter avec leur identifiant Apple.

FroggOAuth intègre Apple avec gestion des clés publiques, validation des tokens et configuration dédiée par service.

Fonctionnement

Le service Apple récupère les clés Apple, vérifie le token d'identité, extrait les données utiles et les associe au compte Shopware comme les autres providers OAuth.

Association compte OAuth

Objectif : Lier durablement un compte externe à un client Shopware.

FroggOAuth ajoute une entité `customer_oauth_data` et une extension client pour conserver les associations entre comptes Shopware et identités OAuth externes.

Fonctionnement

Lors d'une connexion OAuth, le plugin recherche une association existante ou en crée une nouvelle. Des events permettent de personnaliser l'association et les traitements post-login.

Password placeholder OAuth

Objectif : Gérer les comptes créés via OAuth sans mot de passe classique.

FroggOAuth adapte le parcours d'inscription pour les clients OAuth et expose un événement dédié aux placeholders de mot de passe.

Fonctionnement

La route d'inscription Shopware est décorée afin d'autoriser ou compléter les informations requises pour un compte OAuth sans mot de passe saisi par l'utilisateur.

Extension Twig OAuth

Objectif : Faciliter l'intégration front des boutons de connexion sociale.

FroggOAuth expose des helpers Twig pour afficher les entrées OAuth dans les templates storefront.

Fonctionnement

Les templates utilisent l'extension Twig pour récupérer les providers actifs, construire les URLs de connexion et afficher les boutons adaptés au thème.

Paiement multi-PSP

Les solutions de paiement intégrées au checkout Shopware : carte, wallets, paiement fractionné, cartes cadeaux et principaux PSP du marché. 6 fonctionnalités dans ce socle.

Paiement carte Cawl

Objectif : Intégrer le paiement carte Cawl dans le checkout Shopware.

Le plugin Cawl ajoute une méthode de paiement avec widget sécurisé iframe, tokenisation, authentification 3DS, webhooks et logs avancés.

Fonctionnement

Au checkout, Cawl crée une session de tokenisation, affiche le widget carte, valide le token côté serveur, crée le paiement puis finalise la transaction selon le retour API ou webhook.

Paiement Monext

Objectif : Intégrer les paiements avancés via le widget Monext.

Intégration des fonctionnalités avancées de Monext : carte bancaire, Google Pay, Apple Pay et toutes les solutions offertes par le widget Monext.

Fonctionnement

Le widget Monext est embarqué dans le checkout et expose ses moyens de paiement ; le retour de transaction pilote la finalisation de la commande Shopware.

Paiement Mollie

Objectif : Intégrer le plugin de paiement Mollie.

Intégration du plugin officiel Mollie pour donner accès à ses méthodes de paiement : carte, virements, wallets et paiements locaux européens.

Fonctionnement

Le plugin Mollie est branché au checkout Shopware et délègue à Mollie le rendu des moyens de paiement et le suivi du statut de la transaction.

Paiement par carte cadeau

Objectif : Permettre le règlement par carte cadeau.

Les cartes cadeaux sont des moyens de paiement partiels : le solde restant est complété par carte ou tout autre mode de paiement disponible.

Fonctionnement

Le montant de la carte cadeau est déduit du panier ; le reliquat déclenche un second moyen de paiement pour finaliser la commande.

Paiement PayPal

Objectif : Intégrer le plugin officiel PayPal.

Le plugin officiel PayPal permet de payer en une ou plusieurs fois.

Fonctionnement

Le plugin PayPal officiel ajoute ses méthodes de paiement au checkout Shopware et gère le paiement comptant comme le paiement fractionné.

Paiement Stripe

Objectif : Intégrer le plugin de paiement officiel Stripe.

Le plugin de paiement officiel Stripe ajoute ses méthodes de paiement au checkout Shopware.

Fonctionnement

Le plugin Stripe officiel est branché au checkout et délègue à Stripe l'encaissement, le 3DS et le suivi du statut de paiement.

CLI, OPS, sécurité et performance

Les briques d’exploitation, de sécurité, de monitoring et d’optimisation média/cache. 8 fonctionnalités dans ce socle.

Cache HTTP et ESI

Objectif : Optimiser les performances storefront.

Le bundle Cache gère les tags, invalidations, rendu ESI et commandes de purge HTTP par URL ou tag. Il permet d'accélérer les pages tout en gardant une invalidation fine.

Fonctionnement

Les responses reçoivent des tags de cache. Les fragments ESI isolent les zones dynamiques, et les commandes ou subscribers invalident uniquement les contenus impactés.

Cache des flashbags

Objectif : Rendre certaines routes cachables sans perdre les messages utilisateur.

Une politique spécifique évite que les flashbags Shopware ne cassent le comportement utilisateur sur des routes avec cache HTTP.

Fonctionnement

Un subscriber et une policy identifient les routes compatibles, préservent les messages utilisateur et limitent les effets de bord du cache sur la session.

Critical Path commandes

Objectif : Piloter les transitions critiques d'états de commande.

Le bundle Order configure des chemins d'états prioritaires et fournit des commandes de test et validation.

Fonctionnement

La configuration de state machine décrit les transitions attendues. Les commandes simulent ou vérifient que les chemins critiques restent applicables.

Domaine admin dédié

Objectif : Sécuriser l'accès administration via sous-domaine.

Le bundle Security documente et configure l'accès à l'administration via domaine dédié.

Fonctionnement

La configuration d'infrastructure et d'environnement isole l'admin sur un host spécifique, ce qui facilite filtrage, routage et durcissement.

Sécurité mot de passe et login

Objectif : Renforcer ou adapter le login client.

Une décoration de LoginRoute et des configs de password security permettent d'appliquer des règles spécifiques.

Fonctionnement

La route de login Shopware est décorée pour exécuter des contrôles supplémentaires avant ou après l'authentification standard.

Healthcheck applicatif

Objectif : Exposer l'état opérationnel de la plateforme.

Le bundle Monitoring expose `/health` et agrège des probes DB, Redis, OpenSearch, disque, environnement, URLs et intégrations externes.

Fonctionnement

Le controller appelle un service de probes, exécute chaque contrôle activé et retourne un statut global détaillé pour supervision.

Optimisation WebP

Objectif : Générer et supprimer des médias WebP.

MediaOps crée des WebP à l'ajout ou sur demande, les stocke dans une entité dédiée et traite les opérations en asynchrone.

Fonctionnement

Des commandes, subscribers ou messages détectent les médias éligibles, génèrent les variantes WebP et enregistrent le lien avec les thumbnails.

Diffusion CDN

Objectif : Servir et purger les médias via CDN.

MediaOps configure les URLs CDN, purge les caches à la mise à jour/suppression et expose des commandes d'exploitation.

Fonctionnement

Les URLs média sont adaptées selon la configuration CDN. Les purges sont déclenchées par commande ou événement de modification/suppression.

Roadmap FroggShop

Les prochaines briques visent à renforcer l’automatisation commerce, le SEO catalogue et l’intégration de référentiels externes.

Agentic commerce avancéAssistants et automatisations commerce pour aider les équipes à analyser, enrichir et piloter le catalogue.
Pages catalogues par groupement de produitsCréer des pages commerciales indexables à partir de regroupements produits pilotés métier.
Permaliens SEO automatiquesGénérer automatiquement des URLs SEO propres pour les combinaisons catalogue pertinentes.
Guide des tailles externaliséBrancher un référentiel externe de tailles et l’exposer dans les fiches produits et parcours d’achat.
Ranking produit par source externaliséePiloter l’ordre produit depuis une source métier externe : marge, stock, scoring, saisonnalité ou priorités commerciales.