TL;DR — Kurzzusammenfassung
CFDI SAT-Fehler 307: XML-Schema-Validierung schlägt beim Timbrado fehl. Namespaces, SAT-Kataloge, Ergänzungen und XSD-Version vor PAC-Neusendung korrigieren.
CFDI-Fehler 307 bedeutet, dass das Rechnungs-XML die Schema-Validierung des SAT vor oder während des PAC-Timbrados nicht bestanden hat. Im Gegensatz zu Geschäftsregeln oder Zertifikatsfehlern (401) ist 307 strukturell: Die Datei entspricht nicht dem offiziellen XSD für Belegversion, Ergänzungen oder Katalogschlüssel. Ohne gültiges Schema gibt es keinen TimbreFiscalDigital und keine UUID.
Typische Auslöser: SAT-Schema-Updates, ERP-Versionsdrift, eigene XML-Vorlagen ohne CFDI 4.0-Abgleich.
Der Fehler
Beim Senden an den PAC kann erscheinen:
307 - Fehler bei der XML-Schema-Validierung
Element ‘cfdi:Comprobante’ ist gemäß XSD ungültig
Attribut ‘Version’ stimmt nicht mit Namespace überein
Manche PAC liefern XPath-Hinweise; andere nur generisches 307 — dann vollständige SAT-Validierung nötig.
Ursache des Problems
Schema-Prüfung erzwingt Knotenreihenfolge, Datentypen, Maximallängen, Namespaces und Ergänzungs-XSD.
Veraltete CFDI-Version oder Namespace
3.3-Vorlage bei 4.0-Timbrado oder falsches schemaLocation. Fehlende ERP-Patches nach SAT-Veröffentlichung.
Fehlende Pflichtattribute
Häufig bei CFDI 4.0: Exportacion, ObjetoImp, RegimenFiscalReceptor, Impuestos-Aufschlüsselung. Tippfehler in Attributnamen.
Fehlstrukturierte Ergänzungen
Eigene XSD für Zahlungen, Carta Porte, Lohn, Außenhandel. Falsche Platzierung unter cfdi:Complemento. Wenn Sie nur den Hauptbeleg im Validator prüfen, der Fehler aber im Ergänzungs-XSD liegt, verschwendet das Team Zeit mit Korrekturen am falschen Knoten. Laden Sie immer das XSD-Paket des jeweiligen Complemento mit.
Häufige CFDI-4.0-Felder nach SAT-Updates
Nach Schema-Revisionen vergessen ERP-Updates oft neue Pflichtfelder auf Konzeptebebene (ObjetoImp, korrekte Impuestos-Kinder) oder auf Empfängerseite (RegimenFiscalReceptor). Vergleichen Sie ein funktionierendes XML derselben Version mit dem abgelehnten Beleg in einem Diff-Tool — Unterschiede in Namespace-Deklarationen springen so sofort ins Auge.
Formatwerte und Integrationen
Komma-Dezimalen, unvollständige Zeitstempel, unescaptes &, RFC mit Leerzeichen. String-Konkatenation ohne Schema-Bibliothek.
Schritt-für-Schritt-Lösung
1. XML und PAC-Meldung isolieren
Abgelehntes XML exportieren, Screenshots mit Datum und RFC sichern.
2. Belegart und XSD bestätigen
Aktuelle Pakete von sat.gob.mx laden.
3. Mit SAT-Tool validieren
Namespaces, fehlende Knoten, ungültige Typen beheben.
4. Kataloge prüfen
Produktschlüssel, CFDI-Nutzung, Regime — manche PAC mappen Katalogfehler auf 307.
5. ERP-Vorlage fixen und testen
Patch einspielen, XML neu erzeugen, Symbol-Rechnung timbrieren, UUID bestätigen. Archivieren Sie Version des ERP-Moduls, PAC-Endpunkt und XSD-Download-Datum im Ticket — bei wiederholtem 307 nach einem SAT-Anhang ist das der schnellste Weg zu erkennen, ob ein Nachzügler-Patch fehlt.
Wenn der PAC nur „307“ ohne Detail liefert
Fordern Sie beim PAC Support das vollständige Validierungsprotokoll an (häufig als XML- oder Text-Log). Parallel validieren Sie lokal mit dem SAT-Schema-Tool. In mehr als der Hälfte der Fälle zeigt das lokale Tool die exakte Zeile, während das ERP-Frontend nur den generischen Code anzeigt.
Vorbeugung
- SAT-Schema-Mitteilungen vierteljährlich verfolgen.
- Test-Timbrado nach ERP-Updates.
- XSD in CI bei eigener XML-Erzeugung.
- Getimbrtes XML nicht manuell ändern.
- Nur aktuelle Ergänzungen aktivieren.
Dokumentieren Sie außerdem, welche CFDI-Version und welcher PAC zum Zeitpunkt des Fehlers aktiv waren. Bei gemischten Umgebungen (Test-PAC vs Produktions-PAC) landet ein korrektes XML gelegentlich auf einem Endpunkt mit älterem Schema-Cache — ein erneuter Versuch nach Cache-Ablauf oder Wechsel zum Produktions-Endpunkt beseitigt scheinbare 307 ohne XML-Änderung.
Zusammenfassung
- 307 = XML entspricht nicht dem XSD von CFDI oder Ergänzung.
- 4.0, Namespaces und Pflichtknoten prüfen.
- SAT-Validierung, Kataloge, ERP-Neugenerierung.
- Testrechnung bestätigt die Behebung.