EMV chip card reading library with support for PSE/PPSE application selection, GPO processing, record reading, TLV parsing, JH Token generation, and event-driven card read notifications. Works with contact and contactless EMV cards via PC/SC readers. Updated for 2026 release with improved documentation and copyright. Now supports both 32-bit and 64-bit Windows systems through NfcReaderLib 1.0.3.
$ dotnet add package EMVCard.CoreThis library provides core functionality for EMV card transaction storage and processing, including:
CardTransaction)SaveBatchAsyncGetAllSummaryAsyncCardRead to react to card reads in real timeInstall via NuGet:
Install-Package EMVCard.Core -Version 2.2.0
.NET CLI:
dotnet add package EMVCard.Core --version 2.2.0
Example:
using EMVCard.Storage;
var storage = new SQLiteTransactionStorage("transactions");
await storage.SaveAsync(transaction);
// Batch insert
await storage.SaveBatchAsync(transactions);
// Get summaries
var summaries = await storage.GetAllSummaryAsync();
// Subscribe to card read event
var reader = new EmvCardReader();
reader.CardRead += (s, e) =>
{
Console.WriteLine($"Card read: {e.CardData.PAN}");
};
MIT
Copyright holders: Johan H
A .NET library for PC/SC smart card communication, JH Token generation, and EMV/NFC card utilities.
| Package | Version | Description |
|---|---|---|
| NfcReaderLib | 2.0.3 | PC/SC communication, JH Token generation |
| EMVCard.Core | 2.0.4 | EMV card reading, storage, and export |
Package Manager Console:
Install-Package NfcReaderLib -Version 2.0.3
Install-Package EMVCard.Core -Version 2.0.4
.NET CLI:
dotnet add package NfcReaderLib --version 2.0.3
dotnet add package EMVCard.Core --version 2.0.4
MIT