Skip to main content
Gli abbonamenti ti consentono di vendere accesso continuativo con rinnovi automatici. Usa cicli di fatturazione flessibili, periodi di prova gratuiti, modifiche dei piani e add-on per personalizzare i prezzi per ogni cliente.

Upgrade & Downgrade

Gestisci le modifiche dei piani con la proratazione e gli aggiornamenti delle quantità.

On‑Demand Subscriptions

Autorizza ora un mandato e addebita in seguito importi personalizzati.

Customer Portal

Consenti ai clienti di gestire piani, fatturazione e cancellazioni.

Subscription Webhooks

Reagisci agli eventi del ciclo di vita, come creazione, rinnovo e cancellazione.

Cosa sono gli abbonamenti?

Gli abbonamenti sono prodotti ricorrenti che i clienti acquistano secondo una determinata pianificazione. Sono ideali per:
  • Licenze SaaS: app, API o accesso alla piattaforma
  • Membership: community, programmi o club
  • Contenuti digitali: corsi, media o contenuti premium
  • Piani di assistenza: SLA, pacchetti di successo o manutenzione

Vantaggi principali

  • Ricavi prevedibili: fatturazione ricorrente con rinnovi automatici
  • Cicli flessibili: intervalli mensili, annuali o personalizzati e periodi di prova
  • Flessibilità dei piani: proratazione per upgrade e downgrade
  • Add-on e postazioni: aggiungi upgrade opzionali e quantificabili
  • Checkout fluido: checkout ospitato e Customer Portal
  • Developer-first: API chiare per creazione, modifiche e monitoraggio dell’utilizzo

Creazione degli abbonamenti

Crea i prodotti in abbonamento nella dashboard di Dodo Payments, quindi vendili tramite checkout o la tua API. Separare i prodotti dagli abbonamenti attivi ti consente di gestire le versioni dei prezzi, aggiungere add-on e monitorare le prestazioni in modo indipendente.

Creazione di un prodotto in abbonamento

Configura i campi nella dashboard per definire come il tuo abbonamento viene venduto, rinnovato e fatturato. Le sezioni seguenti corrispondono direttamente a ciò che vedi nel modulo di creazione.

Dettagli del prodotto

  • Nome del prodotto (obbligatorio): il nome visualizzato nel checkout, nel Customer Portal e nelle fatture.
  • Descrizione del prodotto (obbligatorio): una descrizione chiara del valore offerto, visualizzata nel checkout e nelle fatture.
  • Immagine del prodotto (obbligatorio): PNG/JPG/WebP fino a 3 MB. Utilizzata nel checkout e nelle fatture.
  • Brand: associa il prodotto a un brand specifico per personalizzare tema ed email.
  • Categoria fiscale (obbligatorio): scegli la categoria (ad esempio, SaaS) per determinare le regole fiscali.
Scegli la categoria fiscale più accurata per garantire una corretta riscossione delle imposte per ogni area geografica.

Prezzi

  • Tipo di prezzo: scegli Subscription (questa guida). Le alternative sono Pagamento singolo e Fatturazione basata sull’utilizzo.
  • Prezzo (obbligatorio): prezzo ricorrente di base con valuta. Il prezzo deve essere almeno $1 (o l’equivalente nella valuta scelta). Gli importi inferiori a questo minimo non sono supportati e la subscription non funzionerà.
  • Sconto applicabile (%): percentuale di sconto facoltativa applicata al prezzo di base; viene mostrata nel checkout e nelle fatture.
  • Ripeti il pagamento ogni (obbligatorio): intervallo per i rinnovi, ad esempio ogni 1 mese. Seleziona la frequenza (mesi o anni) e la quantità.
  • Periodo della subscription (obbligatorio): durata totale per cui la subscription rimane attiva (ad esempio 10 anni). Al termine di questo periodo, i rinnovi si interrompono se non vengono estesi.
  • Giorni del periodo di prova (obbligatorio): imposta la durata della prova in giorni. Usa 0 per disabilitare le prove. Il primo addebito avviene automaticamente al termine della prova.
  • Importo della prova: addebito anticipato facoltativo per una prova a pagamento. Lascialo non impostato per una prova gratuita. Consulta Prove a pagamento.
  • Seleziona add-on: associa fino a 10 add-on che i clienti possono acquistare insieme al piano di base.
La modifica dei prezzi di un prodotto attivo influisce sui nuovi acquisti. Gli abbonamenti esistenti seguono le impostazioni di modifica del piano e di proratazione.
Gli add-on sono ideali per extra quantificabili, come postazioni o spazio di archiviazione. Puoi controllare le quantità consentite e il comportamento della proratazione quando i clienti li modificano.

Impostazioni avanzate

  • Prezzi con imposte incluse: visualizza i prezzi comprensivi delle imposte applicabili. Il calcolo fiscale finale varia comunque in base alla posizione del cliente.
  • Genera chiavi di licenza: emetti una chiave univoca per ogni cliente dopo l’acquisto. Consulta la guida License Keys.
  • Distribuzione dei prodotti digitali: distribuisci automaticamente file o contenuti dopo l’acquisto. Scopri di più in Digital Product Delivery.
  • Metadati: aggiungi coppie chiave-valore personalizzate per tag interni o integrazioni client. Consulta Metadata.
Usa i metadati per memorizzare gli identificatori del tuo sistema (ad esempio, accountId), così potrai riconciliare in seguito eventi e fatture.

Periodi di prova degli abbonamenti

Le prove consentono ai clienti di valutare una subscription prima di pagare il prezzo ricorrente completo. Una prova può essere gratuita, senza alcun addebito fino alla sua scadenza, oppure a pagamento, con un importo ridotto addebitato in anticipo. In entrambi i casi, il prezzo completo entra in vigore al primo rinnovo successivo alla fine della prova.

Configurazione dei periodi di prova

Imposta Giorni del periodo di prova nella sezione dei prezzi del prodotto (usa 0 per disabilitare). Puoi sostituire questo valore durante la creazione degli abbonamenti:
Il valore trial_period_days deve essere compreso tra 0 e 10.000 giorni.

Prove a pagamento

Le prove non devono necessariamente essere gratuite. Imposta un Importo della prova sul prezzo ricorrente di un prodotto in subscription per addebitare una tariffa anticipata ridotta durante il periodo di prova. Il prezzo ricorrente completo subentra al primo rinnovo.
Modulo di prezzo della subscription con durata della prova e importo facoltativo per una prova a pagamento
Le prove a pagamento vengono configurate sul prezzo del prodotto, non per subscription o sessione di checkout:
Anche le prove a pagamento passano dal checkout. L’importo della prova è soggetto a imposte, viene mostrato nei calcoli della sessione di checkout e nei prezzi dei payment link, e il markup di Adaptive Currency viene applicato per valuta. L’endpoint di anteprima restituisce trial_amount e trial_period_days, così puoi mostrare l’importo dovuto oggi prima della creazione della subscription.
Le prove gratuite non cambiano. Lasciare non impostato Importo della prova mantiene il comportamento esistente: il primo addebito è 0 e il prezzo completo viene addebitato al termine della prova.

Prevenire l’uso improprio delle prove

Previeni l’uso improprio delle prove impedisce ai clienti di richiedere ripetutamente prove per la stessa attività. Quando è abilitata, un cliente che ha già usufruito di una prova viene automaticamente convertito in un acquisto a pagamento senza prova, invece di ricevere una nuova prova.
Interruttore Previeni l'uso improprio delle prove nella scheda delle impostazioni delle Subscriptions
Abilitalo dalla scheda Subscriptions in Impostazioni. Dopo l’abilitazione:
  • I clienti vengono associati tramite email normalizzata, rimuovendo gli alias con il simbolo +; quindi user+trial@example.com e user@example.com vengono considerati la stessa persona.
  • Le registrazioni vengono effettuate all’attivazione della prova, quindi un cliente che annulla nello stesso giorno ha comunque consumato la prova.
  • I clienti esistenti vengono recuperati in base alle prove storiche tramite email, per riconoscere immediatamente gli utenti che hanno usufruito di prove in passato.
L’impostazione è disattivata per impostazione predefinita. Consulta Impostazioni delle Subscriptions per l’elenco completo dei controlli delle subscription a livello di attività.

Rilevare lo stato della prova

Al momento non esiste un campo diretto per rilevare lo stato della prova. La soluzione alternativa seguente richiede l’interrogazione dei pagamenti, che è inefficiente. Stiamo lavorando a una soluzione più efficiente.
Per determinare se una subscription con prova gratuita è in prova, recupera l’elenco dei pagamenti della subscription. Se esiste esattamente un pagamento con importo 0, la subscription si trova nel periodo di prova:
Questo controllo dell’importo zero funziona solo per le prove gratuite. Per una prova a pagamento, il primo pagamento è uguale all’importo della prova, non a 0. Confronta invece il primo pagamento con trial_amount della subscription, oppure verifica se next_billing_date rientra ancora nel periodo di prova.

Aggiornare il periodo di prova

Estendi la prova aggiornando next_billing_date:
Non puoi impostare next_billing_date su un momento passato. La data deve essere futura.

Modifiche al piano della subscription

Le modifiche al piano consentono di effettuare upgrade o downgrade delle subscription, modificare le quantità o migrare a prodotti diversi. A seconda della modalità di proratazione selezionata, una modifica può generare un addebito immediato, creare un credito oppure non applicare alcun adeguamento di fatturazione.
Puoi modificare i piani delle subscription e aggiornare la data della fatturazione successiva direttamente dalla dashboard di Dodo Payments. In questo modo puoi adeguare rapidamente le subscription per richieste all’assistenza clienti, upgrade promozionali o migrazioni di piano senza effettuare chiamate API.
Abilita le modifiche al piano self-service: vuoi consentire ai clienti di effettuare autonomamente upgrade o downgrade delle proprie subscription tramite il Customer Portal? Aggiungi i prodotti in subscription a una Product Collection e abilita “Allow Subscription Updates” nelle impostazioni della subscription.

Product Collections

Raggruppa i prodotti correlati in raccolte per abilitare percorsi fluidi di upgrade e downgrade nel Customer Portal.

Modalità di proratazione

Scegli come addebitare i clienti quando modificano il piano:
Confronto rapido delle quattro modalità di proratazione:

prorated_immediately

Addebita un importo proporzionato in base al tempo rimanente nel ciclo di fatturazione corrente. Ideale per una fatturazione equa che tenga conto del tempo non utilizzato.

difference_immediately

Addebita immediatamente la differenza di prezzo (upgrade) oppure aggiunge un credito per i rinnovi futuri (downgrade). Ideale per semplici scenari di upgrade e downgrade.
I crediti derivanti dai downgrade che usano difference_immediately sono associati alla subscription e vengono applicati automaticamente ai rinnovi futuri. Sono distinti dai vantaggi di Credit-Based Billing.
Quando un cliente effettua un downgrade con difference_immediately, il valore non utilizzato diventa un credito associato alla subscription, che compensa automaticamente i rinnovi futuri:

full_immediately

Addebita immediatamente l’intero importo del nuovo piano, ignorando il tempo rimanente. Ideale per reimpostare i cicli di fatturazione.

do_not_bill

Passa al nuovo piano senza alcun adeguamento di fatturazione. Nessun addebito di proratazione e nessun credito: il cliente passa semplicemente al nuovo piano. Ideale per migrazioni omaggio, cambi a piani gratuiti o scenari in cui vuoi assorbire la differenza di costo.
Scenario: un cliente con Basic (30/mese)effettualupgradeaPro(30/mese) effettua l'upgrade a Pro (80/mese) il giorno 16 di un ciclo di 30 giorni usando prorated_immediately.
Il rinnovo successivo è il 15 febbraio (16 gennaio + 30 giorni): $80.00/mese.
Per esempi di calcolo e casi limite più dettagliati, consulta la Guida completa a upgrade e downgrade.
Scenario: un cliente con Pro (80/mese)effettuaildowngradeaStarter(80/mese) effettua il downgrade a Starter (20/mese) usando difference_immediately.
Il credito di $60 viene applicato automaticamente ai rinnovi futuri:
  • Rinnovo 1: 2020 − 20 (credito) = **0.00(creditoresiduo:0.00** (credito residuo: 40)
  • Rinnovo 2: 2020 − 20 (credito) = **0.00(creditoresiduo:0.00** (credito residuo: 20)
  • Rinnovo 3: 2020 − 20 (credito) = $0.00 (credito esaurito)
  • Rinnovo 4: $20.00 (prezzo completo)
Scopri di più sulla gestione dei crediti nella Guida a upgrade e downgrade.

Modificare i piani con gli add-on

Modifica gli add-on quando cambi piano. Gli add-on sono inclusi nei calcoli della proratazione:
Le modifiche al piano generano addebiti immediati. Gli addebiti non riusciti possono spostare la subscription nello stato on_hold. Tieni traccia delle modifiche tramite gli eventi webhook subscription.plan_changed.

Visualizzare in anteprima le modifiche al piano

Prima di confermare una modifica al piano, visualizza in anteprima l’addebito esatto e la subscription risultante:

Preview Change Plan API

Visualizza in anteprima le modifiche al piano prima di confermarle.

Stati della subscription

Nel corso della sua durata, una subscription attraversa un insieme definito di stati. Questa tabella è il riferimento per ogni stato, per le cause che lo determinano e per le modalità di recupero, quando disponibili.
on_hold e failed vengono spesso confusi. on_hold è uno stato recuperabile per una subscription già attiva il cui rinnovo non è riuscito. failed è uno stato terminale che si verifica solo quando non riesce la creazione iniziale della subscription: non può essere riattivato.

Macchina a stati

Stato On Hold

Una subscription entra nello stato on_hold quando:
  • Un pagamento di rinnovo non riesce (fondi insufficienti, carta scaduta e così via)
  • Un addebito per modifica del piano non riesce
  • L’autorizzazione del metodo di pagamento non riesce
Quando una subscription si trova nello stato on_hold, non si rinnoverà automaticamente. Devi aggiornare il metodo di pagamento per riattivarla.

Riattivare una subscription dallo stato On Hold

Per riattivare una subscription dallo stato on_hold, aggiorna il metodo di pagamento. Questa operazione automaticamente:
  1. Crea un addebito per gli importi ancora dovuti
  2. Genera una fattura
  3. Elabora il pagamento usando il nuovo metodo di pagamento
  4. Riattiva la subscription allo stato active dopo il pagamento riuscito
Dopo aver aggiornato correttamente il metodo di pagamento per una subscription on_hold, riceverai gli eventi webhook payment.succeeded seguiti da subscription.active.

Eventi webhook per transizione

Ogni transizione genera un webhook, così puoi gestire la logica dei diritti senza eseguire polling:

Subscription Webhook Payloads

Visualizza lo schema completo del payload per gli eventi del ciclo di vita della subscription.

Gestione tramite API

Usa POST /subscriptions per creare programmaticamente subscription a partire dai prodotti, con prove e add-on facoltativi.

API Reference

Visualizza l’API per la creazione di una subscription.
Usa PATCH /subscriptions/{id} per aggiornare le quantità, annullare alla data della fatturazione successiva o modificare i metadati.

API Reference

Scopri come aggiornare i dettagli della subscription.
Modifica il prodotto attivo e le quantità con i controlli di proratazione.

API Reference

Esamina le opzioni di modifica del piano.
Per le subscription on-demand, addebita importi specifici su richiesta.

API Reference

Addebita una subscription on-demand.
Usa GET /subscriptions per elencare tutte le subscription e GET /subscriptions/{id} per recuperarne una.

API Reference

Consulta le API per l’elenco e il recupero.
Recupera l’utilizzo registrato per i modelli di prezzo basati sull’utilizzo o ibridi.

API Reference

Consulta l’API della cronologia di utilizzo.
Aggiorna il metodo di pagamento per una subscription. Per le subscription attive, questa operazione aggiorna il metodo di pagamento per i rinnovi futuri. Per le subscription nello stato on_hold, riattiva la subscription creando un addebito per gli importi ancora dovuti.Quando generi un nuovo link per il metodo di pagamento (il tipo di richiesta New), puoi passare allowed_payment_method_types per limitare i metodi di pagamento visualizzati dal cliente in quella pagina. I clienti non vedranno mai un metodo che non è incluso nell’elenco, anche se includere un metodo non ne garantisce la visualizzazione (la disponibilità dipende comunque da fattori quali la posizione del cliente e le impostazioni della tua attività).

API Reference

Scopri come aggiornare i metodi di pagamento e riattivare le subscription.

Casi d’uso comuni

  • SaaS e API: accesso a livelli con add-on per postazioni o utilizzo
  • Contenuti e media: accesso mensile con prove introduttive
  • Piani di assistenza B2B: contratti annuali con add-on di assistenza premium
  • Strumenti e plugin: chiavi di licenza e versioni rilasciate

Esempi di integrazione

Sessioni di checkout (subscription)

Quando crei sessioni di checkout, includi il prodotto in subscription e gli eventuali add-on:

Modifiche al piano con proratazione

Effettua l’upgrade o il downgrade di una subscription e controlla il comportamento della proratazione:

Annullamento alla data della fatturazione successiva

Pianifica un annullamento che abbia effetto al termine del periodo di fatturazione corrente:

Estendere il periodo della subscription

Estendi la durata di una subscription passando un nuovo subscription_period_count e subscription_period_interval a PATCH /subscriptions/{id}. La scadenza della subscription viene ricalcolata in base al nuovo conteggio e intervallo; ad esempio, per concedere a un cliente tempo aggiuntivo sul piano corrente:
Il periodo di una subscription può essere aumentato, ma mai abbreviato.

Subscription on-demand

Crea una subscription on-demand e addebita in seguito quando necessario:

Aggiornare il metodo di pagamento per una subscription attiva

Aggiorna il metodo di pagamento per una subscription attiva:

Riattivare una subscription dallo stato on_hold

Riattiva una subscription sospesa a causa di un pagamento non riuscito:

Subscription con mandati conformi alle norme RBI

Le subscription UPI e con carte indiane operano secondo le normative RBI (Reserve Bank of India), con requisiti specifici per i mandati:

Limiti dei mandati

Il tipo e l’importo del mandato dipendono dall’addebito ricorrente della subscription:
  • Addebiti inferiori alla soglia del mandato (₹15,000 per impostazione predefinita): creiamo un mandato on-demand per l’importo della soglia. L’importo della subscription viene addebitato periodicamente in base alla frequenza della subscription, fino al limite del mandato.
  • Addebiti pari o superiori alla soglia del mandato: creiamo un mandato per subscription (o un mandato on-demand) per l’importo esatto della subscription.
La soglia del mandato è configurabile per merchant o per richiesta tramite mandate_min_amount_inr_paise (paise INR). L’importo registrato presso la banca è max(mandate_floor, billing_amount); pertanto, quando la fatturazione è inferiore, la soglia diventa di fatto il limite massimo di autorizzazione mostrato al cliente. Per informazioni dettagliate sui mandati conformi alle norme RBI e sulla soglia configurabile dei mandati per i metodi di pagamento indiani, consulta la pagina Metodi di pagamento in India.

Considerazioni su upgrade e downgrade

Importante: quando effettui l’upgrade o il downgrade delle subscription, considera attentamente i limiti dei mandati:
  • Se un upgrade o downgrade genera un importo superiore a Rs 15,000 e oltrepassa il limite di pagamento on-demand esistente, l’addebito della transazione potrebbe non riuscire.
  • In questi casi, il cliente potrebbe dover aggiornare il metodo di pagamento o modificare nuovamente la subscription per stabilire un nuovo mandato con il limite corretto.

Autorizzazione per addebiti di importo elevato

Per addebiti della subscription pari o superiori a Rs 15,000:
  • La banca chiederà al cliente di autorizzare la transazione.
  • Se il cliente non autorizza la transazione, questa non andrà a buon fine e la subscription verrà sospesa.

Ritardo di elaborazione di 48 ore

Tempistiche di elaborazione: gli addebiti ricorrenti sulle carte indiane e sulle subscription UPI seguono un modello di elaborazione particolare:
  • Gli addebiti vengono avviati nella data pianificata, in base alla frequenza della subscription.
  • La detrazione effettiva dall’account del cliente avviene solo dopo 48 ore dall’avvio del pagamento.
  • Questa finestra di 48 ore può estendersi fino a 2-3 ore aggiuntive, a seconda delle risposte delle API bancarie.

Finestra per l’annullamento del mandato

Durante la finestra di elaborazione di 48 ore:
  • I clienti possono annullare il mandato tramite le proprie app bancarie.
  • Se un cliente annulla il mandato durante questo periodo, la subscription rimarrà attiva (si tratta di un caso limite specifico delle subscription AutoPay con carte indiane e UPI).
  • Tuttavia, la detrazione effettiva potrebbe non riuscire e, in tal caso, metteremo la subscription in sospeso.
Gestione dei casi limite: se fornisci immediatamente ai clienti vantaggi, crediti o utilizzo della subscription all’avvio dell’addebito, devi gestire correttamente questa finestra di 48 ore nella tua applicazione. Considera di:
  • Ritardare l’attivazione dei vantaggi fino alla conferma del pagamento
  • Implementare periodi di tolleranza o accesso temporaneo
  • Monitorare lo stato della subscription per rilevare gli annullamenti dei mandati
  • Gestire gli stati sospesi della subscription nella logica dell’applicazione
Monitora i webhook della subscription per tenere traccia delle modifiche allo stato del pagamento e gestire i casi limite in cui i mandati vengono annullati durante la finestra di 48 ore.

Best practice

  • Inizia con livelli chiari: 2–3 piani con differenze evidenti
  • Comunica i prezzi: mostra totali, proratazione e prossimo rinnovo
  • Usa le prove con criterio: converti con l’onboarding, non solo con il tempo
  • Sfrutta gli add-on: mantieni semplici i piani di base e proponi gli extra
  • Testa le modifiche: convalida le modifiche ai piani e la proratazione in modalità di test
Le subscription sono una base flessibile per i ricavi ricorrenti. Inizia in modo semplice, testa accuratamente e migliora in base alle metriche di adozione, abbandono ed espansione.
Ultima modifica il 31 luglio 2026