Comment générer des codes QR suisses en utilisant Aspose.BarCode pour .NET

Comment générer des codes QR suisses en utilisant Aspose.BarCode pour .NET

Cet article explique comment gérer des codes QR suisses (QR-bill) avec Aspose.BarCode pour .NET en C#. Le code QR Suisse est obligatoire pour les factures et les paiements numériques en Suède, selon les règles de layout et de données strictes définies par SIX Interbank Clearing.

Problème du monde réel

Les entreprises suisses doivent inclure un code QR standardisé (QR-bill) sur les factures pour automatiser les paiements et répondre aux exigences légales.

Vue de la solution

Aspose.BarCode pour .NET fournit un encodage SwissQR spécialisé pour créer des codes QR-bill selon les normes suisses, y compris les délimitateurs de champ et la correction d’erreur, prêts pour les flux de travail bancaire et de facturation.

Principaux

Avant de commencer, assurez-vous que vous avez :

  • Visual Studio 2019 ou ultérieur
  • .NET 6.0 ou ultérieur (ou .Net Framework 4.6.2+)
  • Aspose.BarCode pour .NET installé via NuGet
  • Les connaissances de base de C#
PM> Install-Package Aspose.BarCode

La mise en œuvre étape par étape

Étape 1 : Installer et Importer Aspose.BarCode

Installez le paquet NuGet et importez les espaces de nom requis :

using Aspose.BarCode.Generation;

Étape 2 : Créer le générateur de code QR suisse

Préparez les données du code QR suisse par format QR-bill. Exemple:

string swissQrData = "SPC\n0200\n1\nCH9300762011623852957\nS\nRobert Schneider AG\nRue du Lac 1268\n2501\nBiel\nCH\n\n\n3949.75\nCHF\nHans Muster\nBahnhofstrasse 1\n8001\nZurich\nCH\nQRR\n210000000003139471430009017\nInvoice 2025\nEPD";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.SwissQR, swissQrData);

Étape 3 : personnaliser la configuration QR Suisse et les paramètres

Mettez le niveau et la couleur de l’ECC pour la conformité :

generator.Parameters.Barcode.QR.QrErrorLevel = QRErrorLevel.LevelM;
generator.Parameters.Barcode.XDimension.Pixels = 6;
generator.Parameters.Barcode.BarColor = Color.Black;
generator.Parameters.Barcode.BackColor = Color.White;

Étape 4 : Gérer et sauvegarder le code QR Suisse

Exportation à PNG ou autres formats soutenus :

generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);

Étape 5 : Exemple complet

using Aspose.BarCode.Generation;
using System.Drawing; // Required for Color

class Program
{
    static void Main()
    {
        string swissQrData = "SPC\n0200\n1\nCH9300762011623852957\nS\nRobert Schneider AG\nRue du Lac 1268\n2501\nBiel\nCH\n\n\n3949.75\nCHF\nHans Muster\nBahnhofstrasse 1\n8001\nZurich\nCH\nQRR\n210000000003139471430009017\nInvoice 2025\nEPD";
        BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.SwissQR, swissQrData);
        generator.Parameters.Barcode.QR.QrErrorLevel = QRErrorLevel.LevelM;
        generator.Parameters.Barcode.XDimension.Pixels = 6;
        generator.Parameters.Barcode.BarColor = Color.Black;
        generator.Parameters.Barcode.BackColor = Color.White;
        generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
        // Validate QR-bill with Swiss banking app
    }
} 

Utiliser les cas et les applications

  • **Les factures suisses et la facturation:**QR-Bill légalement requis pour les fichiers électroniques et papier
  • Banque/Payments: Enregistrement immédiat de données pour les institutions financières suisses
  • Audits de conformité: Gérer et enregistrer les données QR-bill pour les vérifications réglementaires

Défis communs et solutions

**Défi 1 : Le paiement rejeté par la banque ?**La solution : Valider la structure de données QR et les longueurs de champ, suivre strictement le format QR-bill SIX.

**Challenge 2: QR ne peut pas être lu par les applications?**La solution : Utilisez la correction d’erreur de niveau M, assurez le DPI correct, la taille de l’impression et le contraste.

**Défi 3 : Mappage des données pour les factures ?**La solution : Génération automatique de fil de données QR-bill des champs de facture.

Considérations de performance

  • Les codes QR suisses pour les factures
  • Utilisez les flux de mémoire pour l’intégration avec des ERP ou des plateformes bancaires
  • Test avec toutes les principales applications bancaires suisses

Migliori pratiche

  • Valider tous les codes QR de sortie en utilisant les validateurs officiels QR-bill
  • Utilisez les données de facturation d’échantillons pour les tests prématurés, puis automatisez pour la production
  • Exportation à 300 DPI pour les factures imprimées
  • Inscrivez tous les données QR-Bill pour l’audit et la conformité

Scénarios avancés

Batch génère des codes QR suisses pour plusieurs factures

foreach (var invoice in invoices)
{
    BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
    g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}

Apparition de code QR personnalisé

generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;

Conclusion

Avec Aspose.BarCode pour .NET, vous pouvez créer des codes de billet QR suisses pour les factures et les paiements numériques, complètement conformes aux exigences bancaires en Suisse. Aspose.BarCode API de référence .

 Français