Come generare codici QR svizzeri utilizzando Aspose.BarCode per .NET
Questo articolo spiega come generare i codici QR svizzeri (QR-bill) con Aspose.BarCode per .NET in C#. Il codice QR Svizzero è obbligatorio per la fatturazione digitale e i pagamenti in Svezia, seguendo le rigide regole di layout e dati definite da SIX Interbank Clearing.
Il problema del mondo reale
Le imprese svizzere devono includere un codice QR standardizzato (QR-bill) sulle bollette per automatizzare i pagamenti e soddisfare i requisiti legali.
Soluzione Overview
Aspose.BarCode per .NET fornisce un codice SwissQR specializzato per creare codici QR-bill secondo gli standard svizzeri, compresi i delimitori di campo e la correzione degli errori, pronti per i flussi di lavoro bancari e di fatturazione.
Prerequisiti
Prima di iniziare, assicurati di avere:
- Visual Studio 2019 o successivo
- .NET 6.0 o successivo (o .Net Framework 4.6.2+)
- Aspose.BarCode per .NET installato tramite NuGet
- Conoscenza di base di C#
PM> Install-Package Aspose.BarCode
Implementazione passo dopo passo
Passo 1: Installare e importare Aspose.BarCode
Installare il pacchetto NuGet e importare gli spazi di nome richiesti:
using Aspose.BarCode.Generation;
Passo 2: Creare il QR Code Generator
Preparare i dati di codice QR svizzero per formato QR-bill. Esempio:
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);
Passo 3: personalizzare la layout e le impostazioni QR svizzere
Imposta il livello ECC e il colore per 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;
Passo 4: Generare e salvare il codice QR svizzero
Esportazione a PNG o altri formati supportati:
generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
Passo 5: Un esempio completo
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
}
}
Utilizzare casi e applicazioni
- Fonti svizzeri e fatturazione: QR-bill legalmente richiesto per le fatture elettroniche e cartacee
- Banking/Payments: Introduzione immediata dei dati per le istituzioni finanziarie svizzere
- Auditi di conformità: Generare e registrare i dati QR-bill per i controlli regolamentari
Sfide e soluzioni comuni
**Divisione 1: Il pagamento rifiutato dalla banca?**La soluzione: Validare la struttura dei dati QR e le lunghezze di campo, seguire strettamente il formato SIX QR-bill.
Challenge 2: QR non leggibile per le app?La soluzione: Utilizzare la correzione di errore di livello M, assicurare il corretto DPI, dimensioni di stampa e contrasto.
**Dio 3: mappatura dei dati per le fatturazioni?**La soluzione: Generazione automatica di file di dati QR-bill dai campi di fatturazione.
Considerazioni di prestazioni
- Codice QR svizzero generato per le fatturazioni
- Utilizzare i flussi di memoria per l’integrazione con ERP o piattaforme bancarie
- Test con tutte le principali applicazioni bancarie svizzere
Migliori pratiche
- Validare tutti i codici QR di uscita utilizzando i validatori QR-bill ufficiali
- Utilizzare i dati di fattura di campione per test precoci, quindi automatizzare per la produzione
- Esportazione a 300 DPI per le fatturazioni stampate
- Inserisci tutti i dati QR-bill per audit e conformità
Scenari avanzati
Batch genera codici QR svizzeri per numerose fatturazioni
foreach (var invoice in invoices)
{
BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}
Apparire codice QR personalizzato
generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;
conclusione
Con Aspose.BarCode per .NET, è possibile creare codici di biglietto QR svizzeri per fatturazioni e pagamenti digitali, in piena conformità con i requisiti della banca Svizzera. Aspose.BarCode API di riferimento .