Gebaut in der Schweiz · für Schweizer Produkte
SchweizerGeschäftslogik,in deinem Code.
Abos, Shop und Mitgliedschaften mit QR-Rechnung, TWINT, MWST und vier Sprachen eingebaut – als Libraries für TypeScript und PHP. Die Logik kommt von uns und läuft in deiner App. Die Daten bleiben in deiner Datenbank, über Adapter für das ORM, das du schon nutzt.
npx agentkit initimport { 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 %
});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.
Abos & Rechnungen
- +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/subkitcomposer require agentkit/subkitMitglieder & Erneuerungen
- +Mitgliedschaftsarten & Saisons
- +Haushalte & Familien
- +Erneuerungskampagnen
- +Anmeldeformulare & eigene Felder
- +Beitragsrechnungen über subkit
- +Mitgliederausweise & Export
npm i @agentkit/membershipkitcomposer require agentkit/membershipkitE-Commerce
- +Produkte & Varianten
- +Warenkorb & Checkout mit TWINT
- +Bestellungen & Rückerstattungen
- +Lager & Versand mit der Post
- +Rabattcodes
- +Geschenkgutscheine
npm i @agentkit/shopkitcomposer require agentkit/shopkitAnlässe, Anmeldungen, Tickets, Wartelisten
Termine, Ressourcen, Reservationen
Einzelrechnungen mit QR-Rechnung, ohne Abo
Newsletter, Listen, Double-Opt-in
Standardmässig Schweiz
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 – herausgelöst aus Membear, wo es jeden Tag Rechnungen für Schweizer Vereine stellt.
Empfangsschein
Konto / Zahlbar an
Acme AG
Bahnhofstrasse 1
8001 Zürich
Referenz
Zahlbar durch
Dorfstrasse 12
8052 Zürich
Währung
Betrag
Zahlteil
Währung
Betrag
Konto / Zahlbar an
Acme AG
Bahnhofstrasse 1
8001 Zürich
Referenz
Zusätzliche Informationen
inkl. 8.1 % MWST CHF 17.08 · CHE-123.456.789 MWST
Zahlbar durch
Dorfstrasse 12
8052 Zürich
Schweizer QR-Rechnung
liveZahlteil 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
livezahls.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
livePreise 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
liveUI, 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.
Bankabgleich
als NächstesImportiere 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 Art
als NächstesHeute: 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-freundlich
by DesignDie 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.
eBill
geplantStelle 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 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
- Next.js · Hono · SvelteKit · Nuxt · Express · Workers
- Datenbanken
- Drizzle · Prisma · Kysely
npm i @agentkit/subkit- Frameworks
- Laravel · Symfony · PHP 8.3+
- Datenbanken
- Eloquent · Doctrine · PDO
composer require agentkit/subkit- Frameworks
- Django · FastAPI · Flask
- Datenbanken
- Django ORM · SQLAlchemy
pip install agentkit-subkitFunktionen
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.
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.
Ü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.
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.
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.
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.
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.
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.
Open Source
MIT. Jede Zeile lesbar.
Keine Transaktionsgebühr an uns, kein Lock-in. Ein gehostetes Dashboard und ein Webhook-Relay werden optional sein, nicht Pflicht.
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.
- Deklaratives Schema
- Eigene Datenbank mitbringen
- Typisierte Events
- Plugins pro Kit
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 in einem echten Produkt – Membear, der Schweizer Vereinssoftware – und wird herausgelöst, sobald es sich dort bewährt hat.
- 01 · jetztQ4 2026
core + subkit
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.
- 02Q1 2027
subkit für PHP
Konformitäts-Testsuite als sprachneutrale Fixtures, PHP-Port mit Adaptern für Eloquent, Doctrine und PDO, Integration für Laravel und Symfony.
- 03Q1 2027
membershipkit
Aus Membear herausgelöst, Beitragsrechnungen über subkit. Bankabgleich mit camt.054, Datatrans und PostFinance Checkout.
- 042027
shopkit & mehr
Katalog, Warenkorb, TWINT-Checkout, Versand mit der Post, Gutscheine. eBill, danach eventkit und bookingkit.
Nie mehr QR-Rechnungen selbst bauen.
Bau dein Produkt. Abos, Bestellungen und Mitglieder übernehmen die Kits – bereit für die Schweiz, in deiner Datenbank, unter deiner Kontrolle.
npx agentkit init