Hoe om Zwitserse QR-codes te genereren met behulp van Aspose.BarCode voor .NET

Hoe om Zwitserse QR-codes te genereren met behulp van Aspose.BarCode voor .NET

In dit artikel wordt uitgelegd hoe Swiss QR codes (QR-bill) te genereren met Aspose.BarCode voor .NET in C#. De Swiss QR code is verplicht voor digitale facturering en betalingen in Zwitserland, volgens de strikte layout en gegevensregels gedefinieerd door SIX Interbank Clearing.

Real-wereld probleem

Zwitserse bedrijven moeten een gestandaardiseerde QR-code (QR-bill) op facturen opnemen om betalingen te automatiseren en aan wettelijke vereisten te voldoen.

Overzicht oplossingen

Aspose.BarCode voor .NET biedt een gespecialiseerde SwissQR-encoder om QR-biljetcodes te creëren volgens de Zwitserse normen, met inbegrip van velddelimiters en foutcorrectie, klaar voor banken en factuurwerkstromen.

Voorwaarden

Voordat u begint, zorg ervoor dat u:

  • Visual Studio 2019 of later
  • .NET 6.0 of hoger (of .Net Framework 4.6.2+)
  • Aspose.BarCode voor .NET geïnstalleerd via NuGet
  • Basiskennis van C#
PM> Install-Package Aspose.BarCode

Stap voor stap implementatie

Stap 1: Installeren en importeren Aspose.BarCode

Installeer het NuGet-pakket en geïmporteer de vereiste naamruimten:

using Aspose.BarCode.Generation;

Stap 2: Creëren van de Zwitserse QR Code Generator

Voorbereid Zwitserse QR codegegevens per QR-bill formaat.

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

Stap 3: Customize Swiss QR Layout en Settings

Set ECC niveau en kleur voor naleving:

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;

Stap 4: Genereren en bewaren van de Zweedse QR-code

Export naar PNG of andere ondersteunde formaten:

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

Stap 5: Complete voorbeeld

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

Gebruik Cases en Applicaties

  • Zwitserse factuur en facturatie: Wetelijk vereist QR-biljet voor elektronische en papierfoctuur
  • Banking/betalingen: Instant data entry voor Zwitserse financiële instellingen
  • Compliance audits: Het genereren en loggen van QR-biljetgegevens voor regelgevende controles

Gemeenschappelijke uitdagingen en oplossingen

**Challenge 1: Betalingen die door de bank worden geweigerd?**De oplossing: Valideer de QR-gegevensstructuur en veldlengten, volg het SIX-QR-bill-formaat strikt.

**Challenge 2: QR niet leesbaar door apps?**De oplossing: Gebruik Level M foutcorrectie, zorg ervoor dat de juiste DPI, printgrootte en contrast.

**Challenge 3: Data maping voor facturen?**De oplossing: Automatische QR-bill-data string generatie uit factuurvelden.

Performance overwegingen

  • Batch-genereerde Zwitserse QR-codes voor facturen
  • Gebruik geheugenstromen voor integratie met ERP’s of bankplatforms
  • Test met alle belangrijke Zwitserse bankapps

Beste praktijken

  • Valideer alle output QR codes met behulp van officiële QR-bill validatoren
  • Gebruik proefrekeningsgegevens voor vroege tests, vervolgens automatiseren voor productie
  • Export op 300 dpi voor afgedrukte factuur
  • Log alle QR-biljetgegevens voor audit en naleving

Geavanceerde scenario’s

Batch genereert Zwitserse QR-codes voor meerdere facturen

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

Aanpassing van QR-code

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

Conclusie

Met Aspose.BarCode voor .NET kunt u Zwitserse QR-biljetcodes maken voor digitale facturering en betalingen, volledig in overeenstemming met de eisen van de Swiss banking. Aspose.BarCode API Referentie .

 Nederlands