Skip to main content
I prodotti sono la base di Dodo Payments. Che tu venda un download una tantum, un abbonamento ricorrente o un accesso basato sull’utilizzo, devi iniziare creando un prodotto. Ogni prodotto definisce il prezzo, la modalità di presentazione al checkout e il fulfillment dopo l’acquisto.

One-Time

Addebita una sola volta per l’accesso a vita o per un singolo contenuto.

Subscriptions

Fattura secondo una pianificazione con periodi di prova, prorata e componenti aggiuntivi.

Usage-Based

Misura il consumo e fattura in base all’utilizzo effettivo.

Crea un prodotto

Crea prodotti dalla dashboard o tramite API. Scegli subito il modello di prezzo — One-Time, Subscription o Usage-Based — quindi configura i dettagli. Il modello di prezzo è immutabile; crea un nuovo prodotto se ti serve un modello diverso.
1

Name and Description

Fornisci un titolo chiaro e una descrizione concisa, incentrata sul valore. Le descrizioni supportano Markdown.
Mantieni la prima frase rivolta al cliente e orientata al risultato; viene mostrata in modo prominente al checkout.
Dashboard dei prodotti con il modulo di creazione del prodotto
2

Pricing Model and Price

Seleziona il modello di prezzo:
  • One-Time: prezzo fisso pagato una sola volta.
  • Subscription: prezzo ricorrente con intervallo e periodo di prova opzionale.
  • Usage-Based: prezzo calcolato in base agli eventi misurati.
Poi imposta il prezzo:
  • Price: importo di base e valuta. Puoi impostare il prezzo di base in qualsiasi valuta supportata da Dodo Payments, ad eccezione dei prodotti Pay What You Want, la cui valuta di base deve essere USD, GBP o EUR. USD, GBP, EUR e INR sono fissati in cima al selettore delle valute per un accesso rapido.
  • Discount (%): sconto percentuale opzionale mostrato nel checkout e nelle fatture.
  • Per gli abbonamenti, imposta Repeat every (ad esempio, 1 mese o 1 anno), Trial days e un Trial amount opzionale per un paid trial. Un prezzo di abbonamento diverso da zero deve essere almeno di $1 (o dell’equivalente nella valuta scelta). È supportato anche un prezzo esattamente pari a $0 e puoi consentire ai clienti di iniziare un abbonamento da $0 senza carta; consulta Card-Optional at Zero Price. Gli importi negativi non sono supportati.
Con Adaptive Currency attivata, i clienti al di fuori della tua valuta di base ricevono l’addebito nella valuta locale, così puoi definire i prezzi nella valuta più adatta al tuo mercato. Quando è disattivata, pagano nella tua valuta di base.
Vuoi un prezzo fisso per valuta o paese invece di una conversione FX in tempo reale? Imposta un pricing_mode sul prodotto e associa regole di Localized Pricing, ad esempio €9.99 in EUR o ₹999 in India.
La modifica di un prezzo cambia quanto pagano i nuovi clienti. Gli abbonamenti esistenti non vengono mai ricalcolati; ognuno mantiene il prezzo con cui è stato creato. Per trasferire un abbonato esistente a un prezzo diverso, modifica esplicitamente il suo piano tramite la Change Plan API; le impostazioni di prorata si applicano alla modifica del piano, non alle modifiche del prezzo.
3

Product Media

Carica immagini per mostrare il prodotto nel checkout e nelle fatture. Formati supportati: PNG, JPG, WebP, fino a 3 MB. Puoi riordinare o sostituire le immagini in qualsiasi momento.
4

Automated Entitlements

Nella sezione Entitlements, associa il fulfillment che si attiva automaticamente dopo il pagamento:
  • License Keys: emetti e valida chiavi univoche.
  • File Downloads: concedi l’accesso sicuro ai file.
  • Custom: attiva la tua logica di entitlement tramite webhook.
Aggiungi o rimuovi i vantaggi man mano che la tua offerta si evolve. Gli abbonati esistenti ottengono o perdono l’accesso di conseguenza.

Varianti e opzioni di prezzo

Invece di creare varianti sotto un unico prodotto, crea prodotti separati per ogni opzione di prezzo (ad esempio, mensile e annuale). Quindi raggruppali in una Product Collection per presentare tutte le opzioni in un unico checkout e abilitare il cambio di piano nel Customer Portal.
Pagina di checkout con più opzioni di prodotto in una raccolta

Perché questo approccio?

  • Modelli di prezzo chiari: ogni prodotto ha un unico modello di prezzo ben definito (una tantum, abbonamento o basato sull’utilizzo).
  • API prevedibili: integrazioni più semplici senza logica per varianti nidificate.
  • Report più semplici: monitora ricavi e metriche per prodotto senza aggregare le varianti.
  • Checkout flessibile: mostra più prodotti affiancati, consentendo ai clienti di confrontarli e scegliere.

Come funzionano le Product Collection

  1. Crea i prodotti: configura singoli prodotti per ogni piano (ad esempio, Starter mensile, Starter annuale, Pro mensile, Pro annuale).
  2. Raggruppali in una raccolta: aggiungi i prodotti correlati a una Product Collection.
  3. Checkout unificato: i clienti vedono tutte le opzioni in un unico checkout e selezionano il piano preferito.
  4. Cambio di piano: i clienti possono effettuare l’upgrade o il downgrade tra prodotti della stessa raccolta tramite il Customer Portal.

Product Collections

Raggruppa i prodotti correlati per offrire esperienze di checkout unificate e percorsi di upgrade/downgrade.

Gestione dei prodotti

Puoi gestire i prodotti tramite dashboard o programmaticamente tramite API. L’API offre il controllo completo sulla creazione, l’aggiornamento, il recupero, il caricamento delle immagini e l’archiviazione dei prodotti.

Gestione tramite dashboard

  • Update: modifica in qualsiasi momento nome, descrizione, immagini, prezzo, campi e vantaggi (il modello di prezzo è immutabile).
  • Archive: nascondi un prodotto dai nuovi acquisti senza interrompere i clienti esistenti. Puoi annullare l’archiviazione in un secondo momento.
  • Drafts: un prodotto in lavorazione viene salvato come bozza, così puoi riprenderlo in seguito. Le bozze vengono conservate separatamente per la modalità di test e la modalità live, quindi un prodotto incompleto in una modalità non influisce mai sull’altra. Usa Clear Draft per eliminarla e ricominciare da zero.
Le pagine dei moduli dei prodotti e delle collection includono pulsanti di azione nell’intestazione, così puoi salvare senza scorrere fino in fondo a un modulo lungo.

Gestione tramite API

Le istruzioni seguenti consentono di creare, aggiornare, gestire e recuperare i prodotti, incluso il caricamento delle immagini.
Invia una richiesta POST all’endpoint /products con dettagli come nome, descrizione, prezzo, valuta e indicazione se si tratta di un prodotto ricorrente.Per i prodotti ricorrenti, imposta l’oggetto price su un prezzo ricorrente (type: recurring_price) e specifica payment_frequency_interval e subscription_period_interval (Day, Week, Month o Year) insieme ai conteggi corrispondenti.

Create Product API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Create Product API.
Invia una richiesta PATCH all’endpoint /products/{product_id}. Puoi aggiornare proprietà come nome, prezzo e descrizione mantenendo invariati gli altri dettagli.Assicurati che product_id nell’endpoint corrisponda a un prodotto esistente.

Update Product API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Update Product API.
Recupera l’elenco dei prodotti memorizzati nel tuo account utilizzando una richiesta GET all’endpoint /products. In questo modo puoi recuperare i dettagli dei prodotti, inclusi quelli attivi e archiviati.

Retrieve Products API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Retrieve Products API.
Associa un’immagine a un prodotto caricandola su AWS S3 tramite un URL pre-firmato fornito dall’API. Per prima cosa, richiedi un URL di caricamento dell’immagine dall’endpoint /products/{product_id}/images, quindi utilizza l’URL fornito per caricare l’immagine entro 60 secondi.
L’URL pre-firmato scade dopo 60 secondi, quindi l’immagine deve essere caricata entro questo intervallo.
Dopo aver ricevuto l’URL pre-firmato dall’API, carica l’immagine utilizzando il metodo PUT. Questo garantisce un accesso sicuro e temporaneo ad AWS S3 per il caricamento dell’immagine.Librerie supportate per il caricamento su S3:
  • Node.js: axios, node-fetch
  • Python: requests, boto3
  • Go: net/http
  • PHP: GuzzleHttp
  • Ruby: rest-client
Se il caricamento ha esito positivo, AWS S3 restituirà uno stato 200 OK, a indicare che l’immagine è stata archiviata correttamente.

Upload Product Image API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Upload Product Image API.
Nascondi un prodotto dai nuovi acquisti senza eliminarlo definitivamente utilizzando una richiesta DELETE all’endpoint /products/{id}.

Archive Product API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Archive Product API.
Ripristina un prodotto archiviato inviando una richiesta POST all’endpoint /products/{product_id}/unarchive. In questo modo riattivi il prodotto e lo rendi nuovamente disponibile.

Unarchive Product API

Consulta la struttura dettagliata della richiesta e della risposta nella documentazione Unarchive Product API.
Crea flussi di pagamento o abbonamento dai prodotti e completa automaticamente il fulfillment tramite vantaggi e webhook.

Checkout Sessions

Crea sessioni di checkout per acquisti una tantum o in abbonamento.

Payment Webhooks

Reagisci agli eventi del ciclo di vita dei pagamenti.

Subscription Webhooks

Gestisci gli eventi di creazione, rinnovo e annullamento degli abbonamenti.

Best practice

  • Inizia dalla chiarezza: crea prodotti separati per ogni opzione di prezzo (mensile e annuale).
  • Usa i periodi di prova con criterio: abbina i periodi di prova all’onboarding per favorire l’attivazione.
  • Automatizza il fulfillment: usa vantaggi e webhook per fornire subito ciò che serve.
  • Aggiungi metadati: conserva gli ID del tuo sistema per la riconciliazione.

Correlati

Product Analytics

Monitora ricavi, clienti, retention, abbonati e MRR per ogni singolo prodotto.

Localized Pricing

Imposta prezzi fissi per valuta o paese su un prodotto invece di affidarti ai tassi di cambio in tempo reale.
Ultima modifica il 26 settembre 2026