Versions et notes de version

Vous trouverez ici les changements les plus importants des versions actuelles et à venir de FactoorSharp.

Version 20.0.0

Actuelle

La version 20.0 est une version majeure : elle rend les décimales configurables, ajoute des numéros de série et des lots par ligne, restitue les factures en allemand, en anglais et en français et nettoie l’API. Certaines modifications touchent le code existant ; elles sont signalées ci-dessous par « Changement incompatible » et accompagnées chacune d’un exemple de migration.

Les nouveautés en détail :

  • Le taux de TVA par ligne devient facultatif (BT-152) Changement incompatible Essentiel
    La propriété TradeLineItem.TaxPercent est désormais de type decimal?. Si la facture n’indique aucun taux, elle renvoie null au lieu de 0, et l’élément est omis à l’écriture – ce qui est obligatoire pour la catégorie de TVA O (hors champ). À la lecture, ?? 0m suffit pour conserver le comportement précédent. Dans AddTradeLineItem(), taxPercent vaut désormais null par défaut : les lignes à 0 % de TVA (par exemple les catégories E, AE et Z) doivent indiquer le taux explicitement avec 0m.
  • L’enregistrement en PDF renvoie un résultat et produit du PDF/A-3B Changement incompatible PDF
    SaveToPdf() et SaveToPdfAsync() renvoient désormais un PdfSaveResult qui énumère ce qui a été réparé dans le PDF source ou est resté en suspens. Le PDF généré se déclare en PDF/A-3B au lieu de PDF/A-3A. Le code source se compile sans modification ; les applications déjà compilées doivent toutefois être recompilées, car la signature a changé. Toutes les surcharges acceptent en outre un paramètre facultatif InvoiceFormatOptions, qui s’applique aussi au XML intégré. Pour plus de détails, consultez la documentation « Travailler avec des fichiers PDF ».
  • Fonctions obsolètes supprimées Changement incompatible Essentiel
    Les fonctions précédemment marquées [Obsolete] ont été supprimées. L’exemple montre chaque fois le remplacement ; la migration est un simple renommage, sans changement de résultat. Les classes InvoiceValidator et ValidationResult du paquet principal sont également supprimées – la validation est disponible dans le paquet FactoorSharp.FacturX.Validator.
  • Décimales configurables Essentiel
    Les prix, quantités, pourcentages et taux de change peuvent désormais être écrits avec davantage de décimales – séparément pour chaque type de données. Les montants restent à deux décimales ; seuls les montants de ligne disposent d’une option explicite, non conforme à la norme EN 16931. Sans options, la sortie ne change pas. Tous les détails dans la documentation « Configuration ».
  • Numéros de série et lots par ligne (BG-X-84) Essentiel
    Les appareils livrés individuellement peuvent être indiqués sur la ligne de facture avec leur numéro de série (BT-X-307) et leur numéro de lot (BT-X-306), par exemple une entrée par machine. Les données sont conservées à la lecture (profil EXTENDED, ZUGFeRD 2.4 et 2.5). Voir « Numéros de série et lots ».
  • Les PDF sources sont nettoyés pour PDF/A PDF
    Les PDF sources issus de générateurs de rapports contiennent souvent des violations PDF/A qui étaient auparavant reprises telles quelles. FactoorSharp définit désormais les indicateurs d’annotation manquants (règle 6.3.2), intègre les polices manquantes et répare l’encodage des polices TrueType symboliques, comme en produisent les générateurs de codes-barres (règle 6.2.11.6). Chaque réparation apparaît dans le PdfSaveResult.
  • Rendu des factures en allemand, en anglais et en français Visualisation
    La sortie PDF et HTML peut être produite en allemand, en anglais ou en français via la Culture des options de rendu. Les libellés, les titres de document, les unités ainsi que les formats des nombres et des dates suivent la langue choisie. Sans indication, la sortie reste en allemand. Voir « Représentation visuelle des factures ».
  • Davantage d’informations dans le rendu de la facture Visualisation
    Le rendu affiche désormais l’avis d’expédition (BT-16), la référence de l’acheteur et les textes libres de la ligne, présente les références de documents (BT-17, BT-18, BT-122, BT-128) sous une forme lisible et choisit un titre de document adapté à chaque type de facture. Les prix, quantités et pourcentages s’affichent avec toutes leurs décimales significatives, afin que le rendu ne diffère pas du XML intégré.
  • Rapport de validation dans votre langue Validation
    Pour la validation étendue via le service en ligne, vous pouvez définir la langue du rapport de validation : allemand, anglais ou français. Sans indication, il reste en allemand ; pour la validation purement locale, ce paramètre est sans effet. Les réponses d’erreur du service sont en outre traduites de manière plus fiable en exceptions compréhensibles.
  • Les données facultatives manquantes restent vides Essentiel
    Les codes facultatifs absents d’une facture étaient auparavant remplacés par une valeur par défaut à la lecture, puis réécrits lors d’un nouvel enregistrement – par exemple le type de compte (BT-X-290), la devise fiscale (BT-6) ou les motifs de remises et de majorations. Ils restent désormais vides (null). Veuillez noter : le code qui s’appuyait sur les anciennes valeurs par défaut doit tester null.
  • Autres corrections Essentiel
    Le format 616 (semaine civile, CCYYWW) rejette les semaines que l’année ne contient pas. Le code de sujet AAG pour les instructions de la partie a également été ajouté.

Version 19.1.1

La version 19.1.1 corrige plusieurs erreurs dans l'écriture des factures ZUGFeRD 2.0/2.5 et UBL et étend la validation des factures espagnoles et italiennes.

Les nouveautés en détail :

  • Montant total de ligne correctement calculé pour ZUGFeRD 2.5 (BT-131) Essentiel
    Lorsque le montant total de ligne n'était pas défini explicitement, ZUGFeRD 2.5 écrivait 0 au lieu de le calculer à partir du prix unitaire et de la quantité, contrairement à 2.0, 2.4 et UBL. Les factures avec un montant défini explicitement ont toujours été correctes.
  • TVA en devise de comptabilisation désormais correcte aussi en UBL (BT-111, BT-6) Essentiel
    Le montant de TVA en devise de comptabilisation n'était jamais écrit en UBL et n'était pas reconnu de manière fiable à la lecture. Les deux fonctionnent désormais correctement, y compris pour XRechnung au format UBL.
  • Plus de motifs d'exonération non autorisés dans la ventilation de TVA (BT-120, BT-121) Essentiel
    La norme EN 16931 interdit un motif d'exonération dans la ventilation de TVA pour les catégories taux normal, taux zéro, IGIC et IPSI. Jusqu'à présent, seule la catégorie taux zéro était respectée, et pas du tout en UBL.
  • ZUGFeRD 2.0 rattrapé sur l'adresse électronique et l'exonération de ligne (BT-34, BT-49, BT-X-96, BT-X-97) Essentiel
    L'adresse électronique n'était écrite pour aucune partie en ZUGFeRD 2.0, et le motif d'exonération au niveau de la ligne manquait également. Les deux sont désormais écrits et lus, comme en 2.4 et 2.5.
  • Espagne : contrôle des calculs et mode FACe pour Facturae Validation
    La validation locale contrôle désormais les factures Facturae quant à l'exactitude des totaux de ligne, de lot et de facture, à la clé de contrôle du NIF et à la politique de signature. La nouvelle option CheckFACeRequirements permet en plus de contrôler les exigences de réception plus strictes du point d'entrée FACe de l'administration espagnole.
  • Italie : schéma FatturaPA mis à jour Validation
    Le schéma de la « fattura ordinaria » a été mis à jour vers la version 1.2.3 ; la facture simplifiée « fattura semplificata » est désormais également validée.
  • Plantage après une mise à jour de QuestPDF corrigé Visualisation
    Après une mise à jour de QuestPDF, d'anciennes bibliothèques natives restées dans le répertoire de build pouvaient provoquer un plantage lors du rendu. Elles sont désormais supprimées automatiquement.

Version 19.1.0

La version 19.1.0 affiche les factures au format HTML, prend en charge les acomptes et la TVA en devise étrangère, extrait le texte des PDF avec sa position et détecte le format de facture de manière encore plus fiable.

Les nouveautés en détail :

  • Afficher les factures en HTML Visualisation
    Les factures peuvent désormais être affichées en HTML en plus du PDF – sous forme de page autonome ou de module à intégrer directement dans votre application web ou de bureau. Le bon de livraison, la référence de commande et les caractéristiques des produits apparaissent également.
  • Détailler les acomptes (BG-X-45) Essentiel
    Les acomptes déjà reçus peuvent être listés individuellement dans le profil EXTENDED – avec montant, date de paiement, TVA incluse et référence à la facture d'acompte correspondante.
  • TVA en devise étrangère avec taux de change (BG-X-41) Essentiel
    Pour les factures en devise étrangère, vous indiquez désormais en une seule étape la devise de comptabilisation de la TVA (BT-6), le montant de TVA dans cette devise (BT-111) et le taux de change – comme l'exige la norme EN 16931.
  • Adresse électronique pour toutes les parties (BT-34, BT-49, BT-X-160) Essentiel
    Outre le vendeur et l'acheteur, le destinataire de la livraison et les autres parties peuvent désormais recevoir une adresse électronique, par exemple une adresse e-mail. Ces informations sont intégralement conservées lors de la lecture.
  • Extraire le texte des PDF avec sa position PDF
    Vous pouvez désormais extraire du contenu visible d'un PDF des fragments de texte avec leur page, leur position et leur taille de police, par exemple pour reprendre une valeur d'une colonne précise d'un tableau. L'extraction de texte classique restitue en outre bien plus fidèlement la mise en page.
  • Plus d'informations sur les lignes de facture (BT-158-1, BT-X-98) Essentiel
    Les articles peuvent désormais être classés selon tous les systèmes de classification de la norme EN 16931, par exemple UNSPSC ou eCl@ss. Dans le profil EXTENDED, vous pouvez également indiquer le total des remises et charges par ligne.
  • Détection plus fiable du format de facture Essentiel
    Le type de fichier – facture ZUGFeRD/Factur-X ou UBL – est désormais identifié sans ambiguïté à partir de la structure du document. Les factures d'expéditeurs qui n'indiquent aucun identifiant de spécification (BT-24) ou un identifiant encore inconnu peuvent ainsi être lues également.
  • Règles de validation XRechnung 2.6.0 à jour Validation
    La validation locale utilise désormais les règles KoSIT 2.6.0 actuelles pour XRechnung 3.0.2. Attention : une violation de la règle BR-TMP-2 est désormais signalée comme une erreur et non plus comme un avertissement. Par ailleurs, les factures dont le XML est intégré au PDF sans compression sont validées, et les pièces jointes illisibles apparaissent sous forme de constat de validation explicite.
  • Contrôle plus approfondi des montants et totaux Validation
    Le contrôle de facture intégré vérifie désormais bien plus précisément les montants de ligne, les remises et charges, les montants de TVA et le montant à payer selon les règles de la norme EN 16931 – y compris les acomptes, les arrondis et les quantités de base du prix (BT-149).
  • Corrections pour des factures valides Essentiel
    Plusieurs erreurs pouvant conduire à des factures invalides ou incomplètes ont été corrigées : aucun motif d'exonération n'est plus écrit pour les opérations à taux zéro (catégorie Z) (BR-Z-10), les factures MINIMUM ne contiennent plus d'adresse électronique non autorisée, les IBAN vides sont omis, les prix UBL conservent toutes leurs décimales et la référence à l'avis de réception (BT-15) est correctement lue et écrite en UBL.

Version 19.0

La version 19.0 introduit une validation de factures locale et gratuite, améliore le traitement des informations de prix XRechnung et des pièces jointes PDF, et renforce FactoorSharp contre les documents malveillants.

Points forts

  • Validation de factures locale et gratuite, sans connexion Internet
  • Prise en charge de ZUGFeRD 2.5.2
  • Prix plus précis dans les factures XRechnung et pièces jointes PDF plus fiables
  • Plus de flexibilité pour les formats internationaux et référence aux bons de réception
  • Meilleure protection lors de la lecture de documents préparés de manière malveillante

Version 18.5

La version 18.5 introduit la prise en charge des périodes de facturation, améliore le traitement des conditions de paiement et corrige plusieurs bugs liés à ZUGFeRD 2.0 et 2.5.

Points forts

  • Prise en charge des périodes de facturation, par exemple pour les factures d'abonnement ou de location, lors de la lecture et de l'écriture de factures Factur‑X/ZUGFeRD
  • Traitement cohérent des conditions de paiement structurées (escompte, échéances) entre les versions ZUGFeRD 2.0 et 2.4
  • Corrections de bugs sur les données de livraison, de paiement et bancaires pour ZUGFeRD 2.0
  • Mise à jour de Valitool vers la version 3.26.5 pour des résultats de validation plus actuels et plus précis

Version 18.4

La version 18.4 introduit un nouveau composant de visualisation et corrige plusieurs bugs liés à ZUGFeRD 2.5.

Points forts

  • Nouveau composant FactoorSharp.Visualization pour générer des rapports PDF à partir de données ZUGFeRD
  • Alerte par e-mail en cas de quota de validation faible
  • Corrections de bugs pour ZUGFeRD 2.5 / Factur-X

Version 18.3

La version 18.3 prend en charge ZUGFeRD 2.5 et étend la validation aux factures italiennes et espagnoles.

Points forts

  • Prise en charge de ZUGFeRD 2.5 / Factur-X pour la création, la lecture et la validation
  • Traitement performant des factures comportant un très grand nombre de positions (> 1 000)
  • Retour de résultats de validation détaillés
  • Lecture renforcée des fichiers XML contre les contenus corrompus ou manipulés
  • Validation des factures italiennes (FatturaPA) et espagnoles (Facturae)

Version 18.2

La version 18.2 développe encore le traitement des PDF et améliore la gestion des quotas de validation.

Points forts

  • Extraction de pages PDF : extraction ciblée de pages individuelles ou de plages de pages en documents PDF autonomes
  • Retour du quota de validation restant directement dans l'objet résultat de chaque demande de validation
  • Requête dédiée via l'API pour interroger le quota de validation restant – idéal pour les scénarios de supervision et de monitoring

Version 18.1

La version 18.1 développe encore le traitement des PDF dans FactoorSharp et étend la prise en charge de la signature à toutes les plateformes cibles .NET.

Points forts

  • Nouvelles fonctions utilitaires pour l'analyse, la préparation et le traitement ultérieur des PDF de factures
  • Signature de PDF pour toutes les versions .NET prises en charge
  • Prise en charge de SellerOrderReferencedDocument au niveau des positions
  • Corrections de bugs, notamment une gestion plus propre des UBL Party Names et Legal Entity Names

Version 18.0

La version 18.0 est la première version publiée de FactoorSharp. Elle constitue la base stable pour travailler avec ZUGFeRD, Factur‑X et XRechnung dans des applications .NET modernes.

Points forts

  • Base actuelle pour la création, l'import et le traitement des factures électroniques
  • Prise en charge complète de ZUGFeRD 2.4/ Factur-X 1.08. En particulier : gestion des sous-positions, quantités par unité d'emballage
  • Prise en charge des fonctionnalités existantes de FactoorSharp pour XML, PDF et validation
  • Version de base stable pour les prochaines extensions dans le domaine du PDF