firma.de Schenkungsvertrag-API
schenkungsvertragErstellt einen Schenkungsvertrag nach deutschem Recht aus den festen Bausteinen des Schenkungsvertrag-Generators von firma.de: für Geld (Überweisung oder bar), Fahrzeuge und bewegliche Gegenstände, von einem oder zwei Schenkern; Geld und Gegenstände auch an minderjährige Kinder, Fahrzeuge nur an Volljährige. Die Antwort enthält den Vertragstext (offene Angaben als [Platzhalter]), die Hinweise des Generators (Notar, Minderjährige, Bargeld, Rückforderung), einen Schenkungsteuer-Check je Schenker mit Steuerklasse, Freibetrag und 10-Jahres-Regel (allgemeine Steuerinformation), die Frist für die Anzeige beim Finanzamt und einen Link, der den Entwurf im Generator öffnet: Dort tragen die Beteiligten ihre Namen ein, unterschreiben und laden PDF oder Word herunter. Immobilien und GmbH-Anteile gehen nur beim Notar; dafür gibt es keinen Vertragstext, bei Immobilien aber die Kosten für Notar und Grundbuch. Kostenlos, ohne Schlüssel.
POST mit JSON: flach mit denselben Namen wie bei GET oder verschachtelt wie draft in der Antwort (Schenker unter donors.donor1 und donors.donor2, nie als Liste). Fehlende Felder und null lassen den Standard stehen, "" leert ein Text- oder Datumsfeld. Persönliche Angaben gehen nur hier. format und draft gehen auch im Body.
Antwortet auf Deutsch, als Text oder JSON. Der Rechner für Menschen: https://www.firma.de/schenkungsvertrag/ – REST: https://www.firma.de/api/schenkungsvertrag/
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | adult (Standard), under7 (unter 7 Jahren) oder from7 (7 bis 17); auch das Alter in Jahren von 0 bis 130: 0 bis 6 = under7, 7 bis 17 = from7, ab 18 = adult. Ein Geburtsdatum geht vor: Es zählt das Alter am Vertragsdatum, ohne Vertragsdatum das von heute. | |
| vin | No | Fahrzeug-Identifizierungsnummer (FIN), beim E-Bike die Rahmennummer. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| date | No | Bei mode=transferred: Tag der Überweisung; bei cashHandover=past: Tag der Übergabe. | |
| iban | No | IBAN des Beschenkten (optional). Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| item | No | ||
| keys | No | Anzahl der Fahrzeugschlüssel. | |
| make | No | Marke des Fahrzeugs. | |
| mode | No | Bei subject=money: transferred (schon überwiesen, Standard), transferSoon (wird überwiesen, höchstens 30 Tage nach der Unterschrift) oder cash (bar); auch ueberwiesen, wirdueberwiesen, bar. | |
| donee | No | ||
| donor | No | Name des (ersten) Schenkers. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| draft | No | Ein Link des Generators (…/schenkungsvertrag/#sv=…) oder nur der Teil nach #sv= als Ausgangspunkt; weitere Parameter ändern ihn. In einer GET-Adresse das # als %23 schreiben, sonst kommt der Entwurf nicht an. Ein Link mit persönlichen Angaben geht nur per POST, dort auch ein Entwurf als Objekt, etwa draft aus einer früheren Antwort. | |
| model | No | Modell des Fahrzeugs. | |
| money | No | ||
| place | No | Ort der Unterschrift. | |
| plate | No | Kennzeichen; beim E-Bike das Versicherungskennzeichen eines S-Pedelecs, bei other ein Kennzeichen der Zulassungsbehörde (dann wie ein zugelassenes Fahrzeug, mit FIN) oder ein Versicherungskennzeichen, etwa eines Mofas. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| right | No | Nur bei subject=property: none (Standard), niessbrauch oder wohnrecht, das der Schenker behält. | |
| value | No | Verkehrswert des Fahrzeugs oder Gegenstands in ganzen Euro. | |
| amount | No | Geldbetrag in Euro, 1 € bis 100.000.000 €. | |
| donor2 | No | Name des zweiten Schenkers; setzt zwei Schenker. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| donors | No | ||
| estate | No | Nur bei marriage=guetergemeinschaft: jointAdmin (gemeinsam verwaltetes Gesamtgut, Standard: beide Ehegatten schenken je zur Hälfte), soleAdmin (der Schenker verwaltet allein, der Ehegatte stimmt zu) oder reserved (Vorbehaltsgut); auch gemeinsam, allein, vorbehaltsgut. | |
| format | No | md (Standard): die Antwort als lesbarer Text mit Link in den Rechner, kurz genug für den Chat. json: alle Werte als JSON. | md |
| clauses | No | ||
| custody | No | Bei Minderjährigen: joint (beide Eltern, Standard) oder sole (ein Elternteil allein). | |
| dueDate | No | Bei mode=transferSoon: spätester Tag der Überweisung, höchstens 30 Tage nach der Unterschrift; später ist es ein Versprechen für den Notar (blocked). | |
| mileage | No | Kilometerstand (optional). | |
| ownHalf | No | Zwei Schenker außerhalb des Gesamtguts: Die Hälfte des ersten Schenkers stammt aus seinem eigenen Vermögen. Ohne beide Bestätigungen ist der Vertrag nicht vollständig, und der Steuer-Check ist eine grobe Schätzung. | |
| purpose | No | Nur bei Geld: none (Standard), wish (Verwendungswunsch) oder auflage (verpflichtend). Eine Auflage, eine Wohnung, ein Haus oder ein Grundstück zu kaufen, wird zum Wunsch. | |
| signing | No | ||
| special | No | none (Standard: die Schenkung wird jetzt vollzogen), future (erst später versprochen), recurring (regelmäßige Zahlungen), onDeath (erst nach dem Tod), wholeAssets (das ganze Vermögen oder ein Bruchteil) oder mixed (mit Gegenleistung). Alles außer none ist ein Fall für Notar oder Anwalt (blocked). | |
| subject | No | Was verschenkt wird: money (Geld; bargeld setzt zugleich mode=cash), vehicle (Fahrzeug), item (beweglicher Gegenstand), property (Immobilie) oder shares (GmbH-Anteile). property und shares gehen nur beim Notar: Die Antwort kommt dann mit blocked: true und ohne Vertragstext. | |
| vehicle | No | ||
| accident | No | Bekannte Unfallschäden eines Fahrzeugs mit Zulassung als Text; keine heißt: keine bekannt. | |
| financed | No | Das Fahrzeug ist finanziert oder gehört als Sicherheit der Bank: blocked. | |
| handover | No | ||
| itemKind | No | household (Hausrat), jewelry (Schmuck), preciousMetal (Gold, Silber, Münzen, Edelsteine), art (Kunst), watch (Uhr) oder other (Standard). | |
| marriage | No | Güterstand des Schenkers: unknown (Standard), single, zugewinn, guetergemeinschaft oder guetertrennung. Entscheidet über die Zustimmung des Ehegatten und die Anrechnung auf den Zugewinn. | |
| ownHalf2 | No | Wie ownHalf, für den zweiten Schenker. | |
| property | No | ||
| relation | No | Was der Beschenkte für den Schenker ist: spouse, child, stepchild, grandchild, greatGrandchild, parent, grandparent, sibling, nieceNephew, stepParent, childInLaw, parentInLaw, exSpouse, auntUncle, partner oder other; auch deutsch als Bezeichnung des Beschenkten aus Sicht des Schenkers (ehefrau, tochter, sohn, enkel, urenkel, bruder, nichte, schwiegersohn, freundin …). Wörter für den Schenker (oma, vater, tante …) beantwortet die API mit 400 relationDirection: ‚Oma schenkt Enkel‘ heißt relation=grandchild. | |
| zugewinn | No | none (Standard), anrechnen oder nichtAnrechnen; nur an den Ehepartner in der Zugewinngemeinschaft. | |
| holderAge | No | Bei subject=property mit right: Alter des Berechtigten, bei mehreren des Jüngsten. | |
| relation2 | No | Was der Beschenkte für den zweiten Schenker ist, Werte wie relation; setzt zwei Schenker. | |
| taxPaidBy | No | donee (Standard) oder donor: Der Schenker übernimmt die Steuer, die dann als weitere Schenkung mitzählt (§ 10 Abs. 2 ErbStG). | |
| twoDonors | No | ||
| identifier | No | Seriennummer, Punze oder Zertifikat des Gegenstands (optional). Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| priorGifts | No | Frühere Schenkungen des ersten Schenkers an den Beschenkten, für die 10-Jahres-Regel: per GET als YYYY-MM-DD:Wert[:gezahlte Steuer], mehrere mit ; getrennt (2018-03-15:450000:3500); per POST als Liste von { date, value, taxPaid }. Höchstens 5. Wert ist der steuerliche Wert von damals, vor dem Freibetrag. | |
| revocation | No | Rückforderungsrecht als Liste mit Komma: resale, predecease, insolvency, auflage, divorce (auch verkauf, vorversterben, insolvenz, auflage, scheidung). Nicht für Minderjährige und nicht für eine schon vollzogene Schenkung ohne agreedBeforeExecution. | |
| ausstattung | No | true: Das Geld ist eine Ausstattung (§ 1624 BGB); nur Geld an ein Kind. | |
| pflichtteil | No | none (Standard), anrechnen oder nichtAnrechnen; nur wenn der Beschenkte einen Pflichtteil haben kann (Kind, Enkel, Urenkel, Ehepartner, Elternteil). | |
| priorGifts2 | No | Wie priorGifts, für den zweiten Schenker. | |
| signingDate | No | Datum der Unterschrift; ohne Angabe heute (Europe/Berlin). | |
| vehicleKind | No | car (Standard), motorcycle, camper, ebike oder other. | |
| ausgleichung | No | none (Standard), anordnen oder ausschliessen; nur bei Kindern, Enkeln und Urenkeln. | |
| basicSupport | No | Der Schenker bezieht Grundsicherungsgeld (früher Bürgergeld), Grundsicherung im Alter, Hilfe zur Pflege oder Sozialhilfe oder wird sie voraussichtlich brauchen; nur für einen Hinweis. | |
| cashHandover | No | Bei mode=cash: atSigning (bei der Unterschrift, Standard) oder past (schon früher, Tag in date). | |
| deregistered | No | Das Fahrzeug ist abgemeldet (außer Betrieb gesetzt); nur bei car, motorcycle und camper. | |
| doneeAddress | No | Anschrift des Beschenkten in einer Zeile. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| donorAddress | No | Anschrift des Schenkers in einer Zeile. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| handoverDate | No | Bei handover=past: Tag der Übergabe. | |
| handoverTime | No | Uhrzeit der Übergabe als HH:MM (optional). | |
| purposeLabel | No | Der Zweck in wenigen Worten, etwa Studium. Nennt er den Erlass eines Darlehens, ist die Antwort gesperrt (subjectNotCovered): Den deckt die API noch nicht ab. | |
| donor2Address | No | Anschrift des zweiten Schenkers. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| propertyValue | No | Nur bei subject=property: Verkehrswert der Immobilie in ganzen Euro; damit nennt die Antwort die Kosten für Notar und Grundbuch. | |
| spouseConsent | No | Zustimmung des Ehegatten des Schenkers: per GET true oder false (die Zeile mit leerem Namen), per POST sein Name. Name: Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| doneeBirthDate | No | Geburtsdatum des Beschenkten, ab 1900; bei Minderjährigen nötig; es bestimmt das Alter am Vertragsdatum, ohne Vertragsdatum am heutigen Tag. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| donorBirthDate | No | Geburtsdatum des Schenkers (optional), ab 1900. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| parentDeceased | No | Nur bei relation=grandchild: Der Elternteil des Enkels, also das Kind des Schenkers, ist vor der Schenkung gestorben; dann gilt der Freibetrag eines Kindes. | |
| toDoneeAccount | No | Das Geld geht auf ein Konto des Beschenkten (Standard true); bei Minderjährigen auf ein Konto auf den Namen des Kindes, dann Pflicht. | |
| donor2BirthDate | No | Geburtsdatum des zweiten Schenkers (optional), ab 1900. Nur per POST im JSON-Body; in einer GET-Adresse antwortet die API mit 400 personalData. | |
| purposeDeadline | No | Bei purpose=auflage: bis wann das Geld verwendet wird (optional). | |
| relationChanged | No | Das Verhältnis hat sich seit einer früheren Schenkung geändert, etwa durch Heirat: Der Steuer-Check ist dann eine grobe Schätzung. | |
| representative1 | No | Bei Minderjährigen: der gesetzliche Vertreter. donor1 oder donor2 verknüpft einen Schenker, der Elternteil ist (geht per GET); ein Name nur per POST. | |
| representative2 | No | Wie representative1, für den zweiten Elternteil bei gemeinsamem Sorgerecht. | |
| firstRegistration | No | Erstzulassung als Datum, ab 1900 (optional). | |
| agreedBeforeExecution | No | Bei einer schon vollzogenen Schenkung (transferred, cashHandover=past, handover=past): Die Vereinbarungen wurden vorher getroffen. Nur dann bleiben Rückforderungsrecht, Auflage und Anrechnungen stehen, und der Vertrag hält das fest. |