La fatturazione basata sui posti consente di addebitare i clienti in base al numero di utenti, membri del team o licenze necessarie. È il modello di prezzo standard per strumenti di collaborazione di team, software enterprise e prodotti SaaS B2B.
Implementation Tutorial
Guida passo dopo passo con esempi di codice.
Add-ons Documentation
Scopri il sistema di componenti aggiuntivi che alimenta la fatturazione basata sui posti.
Subscription Management
Gestisci abbonamenti basati sui posti e modifiche dei piani.
Webhooks
Traccia i cambiamenti dei posti con i webhook delle sottoscrizioni.
Cos’è la Fatturazione Basata sui Posti?
La fatturazione basata sui posti (nota anche come tariffazione per utente o per posto) addebita ai clienti in base al numero di utenti che accedono al tuo prodotto. Invece di una tariffa fissa, il prezzo scala con la dimensione del team.Casi d’Uso Comuni
| Settore | Esempio | Modello di Prezzo |
|---|---|---|
| Collaborazione di Team | Slack, Notion, Asana | Per utente attivo/mese |
| Strumenti per Sviluppatori | GitHub, GitLab, Jira | Per posto/mese |
| Software CRM | Salesforce, HubSpot | Per licenza utente |
| Strumenti di Design | Figma, Canva | Per posto editor |
| Software di Sicurezza | 1Password, Okta | Per utente/mese |
| Videoconferenze | Zoom, Teams | Per licenza host |
Vantaggi della Tariffazione Basata sui Posti
Per la Tua Azienda:- I ricavi crescono naturalmente man mano che i clienti crescono
- Prezzi prevedibili che i clienti possono pianificare
- Chiara via di aggiornamento da individuale a team a aziendale
- Maggiore valore nel tempo man mano che i team si espandono
- Pagano solo per ciò che usano
- Facile da comprendere e prevedere i costi
- Flessibilità per aggiungere/rimuovere utenti secondo necessità
- Prezzi equi che corrispondono alla dimensione del team
Come Funziona la Fatturazione Basata sui Posti in Dodo Payments
Dodo Payments implementa la fatturazione basata sui posti utilizzando il sistema di Add-on. Ecco come funziona:Panoramica dell’Architettura
Un abbonamento Team Pro costa 15/mese aggiuntivi per ogni posto extra. Ad esempio, se il tuo team necessita di 15 posti:- Piano base: $99/mese (include 5 posti)
- Add-on: 10 posti extra × 150/mese
- Costo mensile totale: 150 = $249 per 15 posti
Componenti Chiave
| Componente | Scopo | Esempio |
|---|---|---|
| Prodotto Base | Abbonamento principale con posti inclusi | ”Piano Team - $99/mese (5 posti inclusi)“ |
| Add-on per Posto | Addebito per posto per utenti aggiuntivi | ”Posto Extra - $15/mese ciascuno” |
| Quantità | Numero di posti aggiuntivi acquistati | 10 posti extra |
Strategie di Prezzo
Scegli la strategia di prezzo basata sui posti che si adatta alla tua azienda:Strategia 1: Base + Add-on per Posto
Includi un numero fisso di posti nel piano base, addebita per i posti aggiuntivi. Esempio:Strategia 2: Prezzo Puro per Posto
Addebita una tariffa fissa per posto senza tariffa base. Esempio:Strategia 3: Prezzo per Posto a Tiers
Piani base diversi con tariffe per posto diverse. Esempio:Strategia 4: Pacchetti di Posti
Vendi posti in pacchetti piuttosto che singolarmente. Esempio:Configurare la Fatturazione Basata sui Posti
Passo 1: Pianifica la Tua Tariffazione
Prima dell’implementazione, definisci la tua struttura di prezzo:Define Base Plan
Decidi cosa includere nell’abbonamento base:
- Prezzo base (può essere $0 per un puro modello per posto)
- Numero di posti inclusi
- Funzionalità disponibili a questo livello
Set Seat Pricing
Determina il costo per posto aggiuntivo:
- Prezzo per ogni posto addizionale
- Eventuali sconti per volume (tramite più componenti aggiuntivi)
- Numero massimo di posti consentiti (se applicabile)
Passo 2: Crea l’Add-on per Posto
Nel tuo dashboard di Dodo Payments:- Naviga a Prodotti → Add-On
- Clicca su Crea Add-On
- Configura l’add-on:
| Campo | Valore | Note |
|---|---|---|
| Nome | ”Posto Aggiuntivo” o “Membro del Team” | Nome chiaro e user-friendly |
| Descrizione | ”Aggiungi un altro membro del team al tuo spazio di lavoro” | Spiega cosa ottengono i clienti |
| Prezzo | Il tuo prezzo per posto | es. $10.00 |
| Valuta | Corrispondi al tuo prodotto base | Deve essere la stessa valuta |
| Categoria Fiscale | Stessa del prodotto base | Garantisce una gestione fiscale coerente |
Passo 3: Crea l’Abbonamento Base
Crea il tuo prodotto di abbonamento:- Naviga a Prodotti → Crea Prodotto
- Seleziona Abbonamento
- Configura prezzi e dettagli
- Nella sezione Add-On, allega il tuo add-on per posto
Passo 4: Collega l’Add-on al Prodotto
Collega l’add-on per posto al tuo abbonamento:- Modifica il tuo prodotto di abbonamento
- Scorri fino alla sezione Add-On
- Clicca su Aggiungi Add-On
- Seleziona il tuo add-on per posto
- Salva le modifiche
Il tuo prodotto di abbonamento ora supporta la tariffazione basata sui posti. I clienti possono acquistare qualsiasi quantità di posti aggiuntivi durante il checkout.
Gestire i Posti
Aggiungere Posti a Nuovi Abbonamenti
Quando crei una sessione di checkout, specifica la quantità di posti:Modificare il Numero di Posti su Abbonamenti Esistenti
Utilizza l’API Change Plan per regolare i posti:Rimuovere Posti
Per ridurre il numero di posti, specifica la quantità inferiore:Rimuovere Tutti i Posti Aggiuntivi
Passa un array vuoto di add-on per rimuovere tutti gli add-on:Ripartizione per Modifiche ai Posti
Quando i clienti aggiungono o rimuovono posti a metà ciclo, la ripartizione determina come vengono fatturati.Modalità di Prorata
| Modalità | Aggiunta dei posti | Rimozione dei posti |
|---|---|---|
prorated_immediately | Addebita i giorni restanti del ciclo | Accredito per i giorni inutilizzati |
difference_immediately | Addebita il prezzo pieno del posto | Accredito applicato ai rinnovi futuri |
full_immediately | Addebita il prezzo pieno del posto, resetta il ciclo di fatturazione | Nessun accredito |
Esempi di Prorata
Scenario: ciclo di fatturazione di 15 giorni rimanenti, aggiunta di 5 posti a $10/posto- prorated_immediately
- difference_immediately
- full_immediately
Anteprima prima della modifica
Esegui sempre un’anteprima della prorata prima di apportare modifiche:Monitorare i posti con i webhook
Monitora le variazioni dei posti ascoltando i webhook delle sottoscrizioni:Eventi rilevanti
| Evento | Quando viene attivato | Caso d’uso |
|---|---|---|
subscription.active | Nuova sottoscrizione attivata | Provisiona i posti iniziali |
subscription.plan_changed | Posti aggiunti/rimossi | Aggiorna il conteggio dei posti nella tua app |
subscription.renewed | Sottoscrizione rinnovata | Conferma che il numero di posti sia invariato |
subscription.cancelled | Sottoscrizione cancellata | Deprovisiona tutti i posti |
Esempio di handler per webhook
Applicare i limiti dei posti
La tua applicazione deve far rispettare i limiti dei posti. Dodo Payments tiene traccia della fatturazione, ma tu controlli l’accesso.Strategie di enforcement
- Hard Limit
- Soft Limit with Warning
- Auto-Upgrade
Impedisci rigorosamente di aggiungere utenti oltre il conteggio dei posti.
Modelli avanzati
Tipologie di posti diverse
Offri tipi di posti diversi con prezzi differenti:Sconti annuali sui posti
Offri prezzi scontati annuali per i posti:Requisiti minimi di posti
Richiedi un numero minimo di posti per determinati piani:Best Practice
Best practice di prezzo
- Comunicazione chiara: mostra il prezzo per posto in modo evidente sulla pagina dei prezzi
- Posti inclusi: considera l’inclusione di alcuni posti nel prezzo base per ridurre l’attrito
- Sconti per volume: offri tariffe per posto inferiori per team più grandi per conquistare clienti enterprise
- Incentivi annuali: sconta i piani annuali per migliorare il cash flow e la retention
Best practice tecniche
- Cache dei conteggi dei posti: memorizza localmente i conteggi dei posti dell’abbonamento per evitare chiamate API ad ogni richiesta
- Sincronizzazione regolare: sincronizza periodicamente il conteggio locale con Dodo Payments tramite API
- Gestione dei fallimenti: se una modifica dei posti fallisce, mostra messaggi di errore chiari e opzioni di ripetizione
- Audit trail: registra tutte le modifiche dei posti per dispute sulla fatturazione e conformità
Best practice per l’esperienza utente
- Feedback in tempo reale: mostra immediatamente l’impatto sui costi quando si regolano i posti
- Passaggi di conferma: richiedi una conferma prima delle modifiche di fatturazione
- Trasparenza della prorata: spiega chiaramente gli addebiti prorata prima di applicarli
- Downgrade semplici: non rendere difficile ridurre i posti (costruisce fiducia)
Risoluzione dei problemi
Seat count mismatch between app and billing
Seat count mismatch between app and billing
Sintomo: la tua app mostra un conteggio dei posti diverso da quello dell’abbonamento.Cause:
- Webhook non ricevuto o elaborato
- Condizione di race durante la modifica dei posti
- Dati cache non aggiornati
- Implementa handler per webhook per
subscription.plan_changed - Aggiungi un pulsante “Sincronizza con la fatturazione” che recuperi l’abbonamento corrente
- Imposta TTL della cache per garantire aggiornamenti regolari
Proration charges unexpected
Proration charges unexpected
Sintomo: cliente confuso dall’importo addebitato a metà ciclo.Cause:
- Modalità di prorata non comunicata chiaramente
- Il cliente non ha visto l’anteprima prima di confermare
- Usa sempre
previewChangePlanprima di apportare modifiche - Mostra un dettaglio chiaro: “Aggiungere X posti = $Y oggi (prorata per Z giorni)”
- Documenta la tua politica di prorata nel centro assistenza
Add-on not appearing in checkout
Add-on not appearing in checkout
Sintomo: add-on per posti non disponibile durante il checkout.Cause:
- Add-on non collegato al prodotto
- Add-on archiviato o eliminato
- Disallineamento di valuta tra prodotto e add-on
- Verifica che l’add-on sia collegato nelle impostazioni del prodotto
- Controlla lo stato dell’add-on nella dashboard Add-On
- Assicurati che le valute corrispondano esattamente
Cannot reduce seats below current usage
Cannot reduce seats below current usage
Sintomo: il cliente vuole ridurre i posti ma ha utenti assegnati.Soluzioni:
- Mostra quali utenti devono essere rimossi prima di ridurre i posti
- Implementa un flusso di lavoro: rimuovi utenti → riduci posti
- Considera un periodo di grazia prima di far rispettare la riduzione dei posti