Wie man Schweizer QR-Codes mit Aspose.BarCode für .NET generiert

Wie man Schweizer QR-Codes mit Aspose.BarCode für .NET generiert

In diesem Artikel wird erläutert, wie Swiss QR-Codes (QR-Bill) mit Aspose.BarCode für .NET in C# erzeugt werden können.Der Schweizer QR Code ist für digitale Rechnungen und Zahlungen in der Schweiz obligatorisch, nach strengem Layout und Datenvorschriften, die von SIX Interbank Clearing definiert werden.

Real-Weltproblem

Schweizer Unternehmen müssen einen standardisierten QR-Code (QR-Bill) auf Rechnungen enthalten, um Zahlungen zu automatisieren und rechtliche Anforderungen zu erfüllen.

Überblick der Lösung

Aspose.BarCode für .NET bietet einen speziellen SwissQR-Coder zur Erstellung von QR-Bill-Koden nach Schweizer Standards, einschließlich Felddelimitern und Fehlerkorrektur, bereit für Bank- und Rechnungsarbeitströme.

Voraussetzung

Bevor Sie beginnen, stellen Sie sicher, dass Sie:

  • Visual Studio 2019 oder später
  • .NET 6.0 oder höher (oder .Net Framework 4.6.2+)
  • Aspose.BarCode für .NET über NuGet installiert
  • Grundkenntnisse von C#
PM> Install-Package Aspose.BarCode

Schritt für Schritt Implementierung

Schritt 1: Installation und Import Aspose.BarCode

Installieren Sie das NuGet-Paket und importieren Sie die erforderlichen Namenräume:

using Aspose.BarCode.Generation;

Schritt 2: Erstellen des Schweizer QR-Code Generators

Bereiten Sie die QR-Code-Daten nach QR Bill-Format vor. Beispiel:

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);

Schritt 3: Customize Swiss QR Layout und Einstellungen

ECC-Niveau und Farbe für die Einhaltung festlegen:

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;

Schritt 4: Erzeugen und speichern Sie den Schweizer QR-Code

Export in PNG oder andere unterstützte Formate:

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

Schritt 5: Vollständiges Beispiel

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
    }
} 

Verwendung von Fällen und Anwendungen

  • **Schweizer Rechnungen und Rechnung: ** Gesetzlich erforderliche QR-Rechnung für elektronische und Papierrechnungen
  • Banking/Payments: Instant Data Entry für Schweizer Finanzinstitute
  • Compliance Audits: Erzeugen und registrieren QR-Bill-Daten für regulatorische Überprüfungen

Gemeinsame Herausforderungen und Lösungen

Herausforderung 1: Zahlungen, die von der Bank abgelehnt werden?Die Lösung : Validieren Sie die QR-Datenstruktur und die Feldlänge, folgen Sie dem SIX-QR-Bill-Format strikt.

Herausforderung 2: QR kann nicht durch Apps gelesen werden.Die Lösung : Verwenden Sie Level M Fehlerkorrektur, sorgen Sie für die richtige DPI, Druckgröße und Kontrast.

**Herausforderung 3: Datenmapping für Rechnungen?**Die Lösung : Automatische QR-Bill-Datenstring-Generation aus Rechnungsfeldern.

Performance Beachtung

  • Batch-generierte Schweizer QR-Codes für Rechnungen
  • Verwenden Sie Speicherströme zur Integration mit ERP oder Bankplattformen
  • Test mit allen wichtigen Schweizer Banking-Apps

Beste Praktiken

  • Validieren Sie alle Ausgangs-QR-Codes mit offiziellen QR-Bill-Validatoren
  • Verwenden Sie Probe-Funktionsdaten für frühe Tests, dann automatisieren Sie für die Produktion
  • Export bei 300 DPI für Druckrechnungen
  • Anmeldung aller QR-Bill-Daten für Audit und Compliance

Fortgeschrittene Szenarien

1. Batch Generiert Schweizer QR-Codes für mehrere Rechnungen

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

2. Anpassung von QR-Codes

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

Schlussfolgerungen

Mit Aspose.BarCode für .NET können Sie schweizer QR-Bill-Codes für digitale Rechnungen und Zahlungen erstellen, die vollständig den Schweizer Banking-Anforderungen entsprechen. Aspose.BarCode API Referenz .

 Deutsch