# E-Mail

Der E-Mail-Transport hängt die transformierte Bestellung als Datei an eine E-Mail und verschickt sie. Typischer Einsatz: ein Ziel-System, das Bestellungen per E-Mail entgegennimmt (z. B. JTL-Wawi mit E-Mail-Import, oder ein Sachbearbeiter, der die Bestellung manuell ins ERP kopiert). Benötigtes Addon: `delivery_email`.

## Wann E-Mail wählen?

- Das Ziel-System importiert Bestellungen **aus E-Mail-Anhängen**
- Sie wollen eine **Kopie** der transformierten Bestellung zur Kontrolle an ein Postfach senden
- Ein Partner hat keinen HTTP-Endpoint und kann nur E-Mail empfangen

Für alles Automatische ist [HTTP POST](/docs/http) oder [REST API](/docs/rest-api) die robustere Wahl – E-Mail ist nicht transaktional, Bounces kommen verzögert, und Spam-Filter können zuschlagen.

## Einrichtung

1. **Transporte → Hinzufügen** → Typ: **E-Mail**
2. **Empfänger-Adresse**: z. B. `orders@example.com` (eine Adresse; mehrere Empfänger werden aktuell nicht unterstützt)
3. **Betreff-Vorlage**: z. B. `Bestellung {external_order_id} von {pipeline_name}` – Platzhalter werden beim Versand ersetzt
4. Speichern → **Verbindung testen** sendet eine Test-E-Mail mit leerem Anhang

### Platzhalter im Betreff

| Platzhalter | Ersetzung |
|---|---|
| `{external_order_id}` | Bestellnummer (aus `external_order_id`) |
| `{pipeline_name}` | Name der Pipeline |
| `{date}` | Datum des Versands (`Y-m-d`) |

Weitere Platzhalter können bei Bedarf ergänzt werden.

## Nachrichteninhalt

- **Betreff**: aus der Vorlage mit ersetzten Platzhaltern
- **Body**: kurzer Standard-Text („Im Anhang finden Sie die Bestellung im Format XYZ")
- **Anhang**: Die transformierte Bestellung als Datei
  - Dateiname: `{external_order_id}.xml` oder `.json` je nach Ausgabeformat
  - Content-Type: `application/xml` oder `application/json`

Der E-Mail-Text ist aktuell nicht anpassbar; Änderungen am Body-Template sind auf Anfrage möglich.

## Absender-Adresse

- **From**: `noreply@orderport.app` (orderport-eigene Domain mit SPF, DKIM, DMARC)
- **Reply-To**: nicht gesetzt – Antworten landen im Orderport-Noreply-Postfach und werden nicht weitergeleitet

Für einen eigenen Absender mit Ihrer Domain gibt es aktuell keine Self-Service-Option; sprechen Sie uns bei Bedarf an.

## Technische Details

### Transport-Log

Der Transport-Log-Eintrag markiert den Versuch als erfolgreich, sobald der Mailserver die Nachricht angenommen hat, und enthält die Message-ID sowie die Zeit bis zum Accept.

> **Achtung:** „Erfolgreich" heißt hier „E-Mail wurde vom Orderport-Mailserver ausgeliefert" – ob das Ziel-Postfach sie tatsächlich erhält, ist SMTP-bedingt nicht nachprüfbar. Für einen Zustellungs-Nachweis ist E-Mail grundsätzlich ungeeignet.

### Authentifizierung und Deliverability

Der Orderport-Mailserver ist mit SPF, DKIM und DMARC für `orderport.app` signiert. SMTP-seitiges Größenlimit: 25 MB (inkl. Anhang).

### Feature-Gate

Der E-Mail-Transport ist hinter dem Addon `delivery_email`. Ohne Addon erscheint er im Wizard mit Upsell-Hinweis. Demo-Mandanten haben uneingeschränkten Zugang.

## Fehlerbehebung

| Symptom | Ursache | Lösung |
|---|---|---|
| Empfänger meldet „Nie angekommen" | Spam-Ordner oder Blacklisting | Empfänger soll `noreply@orderport.app` auf seine Allowlist setzen; Spam-Ordner prüfen |
| Bounce-Mail erreicht nicht den Tenant | Reply-To ist nicht gesetzt | Aktuell nicht anpassbar; im Transport-Log zeigt sich der SMTP-Fehler zeitverzögert nach einigen Stunden |
| Datei-Anhang zu groß | Bestellungen über ~15 MB mit großen Stammdaten | Alternative Transporte wählen, z. B. SFTP |
| Umlaute im Anhang zerstört | Mail-Client rendert Attachment als Text | Content-Type und Encoding (UTF-8) sind gesetzt – Empfänger sollte die Datei speichern statt im Viewer ansehen |

## Nächste Schritte

- [FTP & SFTP](/docs/ftp-sftp) – transaktionaler Datei-Versand
- [Zugangsdaten](/docs/credentials)
- [JTL-Wawi](/docs/jtl-wawi) – E-Mail-Import-Beispiel
