Electronic Address Scheme (EAS) for JavaScript / TypeScript

JavaScript package for the Electronic Address Scheme (EAS) code lists used in European e-invoicing.
About the Electronic Address Scheme (EAS)
The Electronic Address Scheme (EAS) is a code list used within the European e-invoicing standard EN 16931 to specify the type of an electronic address identifier. When an electronic invoice is sent, it includes an address for the buyer and seller. The EAS code clarifies what kind of address is being provided, for example, a Global Location Number (GLN), a VAT number, or a national routing identifier like the German Leitweg-ID.
This ensures that different systems can correctly interpret the address for routing and processing. The code list is maintained by the European Commission (formerly through the Connecting Europe Facility, CEF) and is essential for standards like XRechnung, ZUGFeRD, and networks like Peppol.
This package provides the official EAS code lists in a simple, accessible format for use in JavaScript and TypeScript applications.
RechnungsAPI
If you are looking for an API solution to generate German e-invoice documents, consider checking out RechnungsAPI, without which this package would not exist.
Installation
Install the package using your favorite package manager:
npm install electronic-address-scheme
or
yarn add electronic-address-scheme
Usage
You can import the latest version of the code list or a specific historical version to match your compliance needs.
Importing the Latest Code List
The main export of the package provides all versions of the EAS code list.
import { EAS } from 'electronic-address-scheme';
import { EAS } from 'electronic-address-scheme/latest';
console.log('Latest EAS Codes:', EAS);
Importing a Specific Version
For specific use cases or to align with older specifications, you can deep-import a particular version of the code list. The package is configured to allow this to help optimize your application's bundle size.
import { EAS_3 } from 'electronic-address-scheme/3';
console.log('EAS Version 3:', EAS_3);
Data Structure
Each code list is an array of objects, where each object conforms to the CodeListEntry
type.
export interface CodeListEntry {
code: string;
name?: string;
description?: string;
}
export type CodeList = CodeListEntry[];
Available Code Lists
This package contains multiple versions of the Electronic Address Scheme (EAS) code list. You can import them as needed:
- Version 1
- Version 2
- Version 3
- Version 4
- Version 5 (Latest)