Empfangsschein

Konto / Zahlbar an

agentkit

Siebenberge GmbH

CH

Referenz

npx agentkit init

Zahlbar durch

Deine App

Währung

CHF

Betrag

0.00

MIT, open source

Zahlteil

DasBilling-Frameworkfür Schweizer Software.

Zusätzliche Informationen

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.

npx agentkit init

Die Kits

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

Abos & Rechnungen

Preview
  • Pläne, Testphasen, Pro-rata-Abrechnung
  • Karte, TWINT oder QR-Rechnung
  • Zahlungserinnerungen & Wiederholungen
  • MWST auf jeder Rechnung
  • Berechtigungen & Limiten
  • UI für das Abrechnungsportal

npm i @agentkit/subkit  /  composer require agentkit/subkit

membershipkit

Mitglieder & Erneuerungen

In Arbeit
  • Mitgliedschaftsarten & Saisons
  • Haushalte & Familien
  • Erneuerungskampagnen
  • Anmeldeformulare & eigene Felder
  • Beitragsrechnungen über subkit
  • Mitgliederausweise & Export

npm i @agentkit/membershipkit  /  composer require agentkit/membershipkit

shopkit

E-Commerce

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

npm i @agentkit/shopkit  /  composer require agentkit/shopkit

später: eventkit (Anlässe, Anmeldungen, Tickets, Wartelisten), bookingkit (Termine, Ressourcen, Reservationen), invoicekit (Einzelrechnungen mit QR-Rechnung, ohne Abo), mailkit (Newsletter, Listen, Double-Opt-in)

Standardmässig Schweiz

  • Rechnung (de)
  • Facture (fr)
  • Fattura (it)
  • Quint (rm)
  • Invoice (en)

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-Rechnunglive
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 Zahlungsanbieterlive
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 richtiglive
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 · enlive
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.
Bankabgleichals Nächstes
Importiere camt.054 und camt.053 von deiner Bank, ordne QR-Referenzen offenen Rechnungen zu und markiere sie als bezahlt. Kein manuelles Abgleichen von Kontoauszügen mehr.
Mahnwesen auf Schweizer Artals Nächstes
Heute: Zahlungsfristen, automatische Wiederholungen und Erinnerungs-E-Mails. Als Nächstes: 1., 2. und 3. Mahnung mit Gebühren, Mahn-PDFs mit neuer QR-Rechnung, Export fürs Inkasso.
revDSG-freundlichby Design
Die Kits laufen in deiner App und schreiben in deine Datenbank. Kein zusätzlicher Auftragsbearbeiter für die Daten deiner Kundinnen und Kunden – hoste sie auf Wunsch in einem Schweizer Rechenzentrum.
eBillgeplant
Stelle Rechnungen über das Schweizer eBill-Netzwerk direkt ins E-Banking deiner Kundinnen und Kunden zu – mit der QR-Rechnung als Fallback.

So funktioniert es

Eine Library in deiner App. Kein Service davor.

Deine App

  • Next.js · Laravel · Symfony
  • <BillingPortal />
  • deine Auth → authorize()

agentkit · in deinem Prozess · TS oder PHP

  • subkit · membershipkit · shopkit
  • Datenbank-Adapter
  • Zahlungsanbieter

Deins

  • Dein Postgres · MySQL · SQLite
  • zahls.ch · TWINT · PostFinance
  • Deine Bank · camt.054
  • Dein Mailer

Deine Programmiersprache

Eine Spezifikation. Nativ in jedem Stack.

Jedes Kit ist einmal definiert – Schema, Regeln, HTTP-API, E-Mails, Übersetzungen – und pro Programmiersprache nativ implementiert. Eine gemeinsame Konformitäts-Testsuite spielt dieselben Abrechnungsszenarien gegen jede Implementierung durch. So erzeugt eine Erneuerung in PHP genau dieselben Zeilen wie eine Erneuerung in TypeScript. Die React-UI spricht mit beiden.

Frameworks
TypeScript
Referenz
Next.js · Hono · SvelteKit · Nuxt · Express · Workers
PHP
als Nächstes
Laravel · Symfony · PHP 8.3+
Python
später
Django · FastAPI · Flask

Funktionen

Alles rund ums Geld, einmal sauber gelöst.

Deine Datenbank

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.

Drizzle, Prisma, Eloquent, Doctrine, PDO

Jeder Stack

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.

Next.js, Hono, Laravel, Symfony, OpenAPI

Überall hostbar

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.

Infomaniak, Exoscale, Swisscom, Vercel, on-prem

UI inklusive

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.

<BillingPortal />, useBilling(), <ak-cart>

E-Mails & Dokumente

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.

Resend, SMTP, Postmark, PDF

Agent-native

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.

llms.txt, MCP, Skills, AGENTS.md

Korrekt by Design

Geldflüsse sind absichtlich langweilig.

Compare-and-Set-Updates, idempotente Webhooks, Transaktionen, wo es darauf ankommt. Eine Konformitäts-Testsuite für jede Sprache und jede Datenbank.

CAS, Idempotency, Transactions

Kombinierbar

Kits, die sich kennen.

Dieselben Kundendaten, ein Zahlungsanbieter, ein Rechnungssystem für alle Kits. Mitgliederbeiträge und Shop-Bestellungen landen auf derselben QR-Rechnung.

Shared customer, Typed events, Plugins

Open Source

MIT. Jede Zeile lesbar – ab v0.1.

Der Code erscheint mit Version 0.1 auf GitHub. Keine Transaktionsgebühr an uns, kein Lock-in. Ein gehostetes Dashboard und ein Webhook-Relay werden optional sein, nicht Pflicht.

MIT, TypeScript, PHP, Tested

Eine Konfiguration

Im Code deklariert. Im Pull Request geprüft.

Kits beschreiben ihre Tabellen deklarativ. Das CLI macht daraus ein Schema oder eine Migration für das ORM, das du schon nutzt – Drizzle, Prisma, Eloquent, Doctrine –, und jeder Adapter besteht dieselbe Konformitäts-Testsuite.

import { agentkit } from '@agentkit/core';
import { drizzleAdapter } from '@agentkit/drizzle';
import { subkit } from '@agentkit/subkit';
import { shopkit } from '@agentkit/shopkit';
import { membershipkit } from '@agentkit/membershipkit';
import { zahls } from '@agentkit/zahls';

export const kit = agentkit({
  database: drizzleAdapter(db, { tablePrefix: 'ak_' }),
  payments: zahls({ instance: 'acme', apiKey: env.ZAHLS_KEY }),
  kits: [
    subkit({ plans, defaultPlanId: 'free' }),
    shopkit({ currency: 'CHF', vat: { rateBps: 810 } }),
    membershipkit({ seasons: 'yearly', invoiceWith: 'subkit' }),
  ],
});

kit.on('shop.order.paid', async ({ order }) => fulfil(order));

Roadmap

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. 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. 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. 3

    membershipkit

    Q1 2027

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

  4. 4

    shopkit & mehr

    2027

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

Zahlteil

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.