ETA.eReceipt.IntegrationToolkit 2.0.0

.NET 6.0
dotnet add package ETA.eReceipt.IntegrationToolkit --version 2.0.0
NuGet\Install-Package ETA.eReceipt.IntegrationToolkit -Version 2.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="ETA.eReceipt.IntegrationToolkit" Version="2.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ETA.eReceipt.IntegrationToolkit --version 2.0.0
#r "nuget: ETA.eReceipt.IntegrationToolkit, 2.0.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ETA.eReceipt.IntegrationToolkit as a Cake Addin
#addin nuget:?package=ETA.eReceipt.IntegrationToolkit&version=2.0.0

// Install ETA.eReceipt.IntegrationToolkit as a Cake Tool
#tool nuget:?package=ETA.eReceipt.IntegrationToolkit&version=2.0.0

ETA.eReceipt.IntegrationToolkit is a .Net6 NuGet exposed as a set APIs to the taxpayers’ POS/ERP systems and developers as well. It’s optional for the taxpayer to integrate their systems with the toolkit.

The nuget is intended to support different scenarios that can be performed in offline mode. The different set of functionalities/APIs that will be supported in offline mode will be as follows:

• Issue Receipt • Generate Receipt QR code • Assign globally unique receipt UUID • Export issued receipts • Validate documents locally while issuing and generation of UUID and QR codes

Other than working offline, the toolkit will have to be used in online mode for specific scenarios that require connection to the eReceipt solution. It will also use external APIs exposed by the eReceipt solution’s server-side to perform the following: • Help authenticate POS • Synchronize receipts • Update codes and business rules in local cache

Nuget is implemented to store receipts in SQLlite database, So developer need to configure how to connect to it while initialization of application services.

To integrate toolkit into your application follow the next steps

1- Add configuration section to apsettings.json "ToolkitConfig": { // connection string of sqllit database "LocalConnectionsString": "Data Source=C:\Users\Administrator\AppData\Local\LocalReceipts.db;", //Egypt tax authority configuration section "EtaConfig": {

  // identity service url to acquire access token to invoicing APIs
  "IdentityServiceUrl": "",
  // invoicing portal base url, will be used while generation of QR codes
  "InvoicingServiceBaseUrl": "",

  // invoicing service base url, will be used while submission and syncing receipts
  "InvoicingPortalBaseUrl": "",

  // version of invoicing service
  "InvoicingServiceVersion": "1",

  // The involved POS while integration with invoicing through nuget
  "PosSerial": "",
  "SubTypeAttributeKey": "AmountType",
  "SubTypeAttributeValue": "amount"


2- Add it to service collection using extension method // By calling this service u can inject IToolkitHandler service // and use any of its exposed functionality like issue, submit, sync ... and son services.AddToolkit(configuration);

Usage Notes 1- You can combine the previous two steps in one step by calling the following line of code where you pass configuration object apart from your configuration file: services.AddToolkit(configuration, ToolkitConfig);

2- You can delegate the creation of SQLite database to nuget by adding the following line of code in application startup: app.MigrateToolkitLocalStorage();

Product Versions
.NET net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
Compatible target framework(s)
Additional computed target framework(s)
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
2.0.0 356 12/2/2022
1.0.146-preview 33 2/2/2023