shopkit· Commercio

Vendere con TWINT e fattura QR.

shopkit porta catalogo, carrello, checkout e back office nella tua app TypeScript. Si paga con TWINT, carta o su fattura; shopkit calcola magazzino, spedizione e IVA, le etichette arrivano dalla Posta. I dati restano nel tuo database.

Prova la demo
$npm i @agentkit.ch/shopkit

Carrello

Sciarpa della società29.00
Maglia casa, M89.00
Spedizione9.00
TotaleCHF 127.00
Paga con TWINT
3
Aliquote IVA per prodotto: 8.1, 2.6 e 3.8 %
4
Lingue per negozio, e-mail e ricevute
CHF 0
Di commissione per ordine a noi
MIT
Open source su GitHub, pacchetti su npm

Per chi

Per negozi con una clientela svizzera.

Dal fan shop di una società sportiva alla panetteria con ritiro: shopkit conosce TWINT, la fattura QR, la Posta e le aliquote IVA svizzere.

01

Shop di associazioni e merch

Maglie in più taglie, sciarpe e buoni regalo – pagati con TWINT o su fattura, spediti con la Posta o ritirati.

02

Panetterie e negozi in fattoria

Giorno di ritiro con fascia oraria, termine d’ordine e giorni di chiusura. Con WaWiAssist di HS-Soft gli articoli, allergeni compresi, arrivano dalla gestione merci.

03

Torrefazioni e PMI

Varianti, magazzino, spedizione secondo il peso e l’etichetta della Posta con un clic. I clienti abituali ordinano persino tramite il loro agente IA.

Novità in shopkit 0.2 · Ordinare tramite agente IA

La tua clientela ordina in chat.

Il tuo shop diventa un server MCP. L’agente delle tue clienti e dei tuoi clienti – Claude, ChatGPT o Cursor – cerca i prodotti, calcola l’ordine con IVA e spedizione e ordina. Si paga con un link zahls.ch o direttamente con il TWINT salvato. Per ogni shop shopkit, senza servizi aggiuntivi.

  • Accesso via OAuth – Claude e ChatGPT si collegano senza token
  • Viene addebitato solo l’importo confermato dalla cliente
  • Spedizione, ritiro o giorno di consegna con fascia oraria – l’agente chiede
  • I token di pagamento non raggiungono mai il modello
import { createShopCustomerMcpHandler } from '@agentkit.ch/shopkit/mcp'Guida nel README
AgentMCP · Rösterei Aare

Due volte la miscela della casa e un decalcificante, per posta.

search_productsmiscela della casa, decalcificante

quote_order

2 × Miscela della casa 500 g37.00

Decalcificante12.90

PostPac Priority9.00

TotaleCHF 58.90

Pagare CHF 58.90 con il tuo TWINT salvato?

Sì, grazie.

place_orderexpectedAmount: 5890

TWINT …

Novità in shopkit 0.2 · Per panetterie

HS-Soft (WaWiAssist) collegato.

Per panetterie e pasticcerie con WaWiAssist: i prodotti arrivano da WaWiAssist, ogni ordine vi entra – con il giorno di ritiro come data dell’ordine. Che sia ordinato nello shop online o tramite agente.

  • Importazione con categoria di prezzo, prezzo promozionale, immagine, dichiarazione, allergeni e valori nutrizionali
  • Solo giorni di ritiro in cui ogni articolo del carrello è disponibile
  • Se HS-Soft non è raggiungibile, shopkit invia di nuovo l’ordine più tardi
  • Stato e nuovo invio nel back office e via MCP
import { createHsSoftSync } from '@agentkit.ch/shopkit/hssoft'Guida nel README

Articoli → prodotti

WaWiAssist

  • A1Treccia 500 g6.80
  • A7Pane contadino5.20
  • A12Grittibänz4.50

shopkit

  • Treccia 500 gimportato
  • Pane contadinoimportato
  • Grittibänzdal 1.11.

Ordine → WaWiAssist

shopkit

#2187 · CHF 18.80

Ritiro il 31.10.2026

WaWiAssist

—

Novità in shopkit 0.4 · La Posta

Etichette e indirizzi della Posta.

Un clic nell’ordine e l’etichetta con codice a barre è pronta – con la modalità di spedizione dell’ordine, fatturata sulla tua licenza d’affrancatura. Nel checkout la Posta propone NPA, località, via e numero e verifica l’indirizzo prima dell’ordine.

  • PostPac Economy e Priority, invii ingombranti, Swiss-Express «Luna», VinoLog e Posta A Plus
  • A5, A6 o A7 in PDF o ZPL2 per la stampante di etichette
  • Prestazioni complementari come firma, fragile o distribuzione il sabato
  • Numero d’invio con Track & Trace nell’e-mail di spedizione
import { createSwissPost } from '@agentkit.ch/shopkit/swisspost'Guida nel README

<Checkout />

Via e numero

Bahnhofst

NPA e località

8001 Zürich

Indirizzo confermato dalla Posta

#1044

A6 · PRI

1.2 kg

Crea etichetta

Rösterei Aare

Aarstrasse 12

3011 Bern

PRI

Anna Muster

Bahnhofstrasse 12

8001 Zürich

99.60.123456.00000001

Numero d’invio —

Funzioni

Tutto ciò che serve a un negozio.

Catalogo, cassa e back office, con i dettagli svizzeri che i sistemi generici aggiungono in seguito come plugin.

Prodotti e varianti

Prodotti fisici e carte regalo, varianti con prezzo e magazzino propri, prezzi barrati, immagini e testi in quattro lingue.

Un magazzino affidabile

Il magazzino viene riservato al checkout: shopkit vende l’ultimo articolo una volta sola, anche sotto carico.

TWINT, carta o fattura

Online tramite zahls.ch o su fattura con fattura QR. Chi può acquistare su fattura lo decidi tu.

IVA per prodotto

8.1, 2.6 o 3.8 % per prodotto, la spedizione ripartita proporzionalmente, ogni ricevuta con tutte le aliquote. Arrotondamento a 5 centesimi su richiesta.

Spedizione e ritiro

Forfettaria, secondo il peso, gratuita da un importo o ritiro. Giorno di ritiro e consegna con fascia oraria e termine d’ordine.

Codici sconto e buoni regalo

Percentuale, importo o spedizione gratuita con condizioni. Vendere carte regalo e usarle su più ordini.

Ordini e rimborsi

Numeri d’ordine, link per gli ospiti, stati di pagamento e spedizione, rimborsi parziali con rientro in magazzino.

Back office da integrare

<ShopAdmin /> con ordini, prodotti, magazzino, codici sconto, buoni regalo e import bancario – protetto dal tuo login.

E-mail con il tuo stile

Conferma, pagamento ricevuto, spedito, promemoria, codice del buono – in quattro lingue, con il tuo logo e i tuoi colori.

Il tuo database, le tue tabelle

I kit scrivono nel tuo database tramite adapter. Collegali con un JOIN – senza sincronizzazione, senza silo.

select o.*, c.name from shop_orders o
join customers c on c.id = o.customer_external_id
numberpayment_statuspayment_methodtotal
1039refundedonline2900

Ogni e-mail, in quattro lingue

Ricevute, promemoria e conferme d’ordine in HTML e testo, con il tuo servizio di invio.

de

Deine Quittung für Pro

Acme AG

fr

Votre commande #1042 est confirmée

Boutique Léman

it

Promemoria: fattura 2026-0142

FC Lugano Nord

46° 48′ N · 8° 14′ E

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.

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
pagata
prossimamenteSolleciti alla svizzera

Per sviluppatori

Un negozio in dieci minuti.

Il negozio in un file, una route per l’API del negozio e il webhook, componenti pronti per checkout e back office.

Installa

$ npm i @agentkit.ch/shopkit
Prompt di setup per il tuo agente di coding

Aggiungi un negozio con TWINT e fattura QR usando @agentkit.ch/shopkit. Leggi prima https://agentkit.ch/llms.txt.

import { createShop } from '@agentkit.ch/shopkit';
import { drizzleAdapter } from '@agentkit.ch/shopkit/drizzle';
import { zahlsProvider } from '@agentkit.ch/shopkit/zahls';
import { db, env } from './db';

export const shop = createShop({
  // your Postgres, your tables
  database: drizzleAdapter(db),
  provider: zahlsProvider({ instance: 'acme', apiKey: env.ZAHLS_KEY }),
  tax: { inclusive: true, defaultRateBps: 810 }, // Swiss VAT 8.1 %
  shipping: {
    rates: [
      {
        id: 'post',
        name: 'PostPac Economy',
        amount: 900,
        tiers: [
          { maxWeightGrams: 2_000, amount: 900 },
          { maxWeightGrams: 10_000, amount: 1_100 },
        ],
        freeAbove: 10_000,
      },
      { id: 'pickup', name: 'Abholung im Laden', amount: 0, pickup: true },
    ],
  },
  // invoice only for signed-in customers
  invoice: { allow: ({ customerExternalId }) => customerExternalId !== null },
});

L’altro kit

subkit

Abbonamenti e fatture

Per SaaS, affiliazioni e quote associative

I tuoi clienti scelgono un piano e pagano con TWINT, carta o fattura QR. subkit rinnova, calcola il pro rata, invia i promemoria e riconcilia i pagamenti con la banca.

MensileAnnuale

Pro

CHF 19.00

/ mese

14 giorni gratis
Scegli Pro
TWINTVISAMASTERCARDQR

Domande

Domande frequenti.

Qualcosa non è chiaro? Le demo mostrano i kit con le loro vere opzioni.

01Per chi è shopkit?

Per chi vende prodotti nella propria app: shop di associazioni, panetterie con ritiro, torrefazioni, PMI con merch o buoni regalo. Per i pagamenti ricorrenti c’è subkit.

02Come pagano i miei clienti?

Con TWINT o carta tramite zahls.ch, oppure su fattura con fattura QR svizzera. I clienti con login possono salvare il metodo di pagamento e pagare l’ordine successivo senza pagina di pagamento. shopkit riconcilia le fatture con il camt.054 della tua banca.

03shopkit crea etichette di spedizione della Posta?

Sì, da shopkit 0.4: l’etichetta con codice a barre dall’ordine, nel back office, tramite API o MCP, e il numero d’invio con Track & Trace nell’e-mail di spedizione. Nel checkout la Posta propone gli indirizzi e li verifica. Ti servono una licenza d’affrancatura e un accesso alla Digital Commerce API della Posta. Le etichette per l’estero e le tariffe in tempo reale sono previste.

04shopkit funziona con HS-Soft (WaWiAssist)?

Sì. @agentkit.ch/shopkit/hssoft importa gli articoli di WaWiAssist come prodotti e vi invia ogni ordine, con il giorno di ritiro come data dell’ordine. Ti serve solo la chiave API del tuo WaWiAssist, fornita da HS-Soft.

05Quanto costa shopkit?

Niente. shopkit è open source sotto MIT, senza commissioni per ordine. Paghi solo il tuo fornitore di pagamento e la Posta per le tue spedizioni.

Il tuo negozio, da oggi.

Copia il prompt di setup nel tuo agente di coding – oppure prova prima shopkit nel browser.

Prompt di setup per il tuo agente di coding

Aggiungi un negozio con TWINT e fattura QR usando @agentkit.ch/shopkit. Leggi prima https://agentkit.ch/llms.txt.

Prova la demo · shop.agentkit.ch