easyInvoice - Integrationsleitfaden Lokale API & Datei-Integration Elektronische Rechnungsstellung
Version 2.3.1 | Aktualisiert: 04/2026
Übersicht Dieses Dokument bietet umfassende Anleitungen zur Integration mit dem easyInvoice-System. Zwei Hauptmethoden werden unterstützt:
Lokale API-Integration: Verwendung von HTTP-Endpunkten mit JSON-Payloads Datei-Integration: Verwendung von JSON-Dateien im überwachten Verzeichnis 1. Einführung easyInvoice ist ein elektronisches Rechnungssystem für B2B-Transaktionen und Steuerkonformität in Albanien. Diese Anleitung zeigt, wie Sie mit easyInvoice über dateibasierte Integration oder RESTful-API-Aufrufe integrieren können.
1.1 Integrationsmethoden Lokale API-Integration: HTTP-Anfragen mit JSON-Payloads Datei-Integration: JSON-Dateien im überwachten Verzeichnis ablegen 1.2 Voraussetzungen Windows- oder MacOS-Betriebssystem (erforderlich für easyInvoice-Installation) Gültige easyInvoice-Installation und -Konfiguration API-Autorisierungsstring konfiguriert (für API-Integration) Lokaler API-Dienst in easyInvoice-Einstellungen aktiviert (für API-Integration) Netzwerkverbindung zum lokalen easyInvoice-Dienst (für API-Integration) Datei-Watcher konfiguriert (für Datei-Integration) 2. Lokale API-Integration 2.1 Basis-URL http://[server-ip]:port/v1/...
2.2 Headers Content-Type: application/json
Authorization: [your-authorization-string] 2.3 API-Endpunkte Method Endpoint Beschreibung GET/v1Verbindung testen POST/v1/invoices/newRechnung(en) erstellen GET/v1/invoicesAlle Rechnungen abrufen GET/v1/invoices/:idEinzelne Rechnung abrufen GET/v1/operatorsOperatoren abrufen GET/v1/entitiesEntitäten abrufen
2.4 Antwortformat {
"status": 0,
"response": {
"nslf": "9F01C3580F765D733529ED8C2822CA81",
"nivf": "9775c78c-1363-4469-9b26-e9a19204a0a4",
"eic": "aae0770c-0e44-4a0a-b8d1-004c2a6eacf4",
"link": "https://efiskalizimi-app.tatime.gov.al/invoice-check/...",
"text": "Sukses"
},
"docId": "0384a667-ea97-4e53-9e8e-5a234162ca42"
}status: 0 = Success, 1 = Errornslf: IIC (Internal Invoice Counter) nivf: FIC (Fiscal Invoice Counter) eic: EIC (Electronic Invoice Counter) link: Invoice verification URL3. Datei-Integration Legen Sie JSON-Dateien im überwachten Verzeichnis ab. easyInvoice verarbeitet sie automatisch.
Basisrechnung mit Käufer {
"operatorCode": "gh537ez280",
"buyer": {
"buyerIDType": "NUIS",
"buyerIDNum": "K00000000A",
"buyerName": "GENERAL DIRECTORATE OF TAXES",
"buyerAddress": "Rruga Gjin Bue Shpata",
"buyerTown": "Tirana",
"buyerCountry": "ALB"
},
"articles": [
{
"articleId": "1412134",
"vatCode": "B",
"name": "Water",
"soldIn": "cope",
"price": 150,
"units": 195
}
],
"bankDetails": {
"country": "Albania",
"countryCode": "AL",
"currency": "ALL",
"idNumber": "AL70202310040000000011237412"
}
}4. Rechnungsformat Wichtiger Hinweis operatorCode - Required for all invoices buyer - Required with valid NUIS bankDetails - Required for ACCOUNT payment docId - Recommended (UUIDv4) 4.1 Standardrechnung mit Käufer {
"app": "your-app-name",
"operatorCode": "gh537ez280",
"buyer": {
"buyerIDType": "NUIS",
"buyerIDNum": "K00000000A",
"buyerName": "GENERAL DIRECTORATE OF TAXES",
"buyerAddress": "Rruga Gjin Bue Shpata",
"buyerTown": "Tirana",
"buyerCountry": "ALB"
},
"articles": [
{
"articleId": "1412134",
"vatCode": "B",
"name": "Water",
"soldIn": "cope",
"price": 150,
"units": 195
},
{
"articleId": "2412412",
"vatCode": "B",
"name": "Cola",
"soldIn": "cope",
"price": 200,
"units": 120
}
],
"bankDetails": {
"country": "Albania",
"countryCode": "AL",
"currency": "ALL",
"idNumber": "AL70202310040000000011237412"
},
"paymentDeadline": "2025-01-28",
"supplyPeriod": {
"start": "2025-01-01",
"end": "2025-01-28"
},
"invoiceNotes": "Test note"
} 4.2 Rechnung mit mehreren Zahlungen "payment": [
{
"type": "FACTORING",
"amount": 23500
},
{
"type": "ACCOUNT",
"bankDetails": [{
"country": "Albania",
"countryCode": "AL",
"currency": "ALL",
"idNumber": "AL70202310040000000011237412"
}],
"amount": 35600
}
] 4.3 Rechnungsstornierung {
"invoices": [{
"docId": "ab4f61ac-d812-4939-80f3-e964fd1a041a",
"operatorCode": "gh537ez280",
"invoiceType": "CANCEL",
"iicRef": "3A0029767862ACE2DDCB70C2E4363C09"
}]
} 4.4 easyInvoice-spezifische Felder Feld Typ Beschreibung bankDetails object Bankdaten des Verkäufers paymentDeadline string Zahlungsfrist (YYYY-MM-DD) supplyPeriod object Lieferzeitraum (start, end) invoiceNotes string Rechnungsnotizen
4.5 Zahlungsmethoden Typ Kategorie Beschreibung ACCOUNTNONCASH Banküberweisung FACTORINGNONCASH Factoring COMPENSATIONNONCASH Kompensation KINDNONCASH Sachleistung (Clearing) OTHERNONCASH Sonstige, bargeldlos
5. Warenbegleitschein (WTN) 5.1 WTN-Struktur {
"app": "your-app-name",
"invoiceType": "WTN",
"articles": [
{
"articleId": "12344412",
"name": "Water",
"soldIn": "cope",
"cost": 50.4121,
"units": 10.192
},
{
"articleId": "2341234",
"name": "Bread",
"soldIn": "cope",
"cost": 150.245,
"units": 3.142
}
],
"wtnOptions": {
"transaction": "TRANSFER",
"vehicleOwnership": "OWNER",
"vehiclePlate": "AA293BB",
"startPoint": "STORE",
"startAddress": "Lunder",
"startCity": "Tirana",
"startDate": "2025-01-12",
"startTime": "22:55",
"destinationPoint": "STORE",
"destinationCity": "Durres",
"destinationAddress": "Test Street",
"destinationDate": "2025-01-14",
"destinationTime": "21:32",
"areGoodsFlammable": true,
"isEscortRequired": false,
"packagingType": "Box",
"packagesNumber": "24",
"itemsNumber": "12"
}
} 5.2 WTN-Optionen Feld Mögliche Werte Beschreibung transaction TRANSFER, SALE, EXAMINATION, DISPOSAL, RETURN Transaktionstyp vehicleOwnership OWNER, THIRD_PARTY Fahrzeugeigentum startPoint STORE, WAREHOUSE, OTHER Startpunkt destinationPoint STORE, WAREHOUSE, OTHER Zielpunkt
6. Feldreferenz 6.1 Bankdaten Feld Beschreibung Beispiel country Ländername Albania countryCode ISO 2-Buchstaben-Code AL currency Währungscode ALL, EUR idNumber IBAN AL70202310040000000011237412
6.2 Lieferzeitraum "supplyPeriod": {
"start": "2025-01-01",
"end": "2025-01-28"
} 6.3 Fehlercodes Code Typ Nachricht E1000 NOT_FOUND_ERROR Ressource nicht gefunden E1001 ALREADY_EXISTS_ERROR Ressource existiert bereits E1002 FIELDS_VALIDATION_ERROR Feldvalidierungsfehler E1300 INVOICE_ERROR Rechnung konnte nicht erstellt werden E9800 CIS_ERROR Fehler von CIS
7. Best Practices 7.1 Allgemeine Richtlinien Daten validieren: JSON-Struktur vor dem Senden immer validieren Fehler behandeln: Ordnungsgemäße Fehlerbehandlung für fehlgeschlagene Transaktionen implementieren IIC speichern: Den zurückgegebenen IIC (nslf) für zukünftige Referenz und Stornierungen speichern Netzwerkzuverlässigkeit: Für API-Integration Wiederholungslogik implementieren Demo-Konto: Demo-Konto beim Support-Team anfordern, um die Integration zu testen Dokument-ID: UUIDv4-Format für benutzerdefinierte docId-Felder verwenden, um Eindeutigkeit zu gewährleisten 7.2 Best Practices für Datei-Integration Eindeutige Dateinamen verwenden, um Konflikte zu vermeiden Antwortdateien auf Verarbeitungsergebnisse überwachen Dateisperrmechanismen implementieren, um partielle Lesevorgänge zu verhindern Verarbeitete Dateien regelmäßig bereinigen Immer das app-Feld einschließen, um Ihre Anwendung zu identifizieren 7.3 Best Practices für lokale API-Integration Connection Pooling für bessere Leistung verwenden Exponentielles Backoff für Wiederholungen implementieren Alle Anfragen und Antworten für das Debugging protokollieren Angemessene Netzwerk-Timeouts konfigurieren Netzwerkverbindung zum easyPos-Dienst sicherstellen 8. Fehlerbehebung 8.1 Datei wird nicht verarbeitet Dateiberechtigungen prüfen JSON-Syntax auf Gültigkeit prüfen Sicherstellen, dass die Datei vollständig geschrieben ist, bevor easyPos sie liest easyPos-Dienststatus prüfen Prüfen, ob das app-Feld vorhanden ist 8.2 API-Verbindungsfehler Netzwerkverbindung zum easyPos-Server prüfen Firewall-Einstellungen prüfen Korrekte Endpunkt-URL und Port bestätigen Autorisierungsstring-Konfiguration validieren Sicherstellen, dass der lokale API-Dienst in den easyPos-Einstellungen aktiviert ist 8.3 Ungültige Datenfehler Validieren, dass alle erforderlichen Felder vorhanden sind Prüfen, ob Datentypen den Spezifikationen entsprechen Prüfen, ob MwSt-Codes gültig sind Sicherstellen, dass Beträge korrekt formatiert sind 9. Integrations-Checkliste 9.1 Setup ☐ Software installiert und konfiguriert ☐ Demo-Konto verfügbar ☐ Autorisierungsstring konfiguriert ☐ Integrationsmethode ausgewählt (Datei oder API) 9.2 Entwicklung ☐ JSON-Struktur implementiert ☐ Fehlerbehandlung implementiert ☐ Antwortverarbeitung implementiert 9.3 Testing ☐ Basisrechnung getestet ☐ Rechnung mit Käufer getestet ☐ Stornierung getestet ☐ Fehlerszenarien getestet Wichtiger Hinweis Um die Integration zu testen, fordern Sie ein Demo-Konto beim Support-Team an.
© ESDP - easyInvoice Integrationsleitfaden v2.3.1