dp
dev.pipe Rechtliches

Rechtliches // TERMS

Allgemeine Geschäftsbedingungen

Die vertraglichen Regeln eines kostenpflichtigen Dienstes sind ein Rechtstext und werden hier nicht entworfen. Was auf dieser Seite steht, ist die technische Seite des Dienstes, aus dem Quelltext gelesen, damit die anwaltliche Ausarbeitung weiß, was hier tatsächlich verkauft wird.

Dienst, für den diese Seite gilt: https://www.devpipe.eu

⚠ DIESE SEITE IST UNVOLLSTÄNDIG UND DARF NICHT LIVE GEHEN

8 offene Lücken auf dieser Seite

Die unten markierten Blöcke sind mit Absicht leer. Sie enthalten rechtliche oder unternehmerische Angaben, die nur der Betreiber und seine Anwältin oder sein Anwalt machen können. Jede davon steht in docs/legal-content-checklist.md.

01Parteien, Geltungsbereich und Vertragsschluss

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Rahmen des Vertrags

Erforderliche Angaben:

  • Der Vertragspartner, identisch mit dem Impressum
  • Ob sich das Angebot nur an Unternehmen richtet oder auch an Verbraucher
  • In welchem Schritt des Bezahlvorgangs der Vertrag zustande kommt
  • Wie diese Bedingungen einbezogen werden und wo die Kundin sie bestätigt
  • Vertragssprache und Ort der Vertragstextspeicherung

Heute verlangt das Frontend an keiner Stelle eine Zustimmung zu Bedingungen; der Bezahlvorgang geht direkt an Stripe.

02Was technisch erbracht wird

Der Dienst beantwortet OpenAI-kompatible Anfragen unter einem API-Key. Ein Test-Key wird nach Bestätigung einer E-Mail-Adresse ausgegeben und läuft von selbst ab. Ein bezahlter Key wird angelegt oder aufgewertet, sobald Stripe einen abgeschlossenen Bezahlvorgang meldet; ein aufgewerteter Test-Key behält seinen Wert, sodass im Entwicklungswerkzeug nichts umkonfiguriert werden muss. Endet ein Abonnement, werden die Keys dieser Kundin in der Datenbank deaktiviert und am Gateway gelöscht.

Werte, mit denen diese Installation tatsächlich läuft

EinstellungWert
Modell für bezahlte Tarifedevpipe-code-1
Modell für Test-Keysdevpipe-code-1-trial
Laufzeit eines Test-Keys (Stunden)48
Anfragen pro Minute im Test20
Tokens pro Minute im Test40000
Gesamt-Tokenbudget eines Test-Keys150000
Wartezeit je E-Mail-Adresse (Tage)30
Laufzeit des Anmelde-Cookies (Tage)7

Belegt in: backend/app/services/onboarding_service.py · backend/app/services/stripe_service.py · backend/app/core/config.py

03Preise, Umsatzsteuer und Rechnungen

Der Preis ist in diesem Quelltext nicht festgelegt. Der Bezahlvorgang verweist auf Preisobjekte bei Stripe; abgerechnet wird also, was dort hinterlegt ist. Die automatische Steuerberechnung von Stripe ist in der Checkout-Sitzung, die der Code anlegt, nicht eingeschaltet.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Kaufmännische Bedingungen

Erforderliche Angaben:

  • Die Preisliste selbst und ob die Beträge netto oder brutto sind
  • Wie die Umsatzsteuer ermittelt und ausgewiesen wird, auch bei Verkäufen in andere EU-Staaten
  • Abrechnungszeitraum, Fälligkeit und akzeptierte Zahlungsmittel
  • Was bei einer fehlgeschlagenen Zahlung geschieht
  • Wie eine Preisänderung angekündigt wird

Die Preisseite weist die Beträge als Bruttopreise inklusive Umsatzsteuer aus, weil das Angebot auch Verbrauchern offensteht. Die Stripe-Preisobjekte müssen als steuerinklusiv konfiguriert sein, damit die Abbuchung der Seite entspricht.

Belegt in: backend/app/services/stripe_service.py

04Laufzeit, Verlängerung und Kündigung

Technisch kündigt eine Kundin über das Stripe-Kundenportal, das aus dem Cockpit geöffnet wird. Meldet Stripe daraufhin das Ende des Abonnements, deaktiviert der Webhook die Keys dieser Kundin, entfernt sie am Gateway und setzt die Abonnementzeile auf gekündigt.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Vertragliche Kündigungsregeln

Erforderliche Angaben:

  • Mindestlaufzeit, Verlängerung und Kündigungsfrist
  • Zeitpunkt, zu dem der Zugang nach einer Kündigung endet
  • Gründe für eine außerordentliche Kündigung auf beiden Seiten
  • Ob § 312k BGB gilt und damit ein Kündigungsknopf auf der Seite erforderlich ist

Im Frontend gibt es heute keinen Kündigungsknopf; gekündigt wird im Stripe-Portal.

Belegt in: backend/app/api/v1/dashboard.py · backend/app/services/stripe_service.py

05Limits, faire Nutzung und Sperrung

Anfragen sind durch Anfragen pro Minute und Tokens pro Minute begrenzt. Bei Solo- und Test-Keys gilt die Grenze je Key; die Keys eines Team-Tarifs schöpfen aus einem gemeinsamen Budget, das alle Keys des Teams teilen. Für die Token-Grenze pro Minute zählt als Token ein nicht aus dem Cache bedienter Prompt-Token oder ein Ausgabe-Token: Prompt-Tokens, die der Präfix-Cache bedient, zählen nicht auf die Grenze. Test-Keys tragen zusätzlich ein Gesamt-Tokenbudget. Anfragen oberhalb der Grenze werden abgewiesen und gezählt. Das sind Durchsatzgrenzen, keine Mengengrenzen: Bezahlte Keys tragen am Gateway kein Tages-, Monats- oder Gesamt-Tokenbudget, und die Minutenraten können im laufenden Betrieb angepasst werden, um den Cluster unter Last stabil zu halten.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Regeln, die der Quelltext nicht aufstellen kann

Erforderliche Angaben:

  • Was als missbräuchliche Nutzung gilt und was daraus folgt
  • Ob und wie ein Zugang gesperrt werden darf
  • Ob Limits während eines laufenden Abonnements geändert werden dürfen

Belegt in: backend/app/services/rate_limiter.py · backend/app/services/litellm_client.py · config/litellm-config.yaml

06Verfügbarkeit und Support

Zwei Zusagen der Marketingseiten haben in diesem Quelltext keine Entsprechung; die Bedingungen sollten sie entweder unterlegen oder streichen. Die Preisseite wirbt für den Team-Tarif mit einer dedizierten SLA, während hier nichts die Verfügbarkeit misst oder ausweist. Dieselbe Seite verspricht einen digital gegengezeichneten Auftragsverarbeitungsvertrag, während das Cockpit eine ungezeichnete Markdown-Datei ausgibt.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Verfügbarkeitszusage

Erforderliche Angaben:

  • Ob eine Verfügbarkeit zugesagt wird und wie sie gemessen wird
  • Wartungsfenster und wie sie angekündigt werden
  • Supportweg und Reaktionszeiten
  • Folgen einer Unterschreitung

Belegt in: backend/app/api/v1/dashboard.py · backend/app/core/i18n.py

07Haftung, Gewährleistung und erzeugte Ausgaben

Antworten stammen aus einem Sprachmodell. Die Konfiguration des Gateways enthält weder einen Inhaltsfilter noch eine Moderationsstufe; die Ausgabe wird so durchgereicht, wie das Modell sie erzeugt hat.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Haftungsregeln

Erforderliche Angaben:

  • Haftungsbeschränkung und ihre Grenzen
  • Gewährleistung für einen im Abonnement erbrachten Dienst
  • Aussage zu Rechten an den erzeugten Ausgaben und dazu, wer das Risiko ihrer Verwendung trägt
  • Pflichten der Kundin, etwa keine Daten Dritter ohne Grundlage zu übermitteln

Belegt in: config/litellm-config.yaml

08Auftragsverarbeitung nach Art. 28 DSGVO

Das Cockpit erzeugt einen Auftragsverarbeitungsvertrag als Markdown-Download. In seiner jetzigen Form nennt er kein Unternehmen als Auftragnehmer, gibt eine Kontaktadresse an, die kein Impressum trägt, und stellt fest, es finde keine Übermittlung in Drittländer statt, obwohl die Zahlung über Stripe läuft.

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Ein belastbarer Auftragsverarbeitungsvertrag

Erforderliche Angaben:

  • Ein geprüfter Vertrag, der den Auftragnehmer und die technisch-organisatorischen Maßnahmen benennt
  • Eine Aussage zu Unterauftragsverarbeitern, einschließlich Zahlungs- und Mailanbieter
  • Wie die Kundin ihn gegenzeichnet

Die erzeugte Datei ist ein Entwurf. In dieser Form sollte sie keinem Datenschutzbeauftragten eines Kunden vorgelegt werden.

Belegt in: backend/app/api/v1/dashboard.py

09Änderungen, anwendbares Recht und Gerichtsstand

⚠ LÜCKE — ANGABE DES BETREIBERS ERFORDERLICH

Schlussbestimmungen

Erforderliche Angaben:

  • Wie diese Bedingungen geändert werden dürfen und wie eine Änderung mitgeteilt wird
  • Anwendbares Recht
  • Gerichtsstand und die Einschränkung, die gegenüber Verbrauchern gilt
  • Salvatorische Klausel