← Zurück zum Blog

Wem gehört der Code? IP-Rechte und Urheberrecht bei Auftragsentwicklung klären

Wer nach der Auftragsentwicklung wirklich die Rechte am Code hat, ist rechtlich nicht selbstverständlich. Was du vertraglich zu Nutzungsrechten und Quellcode regeln musst.

UrheberrechtVertragIP-Rechte

Du bezahlst für die Entwicklung deiner Software - trotzdem gehört dir der Code danach nicht automatisch. Das überrascht viele Auftraggeber, ist aber die Ausgangslage im deutschen Urheberrecht: Software genießt urheberrechtlichen Schutz nach §69a ff. UrhG, und Urheber ist grundsätzlich die Person, die den Code tatsächlich geschrieben hat - nicht, wer die Rechnung bezahlt hat. Ohne eine klare vertragliche Regelung bekommst du im Zweifel nur das Recht, die Software so zu nutzen, wie es der Vertragszweck unbedingt erfordert - nicht mehr. Was das für dein Projekt bedeutet und worauf du im Vertrag achten musst, zeigt dieser Beitrag.

Der gesetzliche Ausgangspunkt: Urheberrecht bleibt beim Entwickler

Im deutschen Recht ist das Urheberrecht selbst nicht übertragbar - es bleibt immer bei der natürlichen Person, die das Werk geschaffen hat (§29 UrhG). Was du als Auftraggeber erwerben kannst, sind Nutzungsrechte (§31 UrhG): das Recht, die Software zu verwenden, zu vervielfältigen, zu verändern oder weiterzuverkaufen - je nachdem, was vertraglich vereinbart ist. Eine Ausnahme gilt für angestellte Entwickler: Arbeitet die Person, die den Code schreibt, in einem Anstellungsverhältnis bei deinem Entwicklungspartner, gehen die Nutzungsrechte im Zweifel automatisch auf den Arbeitgeber über (§69b UrhG). Bei Freelancern oder Subunternehmern greift diese Regel nicht - dort brauchst du eine explizite Rechteeinräumung im Vertrag mit dem Entwicklungspartner selbst.

Das bedeutet konkret: Ein Werkvertrag über Softwareentwicklung, der nur "Lieferung der Software" regelt, aber nichts zu Nutzungsrechten sagt, lässt vieles offen. Im Streitfall wird dann ausgelegt, was der Vertragszweck "unbedingt erfordert" - und das kann im schlimmsten Fall bedeuten, dass du die Software zwar betreiben, aber nicht durch einen anderen Dienstleister weiterentwickeln lassen darfst, weil dafür keine Bearbeitungsrechte eingeräumt wurden.

Ausschließliche statt einfache Nutzungsrechte vereinbaren

Nutzungsrechte gibt es in zwei Grundformen, und der Unterschied ist für dich geschäftlich entscheidend:

  • Einfaches Nutzungsrecht: Du darfst die Software nutzen, aber der Entwicklungspartner darf denselben Code (oder große Teile davon) auch an andere Kunden verkaufen oder als Grundlage für ähnliche Projekte verwenden.
  • Ausschließliches (exklusives) Nutzungsrecht: Nur du darfst die Software in dem vereinbarten Umfang nutzen - der Entwicklungspartner selbst darf sie nicht mehr an Dritte weitergeben oder wiederverwenden, auch nicht in abgewandelter Form.

Für individuell entwickelte Geschäftssoftware willst du in aller Regel ein ausschließliches, zeitlich und räumlich unbeschränktes Nutzungsrecht - inklusive dem Recht, die Software zu verändern, weiterzuentwickeln und durch Dritte warten zu lassen. Ohne die letzten beiden Punkte (Bearbeitungsrecht, Recht zur Beauftragung Dritter) bist du faktisch an deinen ursprünglichen Entwicklungspartner gebunden, selbst wenn dir formal die Nutzungsrechte gehören.

Quellcode-Herausgabe als eigene vertragliche Pflicht

Nutzungsrechte an der Software nützen dir wenig, wenn du den Quellcode nie in die Hand bekommst. Viele Verträge regeln nur die Lieferung der lauffähigen Anwendung (Binärcode, deploybares Artefakt), nicht aber die Herausgabe des vollständigen, kommentierten Quellcodes inklusive Versionshistorie. Vereinbare deshalb explizit:

  • Herausgabe des vollständigen Quellcodes als eigener Liefergegenstand, nicht nur als Nebenpflicht
  • Zugriff auf das Versionskontrollsystem (z.B. Git-Repository) während und nach Projektende, nicht nur einen einmaligen Export
  • Mitlieferung von Build-Skripten, Konfigurationsdateien und Dokumentation, ohne die der Code allein kaum wartbar ist
  • Bei laufenden Projekten: eine Regelung, wie oft und in welcher Form du Zwischenstände erhältst, damit du nicht erst bei Projektabschluss merkst, dass etwas fehlt

Diese Punkte hängen eng mit der Frage zusammen, was bei einem Anbieterwechsel passiert - dazu mehr im verwandten Beitrag zu Vendor Lock-in.

Open-Source- und Drittkomponenten separat betrachten

Kaum eine moderne Anwendung entsteht komplett ohne Open-Source-Bibliotheken oder Drittanbieter-Frameworks. Diese Komponenten bleiben unter ihrer eigenen Lizenz (MIT, Apache 2.0, GPL und viele weitere) - dein Nutzungsrecht am selbst geschriebenen Code ändert daran nichts. Zwei Punkte solltest du deshalb im Vertrag oder als Projektdokumentation verlangen:

  • Eine vollständige Liste aller eingesetzten Drittkomponenten inklusive ihrer Lizenzen (eine sogenannte Software Bill of Materials, SBOM)
  • Eine Zusicherung, dass keine Komponenten mit copyleft-Lizenzen verwendet wurden, die dich zwingen würden, deinen eigenen proprietären Code offenzulegen, sofern das nicht ausdrücklich gewollt ist

Gerade die GPL-Familie kann hier zur Falle werden: Wird eine GPL-lizenzierte Bibliothek fest in deine Anwendung eingebunden, kann das unter Umständen eine Pflicht zur Offenlegung des gesamten verbundenen Codes auslösen. Für Geschäftssoftware, die du exklusiv nutzen willst, ist das in der Regel unerwünscht - lass dir deshalb die Lizenzprüfung als festen Bestandteil der Qualitätssicherung zusichern.

Subunternehmer und Freelancer der Agentur

Beauftragst du eine Agentur, schreibt oft nicht die Agentur selbst den Code, sondern angestellte Entwickler oder von der Agentur beauftragte Freelancer. Für angestellte Entwickler der Agentur greift §69b UrhG automatisch zu ihren Gunsten als Arbeitgeber - die Agentur kann dir die Rechte also unmittelbar einräumen. Bei Freelancern, die die Agentur als Subunternehmer beschäftigt, gilt das nicht automatisch: Die Agentur muss sich selbst zunächst die entsprechenden Rechte vom Freelancer haben einräumen lassen, bevor sie sie an dich weitergeben kann.

Verlange deshalb im Vertrag mit deinem Entwicklungspartner eine Zusicherung, dass alle eingesetzten Personen - egal ob angestellt oder als Subunternehmer beauftragt - der Agentur die notwendigen Rechte bereits eingeräumt haben, sodass die Rechtekette lückenlos bis zu dir durchgereicht wird. Eine Lücke in dieser Kette wird oft erst sichtbar, wenn es zum Streit kommt - dann kann es zu spät sein, sie zu schließen.

Rechteübergang bei Zahlungsverzug und Vertragsende

Ein Punkt, der in der Praxis häufig übersehen wird: Wann genau gehen die Nutzungsrechte auf dich über? Üblich sind zwei Modelle:

  • Sofortiger Rechteübergang mit Projektstart oder Zahlung einzelner Meilensteine, unabhängig vom Gesamtprojektstatus
  • Aufschiebend bedingter Rechteübergang, bei dem die Rechte erst mit vollständiger Bezahlung des Gesamtprojekts übergehen

Das zweite Modell ist aus Sicht des Entwicklungspartners üblich und nachvollziehbar - er will nicht vorleisten, während du bereits das volle Nutzungsrecht besitzt. Für dich als Auftraggeber ist wichtig, diese Bedingung zu kennen: Solange nicht vollständig bezahlt ist, besitzt du unter Umständen kein oder nur ein eingeschränktes Nutzungsrecht, selbst wenn die Software bereits produktiv läuft. Kläre außerdem, was bei vorzeitiger Vertragsbeendigung passiert - etwa bei Insolvenz des Entwicklungspartners oder einer einvernehmlichen Trennung mitten im Projekt. Ohne Regelung ist unklar, ob du den bis dahin entstandenen Code überhaupt nutzen darfst.

Fazit

Wer den Code bezahlt, besitzt ihn nicht automatisch - im deutschen Urheberrecht bleiben die Rechte am Code zunächst beim Entwickler, sofern nichts anderes vereinbart ist. Ein tragfähiger Vertrag räumt dir ein ausschließliches, unbeschränktes Nutzungsrecht inklusive Bearbeitungsrecht ein, verpflichtet zur Herausgabe des vollständigen Quellcodes, dokumentiert eingesetzte Drittkomponenten und ihre Lizenzen, schließt die Rechtekette bei Subunternehmern lückenlos und regelt eindeutig, wann genau die Rechte auf dich übergehen. Je klarer diese Punkte vor Projektstart im Vertrag stehen, desto weniger Angriffsfläche bleibt später für Streit über etwas, das eigentlich längst dir gehören sollte.

Häufig gestellte Fragen

Gehört mir der Code automatisch, wenn ich die Entwicklung bezahlt habe?

Nein. Im deutschen Urheberrecht bleibt das Urheberrecht bei der Person, die den Code geschrieben hat. Du erwirbst nur die Nutzungsrechte, die im Vertrag ausdrücklich vereinbart sind - ohne klare Regelung im Zweifel nur das, was der Vertragszweck unbedingt erfordert.

Was ist der Unterschied zwischen einfachem und ausschließlichem Nutzungsrecht?

Bei einem einfachen Nutzungsrecht darf der Entwicklungspartner denselben Code auch anderen Kunden verkaufen oder wiederverwenden. Bei einem ausschließlichen Nutzungsrecht darfst nur du die Software in vereinbartem Umfang nutzen, der Entwicklungspartner selbst nicht mehr.

Muss mir der Entwicklungspartner den vollständigen Quellcode aushändigen?

Nur wenn das vertraglich vereinbart ist. Ohne explizite Regelung wird oft nur die lauffähige Anwendung geliefert, nicht der kommentierte Quellcode inklusive Versionshistorie und Build-Skripten. Verlange die Quellcode-Herausgabe als eigenen Liefergegenstand.

Was bedeutet das für Open-Source-Bibliotheken in meiner Software?

Open-Source-Komponenten bleiben unter ihrer eigenen Lizenz, unabhängig von deinem Nutzungsrecht am selbst geschriebenen Code. Verlange eine vollständige Liste aller eingesetzten Komponenten inklusive Lizenzen und eine Prüfung auf copyleft-Lizenzen wie GPL, die unter Umständen eine Offenlegungspflicht für verbundenen Code auslösen können.

Was passiert mit den Nutzungsrechten, wenn ich nicht vollständig bezahlt habe?

Das hängt vom Vertrag ab. Ist ein aufschiebend bedingter Rechteübergang vereinbart, gehen die Rechte erst mit vollständiger Zahlung über - du besitzt dann bis dahin kein oder nur ein eingeschränktes Nutzungsrecht, auch wenn die Software bereits läuft. Kläre diesen Punkt vor Vertragsunterschrift.

Gelten die Rechte auch, wenn ein Subunternehmer der Agentur den Code geschrieben hat?

Nur, wenn die Rechtekette lückenlos ist. Angestellte Entwickler der Agentur räumen ihre Rechte automatisch dem Arbeitgeber ein (§69b UrhG), bei Freelancern als Subunternehmer gilt das nicht automatisch. Verlange eine vertragliche Zusicherung, dass alle eingesetzten Personen der Agentur bereits die notwendigen Rechte eingeräumt haben.

Verwandte Themen

Dieser Artikel bietet allgemeine Informationen und ersetzt keine rechtliche Beratung im Einzelfall. Lass vertragliche und urheberrechtliche Fragen von einer Anwältin oder einem Anwalt prüfen.


Nutzungsrechte und Quellcode-Herausgabe gehören von Anfang an in den Vertrag, nicht erst ins Kleingedruckte am Projektende. Wie Pairlios Festpreis-Modell das absichert. Mehr zur Festpreis-Garantie →