Tippen Sie, um Notizen, Tools und Seiten zu durchsuchen...

Heftli

Rechnungs-SaaS für Freelancer und Schweizer KMU

Rolle
Alleiniger Designer, Entwickler und Betreiber
Launch
Januar 2026
Stack
TypeScript, React, Supabase, Stripe, PostgreSQL
Heftli interface

Das Problem

Schweizer Freelancer und kleine Unternehmen müssen QR-Rechnungen ausstellen, einen nationalen Standard mit strengen Formatregeln, den die meisten internationalen Rechnungstools entweder gar nicht oder nur schlecht unterstützen. Die Alternativen waren Konzern-Buchhaltungssuiten mit Setup-Aufwand in Tagen, oder Tabellen.

Ich wollte etwas, das QR-Rechnung nativ abbildet, Zeit gegen Kunden erfasst und keine Buchhaltungskenntnisse voraussetzt.

Architektur

Multi-Tenant vom ersten Commit an

Tenancy nachzurüsten ist teuer. Deshalb kamen Row-Level Security und Tenant-Scoping vor dem ersten Feature. Supabase liefert die Postgres-Schicht und Auth. Jede Query läuft unter einer RLS-Policy, damit ein Tenancy-Bug in der Anwendung keine Daten über Account-Grenzen hinweg preisgeben kann. Die Anwendung startete auf Cloudflare Workers. Ich habe sie auf DigitalOcean migriert, damit sie nicht an die Runtime eines einzelnen Anbieters gebunden ist.

Stripe übernimmt Subscriptions mit Webhook-Reconciliation. Die Anwendung leitet den Billing-State aus Stripe ab, statt ihn zu spiegeln. Das beseitigt eine ganze Klasse von Drift-Bugs.

Der QR-Rechnungs-Generator ist ein eigenständiges Modul, das schweizerische Zahlungsteile erzeugt und gegen die Spezifikation validiert wird, nicht gegen Sample-Output.

  • Mandantentrennung per Row-Level Security in Postgres
  • Stripe als Source of Truth für den Billing-State
  • Background Jobs für Reconciliation und geplante Rechnungen
  • Migrationen in CI gegen ein production-ähnliches Dataset

Betrieb

Eine Person, jede Schicht

Es gibt kein Team. Ich schreibe die Migrationen, kümmere mich um Sonderfälle bei fehlgeschlagenen Zahlungen, überwache die Background Worker, beantworte Support-Mails und liefere das Frontend aus.

Diese Einschränkung hat die Architektur stärker geprägt als jede Vorliebe. Was regelmässig Handarbeit braucht, wurde automatisiert oder entfernt, weil es niemanden gibt, dem ich es übergeben kann. Das System muss langweilig genug sein, um es eine Woche in Ruhe zu lassen.

Kontakt

Kontakt aufnehmen

Senden Sie mir eine Nachricht für einen ersten Austausch oder schreiben Sie mir direkt eine E-Mail.

Kontakt