5 Minuten

Quickstart Guide

Erstelle deine erste E-Rechnung in unter 5 Minuten. Kein SDK nötig – nur ein HTTP-Request.

1

API Key erstellen

Registriere dich kostenlos und hole dir deinen API Key aus dem Dashboard.

2

Request senden

Sende deine Rechnungsdaten als JSON an unsere API.

3

E-Rechnung erhalten

Erhalte eine validierte XRechnung oder ZUGFeRD zurück.

1

API Key erstellen

Erstelle einen kostenlosen Account und generiere deinen API Key im Dashboard. Du erhältst zwei Keys:

  • Test
    sk_test_...

    Für Entwicklung und Testing (keine Kosten)

  • Live
    sk_live_...

    Für Production (Pay-per-Use)

Dein API Key

sk_test_abc123xyz...

Halte deinen API Key geheim. Teile ihn nie öffentlich.

2

Erste E-Rechnung erstellen

Sende einen POST-Request an /api/v1/invoice/DE/XRECHNUNG/generate mit deinen Rechnungsdaten. Hier ein vollständiges Beispiel:

POSThttps://api.invoice.xhub.io/api/v1/invoice/DE/XRECHNUNG/generate
bash
1curl -X POST https://api.invoice.xhub.io/api/v1/invoice/DE/XRECHNUNG/generate \
2 -H "Authorization: Bearer sk_test_abc123..." \
3 -H "Content-Type: application/json" \
4 -d '{
5 "seller": {
6 "name": "Meine Firma GmbH",
7 "vatId": "DE123456789",
8 "street": "Musterstraße 1",
9 "city": "Berlin",
10 "postalCode": "10115",
11 "country": "DE"
12 },
13 "buyer": {
14 "name": "Kunde AG",
15 "vatId": "DE987654321",
16 "street": "Kundenweg 42",
17 "city": "München",
18 "postalCode": "80331",
19 "country": "DE"
20 },
21 "items": [
22 {
23 "description": "Beratungsleistung",
24 "quantity": 10,
25 "unitPrice": 150.00,
26 "taxRate": 19
27 }
28 ]
29 }'
3

Response verstehen

Bei Erfolg erhältst du einen 200 OK mit der erstellten Rechnung. Die Response enthält die Validierungs-Ergebnisse und Download-URLs:

json
1{
2 "success": true,
3 "format": "XRECHNUNG",
4 "filename": "invoice-2025-001.xml",
5 "mimeType": "application/xml",
6 "hash": "sha256:abc123...",
7 "data": "PD94bWwgdmVyc2lvbj0iMS4wIj8+...",
8 "errors": [],
9 "warnings": []
10}

success

true bedeutet die Rechnung wurde erfolgreich generiert.

data

Base64-kodiertes Dokument (XML oder PDF je nach Format).

errors / warnings

Validierungsfehler und -warnungen als Array.

Code-Beispiele

Node.js / TypeScript

typescript
1const response = await fetch('https://api.invoice.xhub.io/api/v1/invoice/DE/XRECHNUNG/generate', {
2 method: 'POST',
3 headers: {
4 'Authorization': 'Bearer sk_test_abc123...',
5 'Content-Type': 'application/json'
6 },
7 body: JSON.stringify({
8 seller: {
9 name: 'Meine Firma GmbH',
10 vatId: 'DE123456789',
11 street: 'Musterstraße 1', city: 'Berlin', postalCode: '10115', country: 'DE'
12 },
13 buyer: {
14 name: 'Kunde AG',
15 vatId: 'DE987654321',
16 street: 'Kundenweg 42', city: 'München', postalCode: '80331', country: 'DE'
17 },
18 items: [
19 { description: 'Beratungsleistung', quantity: 10, unitPrice: 150.00, taxRate: 19 }
20 ]
21 })
22});
23 
24const result = await response.json();
25const xmlData = atob(result.data); // Base64 decode to get XML

Python

python
1import requests
2import base64
3 
4response = requests.post(
5 'https://api.invoice.xhub.io/api/v1/invoice/DE/XRECHNUNG/generate',
6 headers={
7 'Authorization': 'Bearer sk_test_abc123...',
8 'Content-Type': 'application/json'
9 },
10 json={
11 'seller': {
12 'name': 'Meine Firma GmbH',
13 'vatId': 'DE123456789',
14 'street': 'Musterstraße 1', 'city': 'Berlin', 'postalCode': '10115', 'country': 'DE'
15 },
16 'buyer': {
17 'name': 'Kunde AG',
18 'vatId': 'DE987654321',
19 'street': 'Kundenweg 42', 'city': 'München', 'postalCode': '80331', 'country': 'DE'
20 },
21 'items': [
22 {'description': 'Beratungsleistung', 'quantity': 10, 'unitPrice': 150.00, 'taxRate': 19}
23 ]
24 }
25)
26 
27result = response.json()
28xml_data = base64.b64decode(result['data']) # Base64 decode to get XML

Bereit loszulegen?

Teste die API direkt im Playground – ohne Account.