Mews.Fiscalizations.Austria 10.0.0

Prefix Reserved
dotnet add package Mews.Fiscalizations.Austria --version 10.0.0                
NuGet\Install-Package Mews.Fiscalizations.Austria -Version 10.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Mews.Fiscalizations.Austria" Version="10.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Mews.Fiscalizations.Austria --version 10.0.0                
#r "nuget: Mews.Fiscalizations.Austria, 10.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Mews.Fiscalizations.Austria as a Cake Addin
#addin nuget:?package=Mews.Fiscalizations.Austria&version=10.0.0

// Install Mews.Fiscalizations.Austria as a Cake Tool
#tool nuget:?package=Mews.Fiscalizations.Austria&version=10.0.0                

<p align="center"> <a href="https://mews.com"> <img alt="Mews" src="https://user-images.githubusercontent.com/51375082/120493257-16938780-c3bb-11eb-8cb5-0b56fd08240d.png"> </a> <br><br> <b>Mews.Fiscalizations.Austria</b> A .NET library for generating QR codes that comply with Austrian fiscal law (RKSV2017), featuring A-Trust WS RK.Online API-based signing. <b>Current supported version: 2.0</b>
<br><br> <a href="https://www.nuget.org/packages/Mews.Fiscalizations.Austria/"> <img src="https://img.shields.io/nuget/v/Mews.Fiscalizations.Austria"> </a> <a href="https://github.com/MewsSystems/fiscalizations/blob/master/LICENSE"> <img src="https://img.shields.io/github/license/MewsSystems/fiscalizations"> </a> <a href="https://github.com/MewsSystems/fiscalizations/actions/workflows/publish-austria.yml"> <img src="https://img.shields.io/github/actions/workflow/status/MewsSystems/fiscalizations/publish-austria.yml?branch=master&label=publish"> </a> <a href="https://labs.a-trust.at/developer/pdf/asignRKHSM_basic_advanced_premium.pdf"> <img src="https://img.shields.io/badge/v2.0-registrierkasse-lightgrey"> </a> </p>

📃 Description

The Mews.Fiscalizations.Austria library leverages A-Trust services to create QR codes compliant with Austrian fiscal regulations. For further details, refer to A-Trust’s Documentation.

⚙️ Installation

You can install the library via NuGet Package Manager or the command line:

Install-Package Mews.Fiscalizations.Austria

🎯 Key Features

  • Functional programming approach using FuncSharp.
  • Early validation of data inputs.
  • Asynchronous I/O operations.
  • Comprehensive test coverage for all endpoints.
  • Intuitive and immutable Data Transfer Objects (DTOs).
  • CI/CD pipelines compatible with both Windows and Linux.
  • Cross-platform compatibility (.NET 8).

📦 NuGet Package

Available on NuGet as Mews.Fiscalizations.Austria.

👀 Code Examples

Below are some sample use cases. For a full list, see the test cases.

Generating QR Data for Receipts

Create QrData from a receipt, including standard rates, register identifier, and previous JWS representation:

var qrData = new QrData(new Receipt(
    number: new ReceiptNumber("83469"),
    registerIdentifier: new RegisterIdentifier("DEMO-CASH-BOX817"),
    taxData: new TaxData(
        standartRate: new CurrencyValue(29.73m),
        lowerReducedRate: new CurrencyValue(36.41m),
        specialRate: new CurrencyValue(21.19m)
    ),
    turnover: new CurrencyValue(0.0m), 
    certificateSerialNumber: new CertificateSerialNumber("-3667961875706356849"),
    previousJwsRepresentation: new JwsRepresentation("..."),
    created: new LocalDateTime(
        new DateTime(2015, 11, 25, 19, 20, 11),
        LocalDateTime.AustrianTimezone
    )
);

Using the A-Trust RK.Online Signer

Sign the generated QR data using A-Trust’s API:

var signer = new ATrustSigner(Credentials, ATrustEnvironment.Test);
var output = await signer.SignAsync(qrData);

Handling Signer Output

Use SignerOutput for setting fiscal record details:

fiscalRecord.JwsRepresentation = output.JwsRepresentation.Value;
fiscalRecord.QrData = output.SignedQrData.Value;
fiscalRecord.Signature = output.JwsRepresentation.Signature.Value;

⚠️ License

Licensed under the MIT

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
10.0.0 99 2/21/2025
9.0.0 118 12/31/2024
8.0.1 412 1/31/2024
8.0.0 326 1/29/2024
7.0.0 701 8/27/2023
6.0.2 725 8/2/2023
6.0.1 744 7/26/2023
6.0.0 727 7/24/2023
5.0.0 942 11/30/2022
4.0.0 1,015 9/6/2022
3.0.2 974 7/4/2022
3.0.1 922 11/5/2021
3.0.0 1,452 5/24/2021