Vertrag als PDF erstellen
Diese Funktion wandelt strukturierte Angaben – Vertragsparteien, Laufzeit, Leistungen und Klauseln – in ein formatiertes Vertragsdokument im PDF-Format um. Sie richtet sich an Freiberufler, kleine Unternehmen und Vereine, die wiederkehrende Vereinbarungen wie Dienstleistungs- oder Nutzungsverträge ohne Textverarbeitung erstellen möchten. Eine Rechtsberatung ersetzt sie nicht.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Was Sie liefern
Sie tragen die Vertragsparteien mit Namen und Anschrift ein, dazu Laufzeit, Leistungsbeschreibung und die Klauseln, die im Dokument stehen sollen, etwa Kündigungsfrist oder Zahlungsbedingungen. Aus diesen Angaben entsteht automatisch ein durchnummeriertes, sauber formatiertes PDF, das Sie direkt versenden oder ausdrucken können. Eigene Klauseln lassen sich als Freitext ergänzen, wenn eine Standardformulierung nicht passt. So entsteht in wenigen Minuten ein Dokument, für das Sie sonst eine Textverarbeitung öffnen und jeden Absatz einzeln formatieren müssten, samt Seitenrändern, Nummerierung und Unterschriftenzeile.
Was das Tool NICHT ist
Diese Funktion formatiert Ihre Angaben zu einem Dokument, sie prüft deren rechtliche Wirksamkeit nicht und ersetzt keine anwaltliche Beratung. Wer einen Vertrag mit größerem finanziellem Risiko abschließt, etwa einen Mietvertrag über mehrere Jahre oder eine Beteiligung, sollte den Text vor der Unterschrift von einem Anwalt oder einer Anwältin prüfen lassen. Für einfache, wiederkehrende Vereinbarungen zwischen bekannten Parteien reicht die automatische Erstellung in der Praxis meist aus, weil Aufbau und Klauseln ohnehin bekannt sind und nur die konkreten Angaben fehlen.
Format und Ablauf
Die Erstellung läuft im Browser: Sie füllen die Felder aus, das System rendert daraus ein PDF-Dokument mit klarer Gliederung – Präambel, nummerierte Klauseln, Unterschriftenzeile am Ende. Das Ergebnis steht direkt zum Download bereit, wahlweise auch über die API, falls Sie die Erstellung in eine eigene Anwendung einbinden möchten, etwa in eine Auftragsverwaltung, die Verträge automatisch aus Kundendaten erzeugt. Eine Unterschrift leistet das Dokument selbst nicht; es liegt danach unterschriftsbereit vor, entweder zum Ausdrucken oder für ein separates Signaturverfahren.
Preis pro Anfrage
Der Preis beträgt $0.040 pro erstelltem Vertrag, zzgl. $0.001 je zusätzlicher Seite bei längeren Dokumenten. Es gibt kein Abonnement und kein Konto: Sie bezahlen direkt über PayPal, pro Nutzung, und erhalten auf Anfrage eine Rechnung für den Kauf. Der Betrag im Vertrag selbst, etwa eine vereinbarte Vergütung in Euro, hat mit diesem Servicepreis nichts zu tun – der eine steht im Dokument, der andere auf dieser Seite, klar getrennt und in US-Dollar veröffentlicht.
Anwendungsfälle
Dienstleistungsvertrag für Freiberufler
Lukas Fischer, selbstständiger IT-Berater, erstellt für ein neues Projekt bei der Schneider IT-Systeme GmbH & Co. KG in Hamburg einen Dienstleistungsvertrag mit Laufzeit, Stundensatz und Kündigungsfrist – fertig zum Versand, ohne Textverarbeitung.
Geheimhaltungsvereinbarung mit einem Zulieferer
Bevor die Weber Metallbau GmbH aus Stuttgart Konstruktionspläne an einen externen Zulieferer weitergibt, lässt sie eine Geheimhaltungsvereinbarung mit den Namen beider Parteien und der vereinbarten Laufzeit erstellen.
Zusatzvereinbarung zum Mietvertrag
Vermieterin Katrin Baumann ergänzt einen bestehenden Mietvertrag um eine schriftliche Zusatzvereinbarung zur Untervermietung eines Zimmers, mit Datum und Unterschriftenzeile für beide Seiten.
Kaufvertrag zwischen Privatpersonen
Anna Hoffmann verkauft ihr Gebrauchtfahrzeug an Jonas Weber und erstellt dafür einen Kaufvertrag mit Fahrzeugdaten, Kaufpreis und dem Hinweis „gekauft wie gesehen“, den beide vor der Übergabe unterschreiben.
Häufige Fragen
Ersetzt der automatisch erstellte Vertrag eine anwaltliche Prüfung?
Nein. Die Funktion formatiert Ihre Angaben zu einem lesbaren PDF-Dokument, sie bewertet aber nicht deren rechtliche Wirksamkeit. Bei Verträgen mit hohem finanziellem oder rechtlichem Risiko empfehlen wir, den Text vor der Unterschrift prüfen zu lassen.
Welche Vertragsarten lassen sich damit erstellen?
Alle Vertragsarten, die sich aus Parteien, Laufzeit, Leistungsbeschreibung und Klauseln zusammensetzen – etwa Dienstleistungs-, Werk- oder Geheimhaltungsverträge. Sie liefern den Inhalt, das Layout entsteht automatisch.
Was kostet die Erstellung eines Vertrags?
$0.040 pro Dokument, zzgl. $0.001 je zusätzlicher Seite. Es gibt keine versteckten Kosten und keine Abogebühr; bezahlt wird pro Anfrage über PayPal.
Was passiert mit den eingegebenen Vertragsdaten?
Die Angaben werden ausschließlich zur Erstellung des PDF-Dokuments verarbeitet und danach von unseren Servern gelöscht. Namen, Adressen oder Beträge geben wir nicht an Dritte weiter.
Brauche ich ein Konto, um einen Vertrag zu erstellen?
Nein. Es gibt derzeit keine Konten – Sie bezahlen pro Nutzung über PayPal und erhalten auf Anfrage eine Rechnung für den Kauf.
Kann ich eigene Klauseln einfügen, die nicht in der Standardauswahl stehen?
Ja, zusätzlicher Freitext lässt sich als eigene Klausel ergänzen, wenn eine Standardformulierung Ihren Fall nicht abdeckt.
Wird der Vertrag im Dokument bereits unterschrieben?
Nein. Sie erhalten ein unterschriftsbereites PDF mit Unterschriftenzeile; die Unterzeichnung selbst erfolgt außerhalb dieser Funktion, per Hand oder mit einem separaten Signaturwerkzeug.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/pdf/contract \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/contract", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/contract",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/contract", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/contract", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"pdf": "https://ejemplo.com/documento.pdf"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.contract",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 200 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
422 | task_failed | Die Aufgabe ist fehlgeschlagen und wird nicht berechnet. |