← Tous les modules
Documentation Blog Accédez à vos licences Contact
codingrow.com — Human thought, digital logic. Le plugin Magento pour la facturation électronique italienne

Facturation B2B italienne, bien faite

Numéro de TVA (Partita IVA), code destinataire SDI, e-mail certifié PEC et code fiscal (Codice Fiscale) — dans le carnet d'adresses et au paiement, avec des validations correctes et une synchronisation automatique sur la commande. Gère aussi bien les clients professionnels (numéro de TVA, SDI/PEC) que les particuliers (code fiscal), dans un seul module.

€99,00 + TVA
Total indicatif, TVA italienne incluse : €120,78 — le montant exact est calculé au moment du paiement et est supprimé pour les acheteurs professionnels de l'UE disposant d'un numéro de TVA valide (autoliquidation).
paiement unique · un domaine · licence perpétuelle, 1 an de mises à jour et support
Gratuit paiement unique · un domaine · licence perpétuelle, 1 an de mises à jour et support

Ce site est protégé par reCAPTCHA ; la politique de confidentialité et les conditions d'utilisation de Google s'appliquent.

✓ Licence active immédiatement après le paiement, reçue par e-mail

✓ Installation immédiate via Composer

✓ Premier changement de domaine inclus et immédiat (pratique pour passer de la préproduction à la production)

✓ Garantie satisfait ou remboursé : 30 jours

Ce qui est inclus

Le module en action

Touchez pour agrandir


Prérequis

Magento 2.4.x (testé sur 2.4.9) · PHP 8.1 - 8.5 (testé sur PHP 8.5) · Thème Luma par défaut, ou thème Hyvä (facultatif — s'il est présent, une interface de carnet d'adresses optimisée est utilisée, testée en particulier sur ce thème)

Installation

  1. Recevez vos identifiants — après l'achat, vous recevez immédiatement par e-mail la clé de licence et les identifiants d'accès au dépôt Composer privé.
  2. Configurez l'accès au dépôt dans le fichier auth.json à la racine du projet Magento :
    { "http-basic": { "repo.codingrow.com": { "username": "votre-nom-utilisateur", "password": "votre-mot-de-passe" } } }
  3. Ajoutez le dépôt au composer.json du projet :
    composer config repositories.codingrow composer https://repo.codingrow.com
  4. Installez le module :
    composer require codingrow/module-b2bfatturazione
  5. Activez-le et lancez la mise à jour :
    bin/magento module:enable Codingrow_B2bFatturazione bin/magento setup:upgrade bin/magento setup:di:compile bin/magento cache:flush
  6. Activez la licence dans Admin > Store > Configuration > Codingrow > B2bFatturazione, en collant la clé reçue par e-mail dans le champ « License Key ». Enregistrez puis exécutez bin/magento cache:flush.

Personnaliser les champs dans les adresses, e-mails et PDF

Les données collectées (numéro de TVA, code destinataire SDI, PEC, code fiscal, Facture demandée) sont des champs d'adresse standard, ils s'intègrent donc dans le système Address Templates de Magento : Admin > Stores > Settings > Configuration > Customers > Customer Configuration > Address Templates. Magento y définit 4 formats — Text, Text One Line, HTML, PDF — utilisés respectivement dans le carnet d'adresses, les commandes, les e-mails et exports, et dans les documents PDF (factures, bons de livraison).

Si vous avez déjà un modèle personnalisé (pas celui par défaut) : ne l'écrasez pas, ajoutez seulement les lignes ci-dessous à votre modèle existant, pour ne pas perdre les personnalisations déjà faites. Décochez « Use system value » uniquement sur le format que vous voulez modifier.

Exemple, format HTML (utilisé aussi dans les modèles d'e-mail, Admin > Marketing > Email Templates, même syntaxe) :

{{depend prefix}}{{var prefix}} {{/depend}}{{var firstname}} {{depend middlename}}{{var middlename}} {{/depend}}{{var lastname}}{{depend suffix}} {{var suffix}}{{/depend}}{{depend firstname}}<br />{{/depend}}
{{depend company}}{{var company}}<br />{{/depend}}
{{if street1}}{{var street1}}<br />{{/if}}
{{depend street2}}{{var street2}}<br />{{/depend}}
{{depend street3}}{{var street3}}<br />{{/depend}}
{{depend street4}}{{var street4}}<br />{{/depend}}
{{if city}}{{var city}}, {{/if}}{{if region}}{{var region}}, {{/if}}{{if postcode}}{{var postcode}}{{/if}}<br />
{{var country}}<br />
{{depend telephone}}T: <a href="tel:{{var telephone}}">{{var telephone}}</a>{{/depend}}
{{depend fax}}<br />F: {{var fax}}{{/depend}}<br />
{{depend vat_id}}TVA : {{var vat_id}}{{/depend}}<br />
{{depend sdi}}SDI : {{var sdi}}{{/depend}}<br />
{{depend pec}}PEC : {{var pec}}{{/depend}}<br />
{{depend codice_fiscale}}Code fiscal : {{var codice_fiscale}}{{/depend}}<br />
{{depend fattura_richiesta}}Facture demandée : Oui{{/depend}}<br />

Exemple, format PDF (même logique, le séparateur de ligne est | au lieu de <br />) :

Ce sont des modèles d'exemple, à adapter à la mise en page que vous préférez (ou à fusionner avec le vôtre, s'il est déjà personnalisé) — ne les collez pas à l'aveugle si vous avez d'autres modifications en cours.

Désinstallation

  1. Désactivez, désinstallez et retirez du composer.json :
    bin/magento module:uninstall Codingrow_B2bFatturazione
    Cette commande désactive le module, exécute automatiquement composer remove codingrow/module-b2bfatturazione et lance setup:upgrade. Si vous préférez le faire manuellement, étape par étape :
    bin/magento module:disable Codingrow_B2bFatturazione composer remove codingrow/module-b2bfatturazione bin/magento setup:upgrade
  2. Remarque sur les données : les champs enregistrés (numéro de TVA, SDI, PEC, code fiscal, type de compte) restent dans la base de données du carnet d'adresses et des commandes même après la désinstallation — ils ne sont pas supprimés automatiquement, pour ne pas perdre les données historiques. Si vous voulez les supprimer entièrement, une intervention manuelle sur la base de données est nécessaire.

Garantie satisfait ou remboursé

Vous avez 30 jours à compter de l'achat pour demander un remboursement complet, sans avoir à justifier le motif : il suffit d'accéder à votre espace personnel (codingrow.com/login) et de cliquer sur « Demander un remboursement ». Le remboursement est traité immédiatement, automatiquement. À la confirmation du remboursement, la licence est désactivée.

Historique des mises à jour

Version actuelle : v1.3.6 — publiée le 15 août 2026

Le module a été développé et affiné à travers une bêta fermée à partir de juin 2026, avant la publication publique.

v1.3.615 août 2026

Accepte désormais la clé de licence One-for-All par abonnement : un seul abonnement Codingrow active ce module avec tous les autres.

v1.3.1 – v1.3.54–5 août 2026

Une série de corrections de précision par-dessus le nouveau support GraphQL : les champs s'affichent désormais correctement aussi sur l'adresse de livraison, sur une adresse sélectionnée dans le carnet d'adresses du client, et lors de la réutilisation de l'adresse de facturation pour la livraison. Ils sont désormais également exposés sur le carnet d'adresses du client lui-même (pas seulement sur le panier), corrigeant un cas où ils pouvaient apparaître vides à cet endroit alors qu'ils étaient correctement enregistrés. Enfin, les champs B2B sont désormais affichés dans les résumés d'adresse client de l'admin, où ils manquaient auparavant.

v1.3.03 août 2026

Ajout du support complet de GraphQL : les champs B2B (numéro de TVA, code SDI, PEC, type de client, facture demandée, code fiscal) sont désormais disponibles sur les adresses du panier via GraphQL — nécessaire pour tout checkout basé sur GraphQL (par ex. React Checkout de Hyvä).

v1.2.2 – v1.2.323 juillet 2026

Petites retouches visuelles sur la page de configuration dans Stores > Configuration : ajout d'un en-tête affichant le numéro de version du module, suppression d'une ligne de séparation superflue.

v1.2.16 juillet 2026

Correction sur le thème Luma : dans certaines configurations, la page « Modifier l'adresse » renvoyait une erreur. Corrigé et vérifié avec des tests de bout en bout réels.

v1.2.06 juillet 2026

Ajout du support du thème Luma par défaut (auparavant le thème Hyvä était obligatoire) : le module détecte désormais le thème actif et utilise l'interface de carnet d'adresses appropriée dans les deux cas.

v1.1.06 juillet 2026

Vérification en ligne de la révocation de licence (avec cache de 24h et fonctionnement hors ligne garanti en cas d'absence de réponse du serveur), en soutien à la garantie satisfait ou remboursé.

v1.0.06 juillet 2026

Première publication publique. Gestion complète du numéro de TVA (Italie et UE), du code destinataire SDI, de la PEC et du code fiscal, avec case à cocher « Facture demandée » disponible aussi bien pour les particuliers que pour les entreprises. Validation du format et obligation croisée, synchronisation automatique panier → commande, compatibilité avec le checkout Hyvä (Luma). Système de licence par domaine.

v0.4.0-beta29 juin 2026

Correction : les données B2B (numéro de TVA, SDI, PEC, code fiscal) pouvaient se perdre lors du passage du panier à la commande et au carnet d'adresses client. Validations étendues également côté serveur, pour rester valides même lorsqu'une adresse est modifiée depuis l'admin.

v0.3.0-beta22 juin 2026

Correction : depuis l'admin, il était possible d'activer « Facture demandée » pour un particulier sans code fiscal. Obligation croisée de SDI/PEC corrigée, différenciée entre entreprises italiennes, entreprises étrangères et particuliers.

v0.2.0-beta15 juin 2026

Correction : le type de client (particulier/entreprise) dans l'admin était un champ de texte libre au lieu d'un menu contraint, ce qui pouvait entraîner des valeurs incohérentes.

v0.1.0-beta8 juin 2026

Lancement de la bêta fermée : gestion de base du numéro de TVA et du code fiscal dans le carnet d'adresses et au paiement.

Tests et fiabilité

Avant la publication publique, le module a été mis à l'épreuve sur toutes les combinaisons pertinentes de type de client, d'adresse et de facturation. Quelques-uns des cas traités et résolus :

Questions fréquentes

Quels champs ajoute-t-il au paiement ?
Champs de facturation électronique italienne — n° de TVA, code fiscal, code SDI et PEC — avec logique particulier/entreprise.
Valide-t-il les données ?
Oui, il valide TVA, code fiscal, SDI et PEC et ne demande que ce dont ce type de client a besoin.
Est-il compatible avec Hyvä et Luma ?
Oui, il fonctionne avec Hyvä et Luma.