Open Source ab v0.1 · entwickelt in der Schweiz

Das Billing-Framework für Schweizer Software.

Abos, Rechnungen, Shop und Mitglieder – als Library, die in deiner App läuft. QR-Rechnung, TWINT, MWST und vier Sprachen sind eingebaut, die Daten bleiben in deiner Datenbank. Vom Vereinsprojekt bis zum SaaS, in TypeScript und PHP.

4 Sprachen · 0 Kundendaten auf unseren Servern · MIT Open Source ab v0.1

import { subkit } from '@agentkit/subkit';
import { drizzleAdapter } from '@agentkit/drizzle';
import { zahls } from '@agentkit/zahls';
import { db, env } from './db';

export const billing = subkit({
  // your Postgres, your tables
  database: drizzleAdapter(db),
  provider: zahls({ instance: 'acme', apiKey: env.ZAHLS_KEY }),
  plans: [
    { id: 'free', name: 'Free', prices: {} },
    {
      id: 'pro',
      name: 'Pro',
      features: ['export'],
      prices: { month: { amount: 1900, currency: 'CHF' } },
    },
  ],
  defaultPlanId: 'free',
  tax: { rateBps: 810 }, // Swiss VAT 8.1 %
});

Nimm, was dein Produkt braucht.

Jedes Kit funktioniert für sich, und alle teilen sich denselben Adapter, dieselben Kundendaten und denselben Zahlungsanbieter. Gleiches Kit, gleiches Verhalten – in jeder Programmiersprache, die wir anbieten.

subkit

Preview

Abos & Rechnungen

  • Pläne, Testphasen, Pro-rata-Abrechnung
  • Karte, TWINT oder QR-Rechnung
  • Zahlungserinnerungen & Wiederholungen
  • MWST auf jeder Rechnung

membershipkit

In Arbeit

Mitglieder & Erneuerungen

  • Mitgliedschaftsarten & Saisons
  • Haushalte & Familien
  • Erneuerungskampagnen
  • Anmeldeformulare & eigene Felder

shopkit

geplant

E-Commerce

  • Produkte & Varianten
  • Warenkorb & Checkout mit TWINT
  • Bestellungen & Rückerstattungen
  • Lager & Versand mit der Post

Nicht nachträglich lokalisiert. Schweizerisch ab der ersten Zeile.

Generische Billing-Libraries denken in Stripe, Cents und einer Sprache. Schweizer Kundinnen und Kunden zahlen per QR-Rechnung und TWINT, erwarten die MWST auf jeder Rechnung und lesen sie auf Deutsch, Französisch, Italienisch oder Rätoromanisch. Genau dort setzt agentkit an.

Zahlteil

Währung

CHF

Betrag

228.00

Konto / Zahlbar an

CH44 3199 9123 0008 8901 2
Acme AG
Bahnhofstrasse 1
8001 Zürich

Referenz

21 00000 00003 13947 14300 09017

Zusätzliche Informationen

Rechnung 2026-0142 · Verein Pro, Jahresabo
inkl. 8.1 % MWST CHF 17.08 · CHE-123.456.789 MWST

Zahlbar durch

FC Seebach
Dorfstrasse 12
8052 Zürich
Erzeugt von subkit: QR-IBAN mit QR-Referenz, MWST-Zeile, zahlungspflichtige Partei aus deiner Kundentabelle. Beispieldaten.

Schweizer QR-Rechnung

Zahlteil nach den Richtlinien von SIX, QR-IBAN mit QR-Referenz oder IBAN mit Creditor Reference (RF). CHF und EUR. Scannen und zahlen in jeder Schweizer Banking-App.

TWINT & Schweizer Zahlungsanbieter

zahls.ch (Payrexx) mit TWINT, PostFinance Card und Kreditkarten. Datatrans und PostFinance Checkout folgen als Nächstes. Kartendaten berühren deinen Server nie.

MWST, aber richtig

Preise inkl. oder exkl. MWST, MWST-Zeile und CHE-Nummer auf jeder Rechnung, ganze Rappen statt Gleitkommazahlen. Sätze pro Position (8.1 / 2.6 / 3.8 %) und Rundung auf 5 Rappen folgen als Nächstes.

de · fr · it · en

UI, E-Mails und Rechnungen auf Deutsch, Französisch, Italienisch und Englisch, mit Schweizer Formaten: 15.10.2026, CHF 1’900.00, «Guillemets», ss statt ß. Rätoromanisch auf Anfrage.

als Nächstes: Bankabgleich, Mahnwesen auf Schweizer Art, revDSG-freundlich, eBill

Alles rund ums Geld, einmal sauber gelöst.

Die Daten verlassen deine App nie.

Kits schreiben über Adapter in Tabellen deiner Datenbank. Verknüpfe sie per JOIN, sichere sie, zieh weiter – ohne Sync, ohne Silo.

TypeScript und PHP, eine HTTP-API.

Native Libraries pro Sprache, als Route in deinem Framework eingebunden. Jede Implementierung spricht dieselbe API, deshalb funktioniert darauf dieselbe UI.

Deine Server, dein Rechenzentrum.

Vercel, eine Schweizer Cloud oder der Server im Keller: Die Kits laufen dort, wo deine App läuft. Es gibt kein agentkit-Backend, das nach Hause telefoniert.

Self-Service ab Werk.

Fertige Komponenten für die langweiligen Screens – React oder eine Web Component für Blade und Twig. Headless Hooks, wenn du deine eigene UI willst.

Alle Lifecycle-E-Mails, fixfertig.

Quittungen, fehlgeschlagene Zahlungen, Erinnerungen, Erneuerungen, Bestellbestätigungen – in vier Sprachen, als HTML und Text, mit jedem Mailer. Druckbare Rechnungen mit QR-Rechnung.

Dein Coding-Agent baut es ein.

llms.txt, Skills, ein MCP-Server pro Kit und Fehlermeldungen, die auf die Lösung verlinken. Ein Prompt von null bis zum funktionierenden Checkout.

MITv0.1

Open Source ab Version 0.1.

Kits, Adapter, Zahlungsanbieter und CLI erscheinen mit Version 0.1 unter der MIT-Lizenz auf GitHub. Du kannst den Code lesen, anpassen und selbst betreiben – ohne Gebühr pro Transaktion und ohne Abhängigkeit von uns.

MIT-Lizenz

Kommerziell nutzbar, auch in geschlossener Software.

Kein Lock-in

Der Code läuft in deiner App, die Daten liegen in deiner Datenbank. Ein Fork genügt, um unabhängig weiterzumachen.

Offen entwickelt

Roadmap, Issues und Pull Requests werden öffentlich – Beiträge sind willkommen.

Aus der Produktion herausgelöst, ein Kit nach dem anderen.

Jedes Kit entsteht aus Code, der bereits produktiv läuft, und wird erst herausgelöst, wenn er sich bewährt hat.

  1. core + subkit

    Q4 2026 · jetzt

    Adapter-Schnittstelle und Testsuite, Drizzle-Adapter, subkit 0.1 mit QR-Rechnung, MWST und zahls.ch mit TWINT auf npm. Doku auf Deutsch und Englisch.

  2. subkit für PHP

    Q1 2027

    Konformitäts-Testsuite als sprachneutrale Fixtures, PHP-Port mit Adaptern für Eloquent, Doctrine und PDO, Integration für Laravel und Symfony.

  3. membershipkit

    Q1 2027

    Beitragsrechnungen über subkit. Bankabgleich mit camt.054, Datatrans und PostFinance Checkout.

  4. shopkit & mehr

    2027

    Katalog, Warenkorb, TWINT-Checkout, Versand mit der Post, Gutscheine. eBill, danach eventkit und bookingkit.

Bau deine eigene Abrechnung – in Minuten statt Monaten.

Bau dein Produkt. Abos, Bestellungen und Mitglieder übernehmen die Kits – bereit für die Schweiz, in deiner Datenbank, unter deiner Kontrolle.

npx agentkit init