agentkit

Il framework di fatturazione per il software svizzero

Abbonamenti, fatture, shop e soci – come libreria che gira nella tua app. Fattura QR, TWINT, IVA e quattro lingue sono inclusi, i dati restano nel tuo database. Dal progetto associativo al SaaS, in TypeScript e PHP.

npx agentkit init

Calcola l’IVA

CHF

Aliquota IVA

Netto
CHF 210.92
IVA 8.1 %
CHF 17.08
Totale
CHF 228.00

Stesso arrotondamento di subkit: centesimi interi, arrotondamento commerciale.

Scegli ciò che serve al tuo prodotto.

Ogni kit funziona da solo, e tutti condividono un unico adapter, un unico cliente e un unico fornitore di pagamento. Stesso kit, stesso comportamento, in ogni linguaggio di programmazione che supportiamo.

Anteprima

subkit

Abbonamenti e fatture

  • Piani, periodi di prova, calcolo pro rata
  • Carta, TWINT o fattura QR
  • Solleciti e nuovi tentativi
  • IVA su ogni fattura
  • Diritti di accesso e limiti
  • Portale di fatturazione
npm i @agentkit/subkit
In corso

membershipkit

Soci e rinnovi

  • Categorie di socio e stagioni
  • Economie domestiche e famiglie
  • Campagne di rinnovo
  • Moduli d’iscrizione e campi personalizzati
  • Fatture delle quote tramite subkit
  • Tessere sociali ed esportazione
npm i @agentkit/membershipkit
pianificato

shopkit

Commercio

  • Prodotti e varianti
  • Carrello e checkout con TWINT
  • Ordini e rimborsi
  • Magazzino e spedizione con la Posta
  • Codici sconto
  • Buoni regalo
npm i @agentkit/shopkit
eventkit Eventi, iscrizioni, biglietti, liste d’attesabookingkit Appuntamenti, risorse, prenotazioniinvoicekit Fatture singole con fattura QR, senza abbonamentomailkit Newsletter, liste, double opt-in

Svizzero per impostazione

Non localizzato in seguito. Svizzero dalla prima riga

Le librerie di fatturazione generiche ragionano in Stripe, centesimi e una sola lingua. La clientela svizzera paga con fattura QR e TWINT, si aspetta l’IVA su ogni fattura e la legge in tedesco, francese o italiano. agentkit parte da qui.

RechnungFactureFatturaInvoice

Sezione pagamento

Valuta

CHF

Importo

228.00

Conto / Pagabile a

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

Riferimento

21 00000 00003 13947 14300 09017

Informazioni supplementari

Fattura 2026-0142 · Club Pro, abbonamento annuale
IVA 8.1 % incl. CHF 17.08 · CHE-123.456.789 IVA

Pagabile da

FC Seebach
Dorfstrasse 12
8052 Zürich
Generata da subkit: QR-IBAN con riferimento QR, riga IVA, debitore dalla tua tabella clienti. Dati di esempio.
live

Fattura QR svizzera

Sezione pagamento secondo le direttive SIX, QR-IBAN con riferimento QR o IBAN con riferimento creditore RF. CHF ed EUR. Scansione e pagamento in ogni app di e-banking svizzera.

live

TWINT tramite zahls.ch

Pagamenti tramite zahls.ch con TWINT e carte di credito. I dati delle carte non passano mai dal tuo server. Altri provider si collegano tramite un’unica interfaccia.

live

IVA fatta bene

Prezzi IVA inclusa o esclusa, riga IVA e numero IDI su ogni fattura, Rappen interi invece di numeri in virgola mobile. Aliquote per riga (8.1 / 2.6 / 3.8 %) e arrotondamento ai 5 centesimi in arrivo.

live

de · fr · it · en

Interfaccia, e-mail e fatture in tedesco, francese, italiano e inglese, con i formati svizzeri: 15.10.2026, CHF 1’900.00, «virgolette», ss al posto di ß.

prossimamente

Riconciliazione bancaria

Importa camt.054 / camt.053 dalla tua banca, abbina i riferimenti QR alle fatture aperte e contrassegnale come pagate. Basta con l’abbinamento manuale degli estratti conto.

prossimamente

Solleciti alla svizzera

Oggi: termini di pagamento, nuovi tentativi automatici ed e-mail di sollecito. Prossimamente: 1°, 2° e 3° sollecito con spese, PDF di sollecito con una nuova fattura QR, esportazione per l’esecuzione.

per concezione

Conforme alla nLPD (revDSG)

I kit girano nella tua app e scrivono nella tua banca dati. Nessun responsabile del trattamento aggiuntivo per i dati dei tuoi clienti – se vuoi, ospitali in un centro di calcolo svizzero.

pianificato

eBill

Recapita le fatture direttamente nell’e-banking dei tuoi clienti tramite la rete svizzera eBill, con la fattura QR come alternativa.

Una libreria nella tua app. Non un servizio davanti a essa.

La tua app

  • Next.js · Laravel · Symfony · Hono
  • <BillingPortal /> · <ak-cart>
  • la tua auth → authorize()

agentkit · nel tuo processo · TS o PHP

  • subkit · membershipkit · shopkit
  • adapter della banca dati · fornitore di pagamento

Tuo

  • Il tuo Postgres · MySQL · SQLite
  • zahls.ch · TWINT
  • La tua banca · camt.054
  • Il tuo mailer

Una specifica. Nativo in ogni stack.

Ogni kit è definito una sola volta – schema, regole, API HTTP, e-mail, traduzioni – e implementato in modo nativo per ogni linguaggio di programmazione. Una suite di conformità comune esegue gli stessi scenari di fatturazione su ogni implementazione, così un rinnovo in PHP produce esattamente le stesse righe di un rinnovo in TypeScript. L’interfaccia React dialoga con entrambi.

TypeScript

riferimento

Framework

Next.js · Hono · SvelteKit · Nuxt · Express · Workers

Banche dati

Drizzle · Prisma · Kysely

PHP

prossimamente

Framework

Laravel · Symfony · PHP 8.3+

Banche dati

Eloquent · Doctrine · PDO

Python

più avanti

Framework

Django · FastAPI · Flask

Banche dati

Django ORM · SQLAlchemy

Tutto ciò che ruota attorno al denaro, fatto una volta sola.

La tua banca dati

I dati non lasciano mai la tua app.

I kit scrivono in tabelle della tua banca dati tramite adapter. Puoi unirle con join, farne il backup, migrare altrove – nessuna sincronizzazione, nessun silo.

Drizzle · Prisma · Eloquent · Doctrine · PDO

Qualsiasi stack

TypeScript e PHP, un’unica API HTTP.

Librerie native per ogni linguaggio, montate come route nel tuo framework. Ogni implementazione parla la stessa API, quindi la stessa interfaccia funziona sopra a tutte.

Next.js · Hono · Laravel · Symfony · OpenAPI

Hosting ovunque

I tuoi server, il tuo centro di calcolo.

Vercel, un cloud svizzero o il server in cantina: i kit vanno ovunque vada la tua app. Non c’è nessun backend agentkit da contattare.

Infomaniak · Exoscale · Swisscom · Vercel · on-prem

Interfaccia inclusa

Self-service pronto all’uso.

Componenti pronti per le schermate noiose – React, o un web component per Blade e Twig. Hook headless se vuoi la tua interfaccia.

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

E-mail e documenti

Ogni e-mail del ciclo di vita, pronta.

Ricevute, pagamenti non riusciti, solleciti, rinnovi, conferme d’ordine – in quattro lingue, HTML e testo, con qualsiasi mailer. Fatture stampabili con fattura QR.

Resend · SMTP · Postmark · PDF

Pensato per gli agenti

Il tuo agente di programmazione può integrarlo.

llms.txt, skill, un server MCP per ogni kit ed errori che rimandano alla soluzione. Un solo prompt da zero a un checkout funzionante.

llms.txt · MCP · Skills · AGENTS.md

Corretto per concezione

I flussi di denaro sono noiosi di proposito.

Aggiornamenti compare-and-set, webhook idempotenti, transazioni dove contano. Un’unica suite di conformità per ogni linguaggio e banca dati.

CAS · Idempotency · Transactions

Componibile

Kit che si conoscono a vicenda.

Un cliente, un fornitore di pagamento, un sistema di fatturazione per tutti i kit. Quote sociali e ordini dello shop finiscono sulla stessa fattura QR.

Shared customer · Typed events · Plugins

Open source

MIT. Ogni riga leggibile – dalla v0.1.

Il codice sarà pubblicato su GitHub con la versione 0.1. Nessuna commissione per transazione a noi, nessun lock-in. Una dashboard ospitata e un relay di webhook saranno opzionali, non obbligatori.

MIT · TypeScript · PHP · Tested

Dichiarato nel codice. Verificato nelle pull request.

I kit descrivono le loro tabelle in modo dichiarativo. La CLI le trasforma in uno schema o in una migrazione per l’ORM che usi già – Drizzle, Prisma, Eloquent, Doctrine – e ogni adapter supera la stessa suite di conformità.

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));

Estratti dalla produzione, un kit alla volta.

Ogni kit nasce da codice già in produzione e viene estratto solo quando ha dato prova di sé.

  1. 1

    core + subkit

    Q4 2026 · ora

    Contratto degli adapter e suite di test, adapter Drizzle, subkit 0.1 con fattura QR, IVA e zahls.ch/TWINT su npm. Documentazione in tedesco e inglese.

  2. 2

    subkit per PHP

    Q1 2027

    Suite di conformità come fixture indipendenti dal linguaggio, porting PHP con adapter Eloquent, Doctrine e PDO, integrazione Laravel e Symfony.

  3. 3

    membershipkit

    Q1 2027

    Fatture delle quote tramite subkit. Riconciliazione bancaria camt.054.

  4. 4

    shopkit e altro

    2027

    Catalogo, carrello, checkout TWINT, spedizione con la Posta, buoni. eBill, poi eventkit e bookingkit.

La tua fatturazione – in minuti, non in mesi

Pubblica il prodotto. Lascia ai kit abbonamenti, ordini e soci – pronti per la Svizzera, nella tua banca dati, sotto il tuo controllo.