Vollmacht für Dritte mit Nect
Stellen Sie einen Antrag im Namen eines Dritten, verlangt das KBA eine qualifiziert unterschriebene Vollmacht des Halters. Das gilt für Halteränderung, Umschreibung, beide Wiederzulassungen, Neu- und Tageszulassung. Die Außerbetriebsetzung kennt keine Vollmacht — ein Antrag mit powerOfAttorney wird dort mit 400 abgewiesen.
Zwei Wege führen zur Vollmacht, und ein Antrag nutzt genau einen davon:
| Weg | Im Antrag | Wer prüft vor dem Versand |
|---|---|---|
| Vollmachtsvorgang über den Vertrauensdienst Nect | powerOfAttorney.processId | die Schnittstelle gleicht Vollmacht, festgestellte Identität und Antrag ab |
| Selbst beschaffte, qualifiziert unterschriebene PDF | powerOfAttorney.documentBase64 | die Schnittstelle prüft die Formularfelder, sofern sich die PDF als Formular lesen lässt; eine PDF ganz ohne Signatur weist sie mit 400 ab; ob Signatur bzw. Siegel qualifiziert und gültig sind, prüft erst das KBA |
processId und documentBase64 zugleich — oder powerOfAttorney ohne beides — beantwortet die Schnittstelle mit 400.
Ablauf mit Nect
- Vorgang anlegen:
POST /powerOfAttorneysmit Vollmachtgeber, Bevollmächtigtem, E-Mail und Fahrzeug. Die Schnittstelle füllt das amtliche Vollmachtsformular und legt den Vorgang bei Nect an. - Signaturlink weitergeben: Die Antwort enthält
id,status: "offen"undsignatureUrl. Nect lädt den Vollmachtgeber nicht selbst ein. Ob die Instanz eine Einladung per E-Mail schickt, hängt an ihrer Einrichtung; scheitert sie, steht der Grund innote. Verlassen Sie sich aufsignatureUrl. - Identifizieren und unterschreiben: Der Vollmachtgeber weist sich bei Nect aus und unterschreibt qualifiziert.
- Rücksprung: Danach leitet Nect ihn auf die Rücksprungseite, die die Instanz dafür bereithält (
/vollmacht/signiert/{id}). Sie nennt nur den Zustand des Vorgangs — keinen Namen, keine Anschrift, kein Fahrzeug. - Stand abfragen:
GET /powerOfAttorneys/{processId}. Ist der Vorgang noch offen, fragt die Schnittstelle zuerst bei Nect nach. Für Vollmachtsvorgänge gibt es kein Webhook-Ereignis — fragen Sie ab. - Antrag stellen, sobald
readyForApplicationtrueist: mitpowerOfAttorney.processId.vehicleHolderdürfen Sie weglassen; der Halter kommt aus den Daten, die Nect festgestellt hat. AuchpowerOfAttorney.representativeund die Lieferangaben dürfen fehlen: Dann übernimmt die Schnittstelle Bevollmächtigten und Zustellweg der ZB I aus der unterschriebenen Vollmacht (einen Dritten als Lieferungsempfänger). Geben Sie sie selbst an, werden sie nicht überschrieben, sondern wie bisher mit der Vollmacht abgeglichen.
Vorgang anlegen
| Feld | Regel |
|---|---|
principal | Pflicht — der Vollmachtgeber, also der künftige bzw. eingetragene Halter; Aufbau wie vehicleHolder. Straße, Hausnummer, fünfstellige Postleitzahl und Ort sind Pflicht; bei natürlichen Personen auch dateOfBirth und placeOfBirth, bei juristischen Personen occupationKey (Wirtschaftszweig) — außer bei einer Behörde, siehe Vollmachtgeber. Fehlt etwas, antwortet die Schnittstelle mit 400, bevor unterschrieben wird |
representative | Pflicht — der Bevollmächtigte, also Sie, mit Anschrift; derselbe Wert muss später im Antrag stehen |
email | Pflicht — die Adresse des Vollmachtgebers |
vehicles | Pflicht, 1–10 Einträge mit vehicleIdentificationNumber. Jede FIN des späteren Antrags muss hier stehen. Für die FIN gilt hier dieselbe Regel wie im Antrag — Ziffern und Buchstaben, höchstens 25 Stellen; Sonderzeichen, Steuerzeichen oder Überlänge ergeben 400 mit Feldnamen und Index (vehicles[1].vehicleIdentificationNumber). certificatePartIINumber, manufacturerKey und typeKey werden angenommen, gehen aber nicht ins Formular: Es darf genau eine Fahrzeugidentifikation führen, sonst weist das KBA mit 00306 ab |
bankAccount | optional, nur bei natürlichen Personen: iban, accountHolder, optional bic — dieselbe Form wie im Antrag. Das SEPA-Mandat für die Kfz-Steuer wird dann im selben Vorgang mit unterschrieben, siehe SEPA-Mandat im Vorgang |
customerNumber | optional; Großkunden-ID der Zollverwaltung des Vollmachtgebers, sofern vorhanden (ersetzt das SEPA-Mandat); nur bei juristischen Vollmachtgebern. Form drei Ziffern, Großbuchstabe, vier Ziffern, z. B. 123A4567 — derselbe Wert wie taxDetails.taxLargeCustomerId im späteren Antrag. Nicht Ihre KBA-Kennung und nicht customization.customerNumber |
certificatePartIRecipient, certificatePartIIRecipient | optional; HOLDER, REPRESENTATIVE oder THIRD_PARTY — wohin die Bescheinigungen gehen. Ohne Angabe HOLDER, so wie das KBA ohne Lieferinformation zustellt |
pickup | optional; Unterlagen werden vom Bevollmächtigten abgeholt, mit deliveryRecipient von diesem Dritten — nicht zusammen mit den beiden Empfängerangaben. Holt der Bevollmächtigte selbst ab, sind bis zu zehn Fahrzeuge möglich; holt ein Dritter ab, geht das nur bei genau einem Eintrag in vehicles. Die Fahrzeugtabelle des amtlichen Formulars trägt je Zeile nur den Buchstaben und führt keinen Abholer, deshalb antwortet die Schnittstelle bei mehreren Fahrzeugen mit 400 und nennt als Grund „Die Fahrzeugtabelle kennt keine Abholung durch Dritte — je Fahrzeug eine eigene Vollmacht.". Legen Sie dann je Fahrzeug einen eigenen Vorgang an |
deliveryRecipient | Pflicht bei THIRD_PARTY, sonst nur mit pickup; Name und Anschrift des Dritten wie deliveryRecipient im Antrag |
extendedDataProvision | optional; erlaubt den Empfang der vollständigen Daten der Zulassungsbescheinigung über den Rückkanal. Ohne dieses Kreuz weist die Schnittstelle einen Antrag auf diesen Vorgang mit requestRegistrationData: true mit 400 ab (siehe unten) |
externalOrderId | optional, höchstens 100 Zeichen |
principal.address führt entweder firstName und lastName (natürliche Person) oder companyName (juristische Person) — beides zugleich ergibt 400.
Die Zustellung steht in der Vollmacht. Das KBA verlangt, dass die Lieferempfänger der Vollmacht und des Antrags identisch sind. Die Zustellangabe des späteren Antrags muss deshalb zu den Empfängerangaben passen: ohne Empfängerangabe eine Zustellung an den Halter, bei REPRESENTATIVE eine Zusendung an den Bevollmächtigten, bei THIRD_PARTY eine Zusendung an den deliveryRecipient mit demselben Namen und derselben Anschrift, bei pickup eine Abholung durch den Bevollmächtigten bzw. den Dritten. Passt es nicht, antwortet der Antrag mit 400.
Wie der Antrag das sagt, hängt an der Vorgangsart: Bei den Zulassungsvorgängen bestimmt deliveries den Empfänger, nach der Regel unter Wer die Unterlagen bekommt — ohne deliveries ist es der Halter. Die Halteränderung kennt nur customization.deliveryToHolder; wie es gelesen wird, steht bei der Halteränderung. Eine Abholung lässt sich dort nicht ausdrücken; eine Vollmacht mit pickup passt deshalb nicht zu ihr.
Verglichen wird, wer die Unterlagen wirklich bekommt — dasselbe, was als Lieferadresse in der Nachricht an das KBA steht —, und ob zugestellt oder abgeholt wird. ZusendungHalter mit deliverTo: RECIPIENT ist deshalb eine Lieferung an den Dritten und passt nicht zu einer Vollmacht „an den Halter" (400); umgekehrt passt ZusendungDritter mit deliverTo: HOLDER zu ihr. certificatePartIIRecipient gilt für die Lieferung mit documentType 3 (ZB II), certificatePartIRecipient für alle übrigen Unterlagen samt Plaketten.
Die erweiterte Datenbereitstellung ebenso. requestRegistrationData: true im Antrag verlangt die vollständigen ZB-I- und ZB-II-Daten über den Rückkanal. Trägt die Vollmacht das Kreuz „erweiterte Datenbereitstellung" nicht (extendedDataProvision), antwortet der Antrag mit 400, bevor etwas an das KBA geht: Ohne Einwilligung des Halters ist die Übermittlung nicht zulässig (§ 39 Abs. 3 Satz 2 FZV). Nachträglich lässt sich das Kreuz nicht setzen — es gehört in den Vollmachtsvorgang, bevor unterschrieben wird.
{
"principal": {
"address": {
"firstName": "Erika",
"lastName": "Musterfrau",
"streetName": "Große Straße",
"houseNumber": "1",
"zipCode": "24937",
"cityName": "Flensburg"
},
"dateOfBirth": "1988-03-15",
"placeOfBirth": "Kiel"
},
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
},
"email": "erika@example.de",
"vehicles": [{ "vehicleIdentificationNumber": "WVWZZZ7HZ8H555501" }],
"externalOrderId": "vollmacht-4711"
}{
"powerOfAttorney": {
"id": 1,
"status": "offen",
"provider": "Nect",
"signatureUrl": "https://go.nect.example/abc",
"validUntil": null,
"externalOrderId": "vollmacht-4711",
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555501",
"createdAt": "2026-09-15T09:00:00.000Z",
"updatedAt": "2026-09-15T09:00:00.000Z",
"readyForApplication": false
}
}validUntil ist die Frist, bis zu der der Vollmachtgeber über signatureUrl unterschreiben kann; verstreicht sie ohne Unterschrift, wird der Vorgang verfallen. Gesetzt ist sie nur, wenn die Instanz für Nect Sign eine Frist eingerichtet hat; null heißt, die Schnittstelle hat keine gesetzt — bei Business Sign immer. Mit der Laufzeit der Vollmacht hat das Feld nichts zu tun. vehicleIdentificationNumber nennt nur die FIN des ersten Eintrags in vehicles; die Vollmacht gilt trotzdem für alle Fahrzeuge, die Sie angegeben haben.
| Status | Antwort bei POST /powerOfAttorneys |
|---|---|
200 | Vorgang angelegt — oder, bei einer Wiederholung, der schon offene Vorgang |
400 | Angaben unvollständig oder widersprüchlich. Auch: Nect findet die Firma beim Anlegen nicht im Handelsregister — „Die Firma … wurde im Handelsregister nicht gefunden". Schreiben Sie companyName genau wie im Register, samt Rechtsform, und stoßen Sie einen neuen Vorgang an; der gescheiterte steht als fehlgeschlagen, seine Nummer in powerOfAttorneyId |
403 | auf der Produktionsinstanz: Die Produktion ist für Ihren Mandanten nicht freigegeben, oder er ist abgeschaltet. Es wird nichts angelegt, auch nicht bei Nect |
409 | Für einen juristischen Vollmachtgeber ist kein Vorgang möglich: Business Sign ist nicht eingerichtet oder in der Produktion noch nicht freigegeben. Es wird nichts angelegt; nehmen Sie den Weg über die eigene PDF. Oder: Unter derselben externalOrderId liegt ein offener Vorgang mit anderen Angaben — powerOfAttorneyId nennt ihn |
502 | Nect hat den Vorgang nicht angelegt: gestört, nicht erreichbar oder die Anfrage abgewiesen. Der Grund steht in error. Ein neuer Anstoß hilft nur bei einer Störung (HTTP 5xx, 429) oder einer Zeitüberschreitung; bei einer Abweisung (HTTP 4xx) sind erst die Angaben oder die Einrichtung zu korrigieren. Der Vorgang bleibt als fehlgeschlagen stehen, seine Nummer steht in powerOfAttorneyId |
503 | auf dieser Instanz ist kein Vertrauensdienst eingerichtet, oder er ist fehlerhaft eingerichtet (/health: trustService: misconfigured). Anträge mit eigener PDF und Anträge ohne Vollmacht sind nicht betroffen |
Wiederholen ohne zweiten Vorgang
Bricht die Verbindung ab, bevor die Antwort ankommt, schicken Sie POST /powerOfAttorneys unverändert noch einmal. Die Schnittstelle gibt dann den vorhandenen Vorgang zurück — 200, dieselbe id, derselbe signatureUrl, kein neuer Vorgang bei Nect und keine zweite Einladung —, wenn alles zutrifft:
- derselbe Mandant,
- dieselbe
externalOrderId, - der Vorgang dazu ist noch
offen, - dieselben Angaben: alles, was in das Vollmachtsformular geht, dieselbe
email(Groß- und Kleinschreibung zählt dort nicht) und derselbebankAccount— IBAN ohne Rücksicht auf Leerzeichen und Groß-/Kleinschreibung. Ein neu mitgeschickter, weggelassener oder andererbankAccountzählt als andere Angabe (409).certificatePartIINumber,manufacturerKeyundtypeKeygehen nicht ins Formular und zählen nicht.
Mit anderen Angaben antwortet die Schnittstelle mit 409, legt nichts an und nennt den offenen Vorgang in powerOfAttorneyId. Ohne externalOrderId greift der Schutz nicht; ebenso wenig, wenn der Vorgang nicht mehr offen ist — nach fehlgeschlagen, abgelehnt oder verfallen legt derselbe Aufruf einen neuen an. Eine Frist wie beim Doppelantragsschutz der Anträge gibt es nicht.
Namen jenseits von Latin-1
Namen mit polnischen, türkischen, ungarischen, vietnamesischen, griechischen oder kyrillischen Zeichen — Łukasz, Işık, Csőke, Nguyễn, Ελένη, Фёдор — gehen unverändert in das amtliche Formular. Es trägt dafür seit dem 16.09.2026 eine eingebettete Unicode-Schrift; bis dahin scheiterte das Befüllen an ihnen. Die Feldwerte selbst bleiben, wie Sie sie senden — das Prüfmodul des KBA liest sie maschinell aus.
Ein Zeichen, das auch diese Schrift nicht führt (ein Emoji etwa), wird im Abbild als Ersatzzeichen gezeichnet; der Feldwert bleibt trotzdem der Ihre.
Längen. Ein Wert, der nicht in sein Formularfeld passt, ergibt 400 und nennt Feld, Länge und Grenze — etwa Vollmachtgeber_Postleitzahl (6 Zeichen, höchstens 5). Die Grenze ist die der Vorlage, sonst die des XKfz-Schemas.
Natürliche und juristische Person
Natürliche Person (firstName + lastName): Nect Sign. Der Vollmachtgeber weist sich mit seinem Ausweis aus. Die festgestellten Daten — Name, Geburtsdatum, Geburtsort, Anschrift — werden zu den Halterdaten des Antrags.
Juristische Person (companyName ohne lastName): Nect Business Sign. Es unterschreibt eine vertretungsberechtigte Person — bei Gesamtvertretung mehrere, siehe unten —, und Nect gleicht die Firma mit dem Handelsregister ab. Halter ist dann die Firma mit Name und Anschrift aus dem Register; die Daten der unterschreibenden Person gehen nicht in den Antrag. holderDataProvenance.identitySource ist Handelsregister. Die Angaben in principal müssen zum Registereintrag passen, sonst weist der spätere Antrag mit 400 ab. Nect sucht die Firma schon beim Anlegen über ihren Namen: Schreiben Sie companyName genau wie im Handelsregister, samt Rechtsform — findet Nect sie nicht, antwortet bereits POST /powerOfAttorneys mit 400.
Business Sign in der Produktion vorerst aus. In der Testumgebung von Nect haben Firmenvorgänge nach der Unterschrift nicht zuverlässig abgeschlossen. Auf der Produktionsinstanz legt die Schnittstelle für juristische Vollmachtgeber deshalb vorerst keinen Vorgang an: POST /powerOfAttorneys antwortet mit 409 und legt nichts an. Dasselbe gilt auf jeder Instanz, auf der Business Sign nicht eingerichtet ist. Die Firma reicht ihre Vollmacht dann als eigene, qualifiziert gesiegelte PDF ein — siehe Alternative: eigene PDF. Ob eine Instanz Firmen über Business Sign führt, zeigt /health in trustServiceLegalPersons (available, disabled oder missing). Geben Sie principal.occupationKey mit, den Wirtschaftszweig aus dem KBA-Verzeichnis SV 5: Er steht in der Vollmacht, und der spätere Antrag übernimmt ihn.
Gesamtvertretung. Verlangt das Handelsregister die Unterschrift mehrerer vertretungsberechtigter Personen, bindet Business Sign sie alle ein — jede bekommt ihren eigenen Link. Die Antwort auf POST /powerOfAttorneys führt trotzdem nur einen einzigen signatureUrl; die Links der weiteren Unterzeichner gibt die Schnittstelle nicht heraus. Der Vorgang bleibt offen mit readyForApplication: false, bis alle unterschrieben haben — ein länger offener Firmenvorgang ist deshalb kein Fehler.
Vollmachtgeber
Die Schnittstelle füllt für juristische Personen die Vorlage des KBA vom 10.06.2026 aus. Die führt den Vollmachtgeber in vier Blöcken, und befüllt werden darf genau einer. Welcher, sagt principal.partyType:
partyType | Block der Vorlage |
|---|---|
ohne Angabe, LEGAL_PERSON | Vollmachtgeber_JurPerson_* |
AUTHORITY | Vollmachtgeber_Behoerde_* |
SOLE_TRADER mit companyName | Vollmachtgeber_Einzelunternehmer_* |
ASSOCIATION | hier nicht möglich — siehe unten |
Ein Einzelunternehmer ohne Unternehmensnamen ist eine natürliche Person und bekommt die Vorlage für natürliche Personen — nur sie führt Geburtsdatum und Geburtsort.
Der Wirtschaftszweig bei einer Behörde. Der Block Vollmachtgeber_Behoerde_* führt den Wirtschaftszweig als freiwilliges Feld; POST /powerOfAttorneys verlangt principal.occupationKey deshalb nicht. Der spätere Antrag verlangt ihn: Das KBA fordert für jeden Halter außer der Privatperson einen Schlüssel aus dem Verzeichnis SV 5 (00305). Geben Sie ihn also spätestens im Antrag als vehicleHolder.occupationKey mit — oder gleich in der Vollmacht, dann übernimmt ihn der Antrag.
Vereinigung: nur mit eigener gesiegelter Vollmacht
principal.partyType: ASSOCIATION ergibt 400. Der Vertrauensdienst stellt nur eine natürliche Person oder eine Firma aus dem Handelsregister fest, nie eine Vereinigung. Der Halter eines Antrags über processId stammt aber ausschließlich aus dieser Feststellung — er trüge damit zwangsläufig eine andere Art als die unterschriebene Vollmacht, und der Abgleich wiese den Antrag ab, nach Identifizierung, Unterschrift und Gebühr.
Eine Vereinigung als Halterin geht deshalb so:
- Die amtliche Vorlage vom 10.06.2026 im Dashboard unter „Vollmacht erzeugen" ausfüllen lassen — Vollmachtgeber ist „eine Vereinigung (GbR, Erbengemeinschaft)", der benannte Vertreter gehört in die beiden Vertreterfelder. Das Dashboard füllt damit den Block
Vollmachtgeber_Vereinigung_*samtVollmachtgeber_Vereinigung_Vertreter_Nachname/_Vorname. Das PDF dann unterschreiben und qualifiziert siegeln lassen. - Den Antrag mit
powerOfAttorney.documentBase64stellen und den Halter selbst angeben:vehicleHolder.partyType: ASSOCIATION, den Namen der Vereinigung inaddress.companyName, den Vertreter inassociationRepresentative.
Ohne Dashboard füllt dasselbe Formular unser Abnahmewerkzeug aus (scripts/abnahme-lauf.ts vollmacht-pdf <Fall> <Datei>): Es befüllt den Block Vollmachtgeber_Vereinigung_*, ohne einen Vorgang beim Vertrauensdienst anzulegen. Gesperrt ist allein der Vorgang, nicht das Formular.
Der Abgleich gegen die Vollmacht läuft dann wie sonst auch. Als Vertreter nimmt das Formular allein eine natürliche Person: Führt der Antrag dort eine juristische Person (associationRepresentative.companyName), meldet der Abgleich eine Abweichung — im XML-Antrag ohne Vollmacht ist sie zulässig.
Ein benannter Vertreter bindet beide Papiere. Vollmachtgeber_Vereinigung_Vertreter_Nachname und _Vorname im gesiegelten Formular und vehicleHolder.associationRepresentative.lastName und .firstName im Antrag müssen gleich lauten. Beide Seiten dürfen ihn weglassen; nennt ihn nur eine — und sei es nur mit dem Vornamen — oder weichen die Namen ab, antwortet die Schnittstelle mit 400, bevor etwas an das KBA geht. Verglichen wird ohne Rücksicht auf Groß- und Kleinschreibung und mehrfache Leerzeichen; Umlaute und Akzente zählen dagegen („Müller" ist nicht „Mueller").
Ob Nect eine Behörde, einen Einzelunternehmer ohne Registereintrag oder eine Vereinigung ohne Handelsregisterabgleich unterschreiben lässt, ist mit dem Vertrauensdienst zu klären; die Vollmacht lässt sich sonst nur als eigene, qualifiziert gesiegelte oder signierte PDF beibringen (siehe unten).
Ein Vorgang für eine Firma. companyName ist hier ein Platzhalter: Nect sucht die Firma beim Anlegen über diesen Namen im Handelsregister. Setzen Sie deshalb eine Firma ein, die dort eingetragen ist, geschrieben wie im Register — ein erfundener Name wie in den übrigen Beispielen dieser Dokumentation scheitert schon beim Anlegen.
{
"principal": {
"address": {
"companyName": "FIRMENNAME WIE IM HANDELSREGISTER",
"streetName": "Am Bahnhof",
"houseNumber": "15",
"zipCode": "24983",
"cityName": "Handewitt"
},
"occupationKey": "H01"
},
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
},
"email": "geschaeftsfuehrung@firma.example",
"vehicles": [{ "vehicleIdentificationNumber": "WVWZZZ7HZ8H555502" }],
"customerNumber": "123A4567"
}Rücksprung und Status
status | Bedeutung |
|---|---|
offen | angelegt, noch nicht unterschrieben |
signiert | unterschrieben; das signierte Dokument liegt bei der Schnittstelle |
abgelehnt | beim Vertrauensdienst ohne Erfolg abgeschlossen: Der Vollmachtgeber hat abgelehnt, oder Identifizierung oder Unterschrift sind gescheitert, möglicherweise weil die Angaben aus principal nicht zum Ausweis passen. note nennt einen Grund nur, wenn der Anbieter einen liefert, bei Nect Sign in der Regel nicht. Der Vorgang ist endgültig; prüfen Sie principal und stoßen Sie einen neuen an |
verfallen | abgelaufen oder vom Anbieter abgebrochen |
fehlgeschlagen | beim Anlegen gescheitert, oder ein Vorgang aus der Nect-Testumgebung, nachdem die Instanz auf die Nect-Produktion umgestellt wurde. note nennt den Grund |
signiert allein genügt nicht. Maßgeblich ist readyForApplication:
missingHolderFieldsnennt die Halterfelder, die Nect nicht festgestellt hat — als Feldnamen (Vorname,Nachname,Firmenname,Straße,Hausnummer,Postleitzahl,Ort), nie als Werte. Der typische Fall ist die Identifizierung per Reisepass: Ein Pass führt keine Anschrift. Nach dem BMDV-Schreiben vom 25.04.2024 darf sie nicht aus Ihren Angaben ergänzt werden; ein Antrag auf diesen Vorgang antwortet mit409. Aussagekräftig ist die Liste erst beisigniert. Solange der Vorgangoffenist, hat Nect noch nichts festgestellt, und sie kann alle Felder nennen — bei einer Firma auchVornameundNachnamestattFirmenname. Das ist dann kein Befund.blockingIssuesnennt Mängel des Vorgangs selbst, etwa ein fehlendes signiertes Dokument.holderDataProvenancebelegt, wer die Halterdaten wann geliefert hat, samt SHA-256-Fingerabdruck über die gelieferten Felder.
readyForApplication heißt vollständig, nicht stimmig. Die unterschriebene Vollmacht enthält Ihre Angaben aus principal. Der Antrag vergleicht sie mit den Daten, die Nect festgestellt hat: bei natürlichen Personen Vor- und Nachname, Geburtsdatum und Geburtsort, dazu Straße, Hausnummer, Postleitzahl und Ort. Groß- und Kleinschreibung und mehrfache Leerzeichen zählen nicht, sonst jedes Zeichen. Weicht etwas ab, antwortet der Antrag mit 400 und nennt das Feld. Die unterschriebene Vollmacht lässt sich nicht mehr ändern, und auch ein vehicleHolder im Antrag hilft dann nicht: Stoßen Sie einen neuen Vorgang mit korrigiertem principal an. Geben Sie deshalb dateOfBirth und placeOfBirth immer mit und schreiben Sie Name und Anschrift wie im Ausweis, ohne Abkürzungen wie „Str.“.
Die festgestellten Personendaten selbst gibt die Schnittstelle nicht heraus.
{
"powerOfAttorney": {
"id": 1,
"status": "signiert",
"provider": "Nect",
"signatureUrl": "https://go.nect.example/abc",
"validUntil": null,
"externalOrderId": "vollmacht-4711",
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555501",
"createdAt": "2026-09-15T09:00:00.000Z",
"updatedAt": "2026-09-15T09:31:12.000Z",
"readyForApplication": true,
"holderDataProvenance": {
"provider": "nect-sign",
"providerProcessId": "5614f9cf-2c1e-4b7a-9d3e-0a8f6b2c4d71",
"verifiedAt": "2026-09-15T09:30:00.000Z",
"fingerprint": "3b1f0c7a9e5d2b8f4a6c1e0d9b7a5f3c2e1d0b9a8f7e6d5c4b3a2f1e0d9c8b7a"
}
}
}Antrag mit Vollmachtsvorgang
Eine Neuzulassung auf die Vollmachtgeberin aus dem Beispiel oben — ohne vehicleHolder:
{
"externalOrderId": "neuzulassung-vollmacht-4711",
"email": "erika@example.de",
"customization": {
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555501",
"licensePlateAssignment": { "plateType": "Z" },
"vehicleRegistrationCertificatePartII": { "securityCode": "BgDwroY6tly4" },
"insuranceConfirmationNumber": "R245654"
},
"powerOfAttorney": {
"processId": 1,
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
}
},
"bankAccount": { "iban": "DE02200505501015871393", "accountHolder": "Erika Musterfrau" },
"sepaMandateBase64": "JVBERi0xLjcKJSVFT0YK",
"taxDetails": { "paymentInterval": "jaehrlich" }
}Die Regeln:
- Bei Zulassungen gelten die Halterdaten des Vertrauensdienstes (Umschreibung, Wiederzulassung, Neu- und Tageszulassung). Schicken Sie
vehicleHoldertrotzdem mit, ersetzt die Schnittstelle Name, Geburtsangaben und Anschrift durch die festgestellten; übernommen werden nuroccupationKeyundaddress.gender, die kein Vertrauensdienst feststellt — bei einer Firma nuroccupationKey. OhneoccupationKeygilt der in der Vollmacht unterschriebene Wirtschaftszweig;vehicleHolder: { "occupationKey": "G01" }allein genügt, sofern es der unterschriebene Schlüssel ist. Nennt der Antrag einen abweichenden, antwortet die Schnittstelle mit400und nennt beide Schlüssel — nichts geht an das KBA; am sichersten lassen Sie ihn weg. Dieselbe Übereinstimmung prüft der Abgleich auch an einer mitgebrachten PDF (siehe Alternative: eigene PDF). Fehlt er bei einer Firma an beiden Stellen,400. Die Vorgangsauskunft zeigt den gesendeten Halter. - Bei der Halteränderung ist die neue Anschrift der Antrag. Nennen Sie
vehicleHolder, muss sie der festgestellten Anschrift entsprechen — sonst400. Der Ausweis des Halters muss also schon umgemeldet sein. - Die unterschriebene Vollmacht wird gegen den Antrag abgeglichen: Formularregeln des KBA, Halter, Bevollmächtigter (
representative), FIN und Zustellung. Weicht etwas ab, antwortet die Schnittstelle mit400und nennt das Feld — bevor irgendetwas an das KBA geht. Vorgänge, die vor dem 15.09.2026 befüllt wurden, führen FIN und ZB-II-Nummer zugleich und keine Zustellung; sie werden mit400abgewiesen und sind neu anzustoßen. processIdunbekannt oder bei einem anderen Mandanten:404. Vorgang nicht unterschrieben, unvollständig festgestellt oder mit verändertem Herkunftsnachweis:409.- Testvollmacht in der Produktion: Vorgänge aus der Nect-Testumgebung erkennen Sie an
provider: "Nect (Test)". Beruft sich ein Antrag über einen produktiven GKS-Zugang auf einen solchen Vorgang, antwortet die Schnittstelle mit409, auch nachdem die Instanz auf die Nect-Produktion umgestellt wurde. Dasselbe gilt für jeden Vorgang, solange die Instanz Nect in der Testumgebung betreibt (/healthzeigttrustService: test). Stoßen Sie den Vorgang dann unter der Produktion neu an. - Die Vorgangsauskunft des Antrags führt
holderDataProvenancemitpowerOfAttorneyProcessId,unchanged: trueund dem Zeitpunkt des Abgleichs.
Wann Feldfehler sichtbar werden
Beruft sich ein Antrag auf einen Vollmachtsvorgang, prüft die Schnittstelle zuerst dessen Stand. Taugt er nicht — ist er etwa noch nicht unterschrieben —, antwortet sie mit 409, gleich, was im Antrag sonst fehlt oder falsch ist. Vorher geprüft sind nur die Grundform des Rumpfs (etwa ein fehlendes customization oder processId und documentBase64 zugleich), die Freigabe von Vorgangsart und Produktion und der gewählte GKS-Zugang. Alles andere meldet sich erst nach der Unterschrift: Pflichtfelder und Formate wie eVB, HU, Reservierung oder Lieferangaben und der Abgleich mit der Vollmacht — Halter, Bevollmächtigter, FIN, Zustellung, erweiterte Datenbereitstellung.
Bauen Sie den Antrag deshalb nach den Regeln dieser Dokumentation fertig, bevor Sie den Vollmachtsvorgang anlegen — vor allem die Angaben, die in die Vollmacht eingehen und sich nach der Unterschrift nicht mehr ändern lassen: principal, representative, die FIN in vehicles, die Empfängerangaben, extendedDataProvision und — bei natürlichen Personen — bankAccount für das SEPA-Mandat.
Kommt nach der Unterschrift ein 400, ist nichts angelegt und nichts gesendet, und der Vollmachtsvorgang bleibt verwendbar. Liegt der Fehler im Antrag, korrigieren Sie ihn und schicken ihn mit derselben processId erneut. Einen neuen Vollmachtsvorgang — mit neuer Identifizierung und Unterschrift — brauchen Sie nur, wenn die unterschriebene Vollmacht selbst nicht passt: etwa wenn die festgestellten Halterdaten von principal abweichen, eine FIN nicht darin steht oder der Antrag eine Zustellung, die erweiterte Datenbereitstellung oder eine andere Bankverbindung braucht, als die Vollmacht bzw. das mitsignierte SEPA-Mandat vorsieht.
SEPA-Mandat im Vorgang
Zur Bankverbindung im Antrag gehört das SEPA-Lastschriftmandat für die Kfz-Steuer, und wie die Vollmacht ist es qualifiziert zu signieren (KBA-FAQ „Muss das SEPA-Mandat auch signiert werden?"). Nennen Sie deshalb beim Anlegen bankAccount — dann unterschreibt der Vollmachtgeber beides in einem Durchgang:
{
"principal": {
"address": {
"firstName": "Erika",
"lastName": "Musterfrau",
"streetName": "Große Straße",
"houseNumber": "1",
"zipCode": "24937",
"cityName": "Flensburg",
"countryCode": "D"
},
"dateOfBirth": "1988-03-15",
"placeOfBirth": "Rom"
},
"representative": {
"address": {
"companyName": "POWR GmbH",
"streetName": "Musterweg",
"houseNumber": "2",
"zipCode": "20095",
"cityName": "Hamburg",
"countryCode": "D"
}
},
"email": "erika@example.de",
"vehicles": [{ "vehicleIdentificationNumber": "WVWZZZ7HZ8H123456" }],
"bankAccount": { "iban": "DE02200505501015871393", "bic": "COBADEFFXXX", "accountHolder": "Erika Musterfrau" }
}- Was passiert: Die Schnittstelle befüllt das einheitliche SEPA-Lastschriftmandat der Generalzolldirektion (BMF-Formular 032021) mit Ihren Angaben — Kontoinhaber, IBAN, BIC, Anschrift, FIN und Datum, soweit das Formular sie vorsieht —, rechnet es flach und legt es als zweites PDF in denselben Nect-Vorgang. Die Vollmacht bleibt das erste PDF und unverändert; nach einer Identifizierung sind beide signiert.
- Der Antrag: Mit
powerOfAttorney.processIdundbankAccountentfälltsepaMandateBase64; die Schnittstelle hängt das signierte Mandat als Dokumentart 44 an, dazu die Bankverbindung mit erteilter Einzugsermächtigung. Das gilt für alle Zulassungsvorgänge. IBAN (Leerzeichen egal) und Kontoinhaber (Groß-/Kleinschreibung egal) müssen denen im Mandat entsprechen, sonst400, bevor etwas an das KBA geht. Schicken Sie trotzdem ein eigenessepaMandateBase64, hat es Vorrang. OhnebankAccountim Antrag, etwa mit Großkunden-ID, geht das Mandat nicht mit. - Kontoinhaber = Vollmachtgeber. Das Mandat darf nur der künftige Halter erteilen.
accountHoldermuss jeden Nachnamen und mindestens einen Vornamen ausprincipalenthalten und kein weiteres Wort, Reihenfolge und Komma sind egal (Musterfrau, Erikapasst). Sonst400: Gehört das Konto nicht dem Halter, lassen SiebankAccountweg und schicken im Antrag ein eigenes Mandat alssepaMandateBase64. - Juristische Personen unterschreiben über Business Sign; dort geht kein Mandat mit,
bankAccountergibt400. Im Antrag bleibtsepaMandateBase64odertaxDetails.taxLargeCustomerId. - Weitere
400: IBAN nicht nach ISO 13616, BIC nicht mit 8 oder 11 Stellen,usageaußerSteuer,directDebitMandateGranted: false. 503„SEPA-Mandat-Vorlage nicht eingerichtet", solange die amtliche Vorlage auf der Instanz fehlt;/healthzeigt dannsepaMandateTemplate: missing. Es entsteht kein Vorgang; ohnebankAccountbleibt der Vollmachtsvorgang möglich.
Halteränderung mit Vollmachtsvorgang
Der Vollmachtsvorgang für den Halter mit seiner neuen Anschrift:
{
"principal": {
"address": {
"firstName": "Max",
"lastName": "Muster",
"streetName": "Neue Straße",
"houseNumber": "9",
"zipCode": "74072",
"cityName": "Heilbronn"
},
"dateOfBirth": "1980-05-04",
"placeOfBirth": "Heilbronn"
},
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
},
"email": "max@example.de",
"vehicles": [{ "vehicleIdentificationNumber": "WVWZZZ7HZ8H555503" }],
"externalOrderId": "vollmacht-4712"
}Die Antwort trägt hier die id 2. Der Antrag ohne vehicleHolder übernimmt die festgestellte Anschrift:
{
"externalOrderId": "umzug-vollmacht-4712",
"email": "max@example.de",
"customization": {
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555503",
"licensePlateNumberComponents": { "city": "HN", "middle": "MM", "end": "89" },
"vehicleRegistrationCertificateSecurityCode": "3Kd8Pq2",
"deliveryToHolder": true
},
"powerOfAttorney": {
"processId": 2,
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
}
}
}Eine andere Anschrift als die festgestellte weist die Schnittstelle ab:
{
"externalOrderId": "umzug-vollmacht-4713",
"email": "max@example.de",
"customization": {
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555503",
"licensePlateNumberComponents": { "city": "HN", "middle": "MM", "end": "89" },
"vehicleRegistrationCertificateSecurityCode": "3Kd8Pq2"
},
"vehicleHolder": {
"address": {
"firstName": "Max",
"lastName": "Muster",
"streetName": "Alte Gasse",
"houseNumber": "3",
"zipCode": "74072",
"cityName": "Heilbronn"
}
},
"powerOfAttorney": {
"processId": 2,
"representative": {
"address": {
"companyName": "Autohaus Beispiel GmbH",
"streetName": "Am Markt",
"houseNumber": "1",
"zipCode": "74072",
"cityName": "Heilbronn"
}
}
}
}{
"error": "Die Halterdaten des Antrags weichen von den Angaben ab, die der Vertrauensdienst zum Vollmachtsvorgang 2 geliefert hat (Herkunftsnachweis) — abweichend: Straße, Hausnummer. Nach dem BMDV-Schreiben vom 25.04.2024 gehen die Halterdaten unverändert vom Vertrauensdienst in den Antrag; eine Auswahl der plausibleren Angabe ist nicht zulässig. Der Antrag wurde nicht gestellt. (TraceId: 5e3a9c1b-7d2f-4a60-b8e4-1c9f0d6a2b37)",
"traceId": "5e3a9c1b-7d2f-4a60-b8e4-1c9f0d6a2b37"
}Genau eines von processId und documentBase64:
{
"email": "max@example.de",
"customization": {
"vehicleIdentificationNumber": "WVWZZZ7HZ8H555503",
"licensePlateNumberComponents": { "city": "HN", "middle": "MM", "end": "89" },
"vehicleRegistrationCertificateSecurityCode": "3Kd8Pq2"
},
"powerOfAttorney": {
"processId": 2,
"documentBase64": "JVBERi0xLjcKJSVFT0YK",
"representative": { "address": { "companyName": "Autohaus Beispiel GmbH" } }
}
}Alternative: eigene PDF
Haben Sie die Vollmacht selbst eingeholt, schicken Sie sie als powerOfAttorney.documentBase64 mit, zusammen mit representative und — anders als beim Vollmachtsvorgang — immer mit vehicleHolder. Ein Beispiel steht bei der Halteränderung.
- Die Datei muss ein PDF sein (beginnt mit
%PDF-) und darf höchstens 8 MB groß sein. - Sie muss qualifiziert elektronisch unterschrieben sein (PAdES): bei einer natürlichen Person mit der qualifizierten elektronischen Signatur des Vollmachtgebers, bei einer juristischen Person entweder mit ihrem qualifizierten elektronischen Siegel oder mit der qualifizierten elektronischen Signatur einer vertretungsberechtigten Person (§ 38 Abs. 4 FZV) — so unterschreibt auch Nect Business Sign. Eine PDF ganz ohne Signatur weist die Schnittstelle vor dem Senden mit
400ab; ob die Signatur qualifiziert und gültig ist, prüft erst das KBA. - Lässt sich die PDF als Formular lesen, prüft die Schnittstelle vor dem Versand dieselben Regeln wie beim Vollmachtsvorgang: die Feldregeln des KBA (genau eine Umfangsoption, genau eine Fahrzeugidentifikation, Zustellung angekreuzt, Pflichtfelder, Postleitzahl, Datumsformat, Laufzeit einer Dauervollmacht) und den Abgleich mit
vehicleHolder,representative, FIN und Zustellung. Ein Verstoß ergibt400. - Bekannte Grenze: eine PDF ohne Formularfelder wird nicht vorab geprüft. Die Prüfung liest die Felder des amtlichen Formulars. Trägt die Datei keine — weil sie eingescannt oder flachgedrückt wurde oder schlicht ein anderes Dokument ist —, geht sie unverändert an das KBA: weder Halter noch FIN noch Zustellung werden vorher abgeglichen, und
200heißt dann nur „angenommen und gesendet", nicht „geprüft". Das Urteil fällt erst das Prüfmodul (99996/00306), nach Gebühr und Wartezeit. Die Verantwortung für den Inhalt liegt in diesem Fall beim Aufrufer; schicken Sie nach Möglichkeit das ausgefüllte amtliche Formular, nicht seinen Ausdruck. - Die Umfangsoption. Das amtliche Formular verlangt genau ein Kreuz: Einzelzulassung oder Mehrfachzulassung — in der Vorlage für juristische Personen zusätzlich Dauervollmacht. Fehlt das Kreuz oder stehen zwei, antwortet die Schnittstelle mit
400. - Dauervollmacht. Nur die Vorlage für juristische Personen kennt sie: Kreuz bei Option 3 und bei „Alle Vorgänge", ein Gültig-bis im Format TT.MM.JJJJ und ein eigener Zustellblock. Führt sie keine Fahrzeuge, entfällt der Abgleich der FIN — sie deckt dann jeden Antrag des Vollmachtgebers ab. Ihre Zustellkreuze müssen trotzdem zur Zustellangabe des Antrags passen, sonst
400. Ein Gültig-bis in der Vergangenheit ergibt400, auch an einer mitgebrachten PDF: Eine abgelaufene Vollmacht deckt den Antrag nicht mehr. Verglichen wird auf Tagesbasis in deutscher Zeit, der letzte Tag selbst gilt noch. Ob eine Dauervollmacht zu lange läuft, entscheidet das KBA; beim Erzeugen im Dashboard ist höchstens ein Jahr möglich. ÜberPOST /powerOfAttorneyslässt sie sich nicht anlegen — der Vorgang verlangt mindestens ein Fahrzeug und kennt kein Laufzeitfeld. Wer eine braucht, erzeugt das Formular im Dashboard unter „Vollmacht erzeugen" (dort „Dauervollmacht gültig bis": nur bei juristischen Personen und Vereinigungen, höchstens ein Jahr und nicht in der Vergangenheit), lässt es qualifiziert siegeln oder von einer vertretungsberechtigten Person qualifiziert signieren und schickt es alspowerOfAttorney.documentBase64. - Für juristische Personen nimmt die Schnittstelle beide Vorlagen des KBA an: die neue vom 10.06.2026 und, solange das KBA sie noch zulässt, die alte. In der neuen Vorlage darf genau einer der Blöcke für den Vollmachtgeber befüllt sein, sonst
400. Zur Wahl stehen juristische Person, Behörde, Einzelunternehmer und Vereinigung. Pflicht sind der Name (beim Einzelunternehmer ersatzweise Vor- und Nachname), Postleitzahl, Ort und Straße oder Postfach. Den Wirtschaftszweig verlangt die Schnittstelle bei jedem Block außer der Behörde. - Welcher Block zu
vehicleHolderpasst: juristische Person, Behörde und Einzelunternehmer mit Unternehmensnamen gehören zucompanyName. Ein Einzelunternehmer ohne Unternehmensnamen gehört zufirstNameundlastName; Geburtsangaben führt dieser Block nicht. Zum Block Vereinigung gehörtvehicleHolder.partyType: ASSOCIATIONmit dem Namen der Vereinigung inaddress.companyNameund dem benannten Vertreter inassociationRepresentative— gesperrt ist allein der Vollmachtsvorgang, nicht der Halter eines Antrags (siehe Vereinigung). Führt die Vollmacht ein Postfach statt der Straße, antwortet die Schnittstelle mit400, denn der Antrag braucht Straße und Hausnummer. - Minderjähriger Vollmachtgeber. Das Kreuz
Option_Minderjaehrigund den Block des gesetzlichen Vertreters führt nur die Vorlage für natürliche Personen. Ist es angekreuzt, verlangt die Schnittstelle den ganzen Block:Vertreter_VornameundVertreter_Nachname,Vertreter_Strasse(ein Postfach genügt hier nicht),Vertreter_Postleitzahl(fünfstellig),Vertreter_Wohnort,Vertreter_Geburtsdatumim Format TT.MM.JJJJ undVertreter_Geburtsort;Vertreter_HausnummerundVertreter_Geburtsnamesind freiwillig. Fehlt ein Pflichtfeld, antwortet der Antrag mit400, und die Vollmacht ist neu zu erstellen und zu unterschreiben. Das KBA verlangt sie in diesem Fall von beiden Elternteilen mit je eigener qualifizierter Signatur (Wissensartikel „Minderjährigkeit bzw. gesetzliche Vertreter") — das prüft, wie jede Signatur, erst das KBA. Über den Vollmachtsvorgang gibt es diesen Fall nicht; ein minderjähriger Vollmachtgeber geht nur über die eigene PDF. - Die Hausnummer ist im Formular optional. Steht sie darin, muss sie zu
houseNumberpassen, mit oder ohneaddressSuffix(„26 a" passt zuhouseNumber26 undaddressSuffixa). Groß- und Kleinschreibung und Leerzeichen zählen dabei nicht. - Der Wirtschaftszweig wird verglichen, sobald die Vollmacht einen führt und der Antrag einen Schlüssel trägt. Weichen sie ab, antwortet die Schnittstelle mit
400. Bei Zulassungen trägt eine natürliche Person ohneoccupationKeyden Schlüssel888: Ein Einzelunternehmer, dessen Vollmacht einen Wirtschaftszweig nennt, schickt ihn deshalb alsvehicleHolder.occupationKeymit. - Das amtliche Formular zum Ausfüllen erzeugt das Dashboard unter „Vollmacht erzeugen". Es füllt die Vorlage für natürliche Personen und, bei einer juristischen Person, den Block
Vollmachtgeber_JurPerson_*— oder, wenn Sie dort „eine Vereinigung (GbR, Erbengemeinschaft)" wählen, den BlockVollmachtgeber_Vereinigung_*samt Vertreter. Behörde und Einzelunternehmer bekommen Sie über den Vollmachtsvorgang (POST /powerOfAttorneysoder im Dashboard „Vollmachtsvorgänge"), woprincipal.partyTypedie Variante wählt.