International.EInvoicing.Countries.Greece
1.1.0
dotnet add package International.EInvoicing.Countries.Greece --version 1.1.0
NuGet\Install-Package International.EInvoicing.Countries.Greece -Version 1.1.0
<PackageReference Include="International.EInvoicing.Countries.Greece" Version="1.1.0" />
<PackageVersion Include="International.EInvoicing.Countries.Greece" Version="1.1.0" />
<PackageReference Include="International.EInvoicing.Countries.Greece" />
paket add International.EInvoicing.Countries.Greece --version 1.1.0
#r "nuget: International.EInvoicing.Countries.Greece, 1.1.0"
#:package International.EInvoicing.Countries.Greece@1.1.0
#addin nuget:?package=International.EInvoicing.Countries.Greece&version=1.1.0
#tool nuget:?package=International.EInvoicing.Countries.Greece&version=1.1.0
International.EInvoicing.Countries.Greece
What Greek electronic invoicing adds on top of the norms.
Greece exchanges Peppol BIS Billing, with Greek rules that travel inside the Peppol rule set — and they ask for two things nothing else in this library does.
The invoice number is a compound key. GR-R-001 is fatal: when the supplier is Greek, BT-1 is six
segments separated by |, and every one of them is checked against the rest of the document.
string number = GrInvoiceNumber.For(
supplierTaxIdentifier: "100000003", // must satisfy its checksum and match the seller's VAT number
issueDate: new DateOnly(2026, 9, 1), // must be the same date as BT-2, written DD/MM/YYYY
branch: 0,
documentType: "1.1", // one of six myDATA codes
series: "A",
number: "0001");
An ordinary invoice number is rejected outright, and a hand-built string fails for reasons that are hard to
read off a validation report — so For checks each part where it can, and names the rule when it refuses.
The AFM has a checksum of its own. The first eight digits are weighted by descending powers of two —
256, 128, 64, 32, 16, 8, 4, 2 — and the ninth is the sum modulo 11, modulo 10. GrTaxIdentifier verifies it,
and writes the number in scheme 9933.
And one MARK number. GR-R-004-1 requires exactly one additional document reference described as
##M.AR.K##, carrying the myDATA registration:
invoice.AdditionalDocuments.Add(new AdditionalDocument
{
Identifier = "400001234567890",
Description = "##M.AR.K##",
});
myDATA itself is out of scope. Reporting every invoice to the platform is a transmission, not a document, and this library performs no network I/O. What it does is produce the document myDATA expects to hear about.
The Greek rules are inside the Peppol rule set: build/fetch-specs.sh peppol, then AddPeppolRulesFrom(...).
Full documentation: https://github.com/Epic-Dice-Studio/International.EInvoicing
| Product | Versions 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. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- International.EInvoicing (>= 1.1.0)
- International.EInvoicing.Peppol (>= 1.1.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
-
net8.0
- International.EInvoicing (>= 1.1.0)
- International.EInvoicing.Peppol (>= 1.1.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
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 |
|---|---|---|
| 1.1.0 | 114 | 9/7/2026 |
| 1.0.1-alpha.0.3 | 71 | 9/7/2026 |
| 1.0.1-alpha.0.2 | 72 | 9/7/2026 |
| 1.0.1-alpha.0.1 | 65 | 9/7/2026 |
| 1.0.0 | 109 | 9/5/2026 |
| 0.1.0-preview.1.107 | 67 | 9/5/2026 |
| 0.1.0-preview.1.106 | 65 | 9/4/2026 |
| 0.1.0-preview.1.105 | 76 | 9/4/2026 |
| 0.1.0-preview.1.104 | 69 | 9/4/2026 |
| 0.1.0-preview.1.103 | 75 | 9/4/2026 |
| 0.1.0-preview.1.102 | 69 | 9/3/2026 |
| 0.1.0-preview.1.101 | 75 | 9/3/2026 |
| 0.1.0-preview.1.96 | 98 | 9/3/2026 |
| 0.1.0-preview.1.95 | 75 | 9/3/2026 |
| 0.1.0-preview.1.94 | 72 | 9/3/2026 |
| 0.1.0-preview.1.93 | 72 | 9/3/2026 |
| 0.1.0-preview.1.92 | 68 | 9/3/2026 |
| 0.1.0-preview.1.91 | 71 | 9/3/2026 |
| 0.1.0-preview.1.90 | 72 | 9/3/2026 |
| 0.1.0-preview.1.89 | 69 | 9/3/2026 |