satano / PayBySquare.TextGenerator.NET

Text generator for PayBySquare QR payment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PayBySquare generátor QR textů pro .NET

Projekt obsahuje nezávislou knihovnu pro slovenský PayBySquare standard QR plateb.

PayBySquare standard byl vytvořen společností ADELANTE, s.r.o. s hlavním důrazem na zbytečnou složitost a obtížnou implementaci tak, aby běžní uživatelé QR plateb museli platit výpalné této společnosti. PayBySquare.TextGenerator.NET řeší tento problém pro implementace v .NET.

PayBySquare standalone QR text generator for .NET

This project provides standalone library for Slovak PayBySquare QR payment standard.

PayBySquare standard was created by ADELANTE, s.r.o. company with main focus on unneeded complexity and difficult implementation. Main purpose is to collect ransom fees from common users of QR payments. PayBySquare.TextGenerator.NET deals with this problem for .NET implementation.

Consume library

There are different options to consume this library:

  • Reference NuGet package in your project.
  • Download DLL from Releases
  • Clone this repository into your project as a submodule or just copy it's content as a project reference.

Quality gate

Getting started

Library is prepared as .NET Standard 2.0. Code can be easily adjusted to any other project type.

Simple payment:

Dim Data As New PayBySquareTextGenerator.PayBySquareOverkill("CZ1720100000002800266981", 1235.8D, "EUR", "654321", "PayBySquareOverkill")
Dim Text As String = Data.GeneratePayBySquareOverkillString

Payment can be decorated with other informations

Dim Payment As New PayBySquareTextGenerator.Payment
With Payment
    .Amount = 112.35
    .CurrencyCode = "EUR"
    .BankAccounts.Add(New BankAccount("CZ1720100000002800266981", "FIOBCZPPXXX"))
    .VariableSymbol = "654321"
    .ConstantSymbol = "0308"
    .SpecificSymbol = "998877"
    .PaymentNote = "PayBySquareOverkill note"
    .PaymentDueDate = New Date(2019, 1, 1)
End With
Dim Data As New PayBySquareTextGenerator.PayBySquareOverkill(Payment)
Dim Text As String = Data.GeneratePayBySquareOverkillString

Next step?

Transfer generated text to QR code using free online generators or custom library.

QR code Error correction level "Medium" is suggested.

C# implementation

Everything except LZMA namespace can be easily rewriten for C#.

LZMA namespace is based on C# managed-lzma project: https://github.com/weltkante/managed-lzma

Do NOT rewrite this LZMA namespace back to C#, that would be waste of time. Link to managed-lzma project directly (start with ManagedLzma.LZMA.AsyncEncoder) or use it's content to replace local code structure.

About

Text generator for PayBySquare QR payment

License:Other


Languages

Language:Visual Basic .NET 100.0%