Gestisci le risorse Dodo Payments, crea sessioni di checkout e testa i webhook direttamente dal terminale. Progettato per sviluppatori che preferiscono la riga di comando.
Installazione
npm install -g dodopayments-cli
Installazione manuale
- Scarica l’ultima release da GitHub Releases per il tuo sistema
- Estrai e rinomina il binario in
dodo
- Spostalo in una directory presente nel tuo PATH:
sudo mv ./dodo /usr/local/bin/
Autenticazione
Prima di usare la CLI, autenticati con la tua API key:
Questo farà:
- Aprire il browser sulla pagina Dodo Payments API Keys
- Chiederti di inserire la tua API Key
- Chiederti di selezionare l’ambiente (Test Mode o Live Mode)
- Memorizzare le tue credenziali localmente in
~/.dodopayments/api-key
La CLI supporta la memorizzazione di una sola API key per ambiente. Se sono configurate sia le chiavi per la modalità test che per quella live, ti verrà chiesto quale ambiente usare per la sessione corrente.
Utilizzo
La sintassi generale è:
dodo ‹category› ‹sub-command›
Eseguire dodo senza argomenti mostra tutte le categorie disponibili. Eseguire dodo <category> senza sottocomando mostra i sottocomandi disponibili per quella categoria.
Prodotti
Gestisci il tuo catalogo prodotti.
| Comando | Descrizione |
|---|
dodo products list | Elenca tutti i prodotti (con paginazione) |
dodo products create | Apri la dashboard per creare un prodotto |
dodo products info | Visualizza i dettagli di uno specifico prodotto |
Pagamenti
Visualizza le transazioni di pagamento.
| Comando | Descrizione |
|---|
dodo payments list | Elenca tutti i pagamenti (con paginazione) |
dodo payments info | Ottieni informazioni su un pagamento specifico |
Clienti
Gestisci la tua base clienti.
| Comando | Descrizione |
|---|
dodo customers list | Elenca tutti i clienti (con paginazione) |
dodo customers create | Crea un nuovo profilo cliente |
dodo customers update | Aggiorna i dettagli di un cliente esistente |
Sconti
Gestisci coupon e sconti.
| Comando | Descrizione |
|---|
dodo discounts list | Elenca tutti gli sconti (con paginazione) |
dodo discounts create | Crea un nuovo sconto basato su percentuale |
dodo discounts delete | Rimuovi uno sconto tramite ID |
Licenze
Gestisci le licenze software.
| Comando | Descrizione |
|---|
dodo licences list | Elenca tutte le chiavi di licenza (con paginazione) |
Componenti aggiuntivi
Gestisci i componenti aggiuntivi dei prodotti.
| Comando | Descrizione |
|---|
dodo addons list | Elenca tutti i componenti aggiuntivi (con paginazione) |
dodo addons create | Apri la dashboard per creare un componente aggiuntivo |
dodo addons info | Visualizza i dettagli di uno specifico componente aggiuntivo |
Rimborsi
Visualizza le informazioni sui rimborsi.
| Comando | Descrizione |
|---|
dodo refund list | Elenca tutti i rimborsi (con paginazione) |
dodo refund info | Visualizza i dettagli di uno specifico rimborso |
Checkout
Crea sessioni di checkout.
| Comando | Descrizione |
|---|
dodo checkout new | Crea una nuova sessione di checkout e ottieni l’URL del checkout |
Il comando checkout supporta opzioni avanzate tra cui raccolta indirizzi minima, URL di ritorno, applicazione del 3D Secure, codici sconto e metadata.
Test Webhook
La CLI include due strumenti potenti per testare i webhook durante lo sviluppo: un listener che inoltra i webhook di test live al tuo server locale e un trigger che invia payload webhook simulati a qualsiasi endpoint.
Ascolta i Webhook
Inoltra i webhook da Dodo Payments direttamente al tuo server di sviluppo locale in tempo reale.
Enter your local endpoint URL
Fornisci l’URL locale dove desideri ricevere i webhook (es. http://localhost:3000/webhook).
Automatic setup
La CLI crea automaticamente un endpoint webhook sul tuo account Dodo Payments se non esiste già, quindi apre una connessione WebSocket per ricevere eventi in tempo reale.
Receive and forward
Quando si verifica un evento webhook (da un pagamento di test, una modifica di sottoscrizione, ecc.), la CLI lo riceve, registra il tipo di evento e inoltra la richiesta completa con intestazioni e corpo al tuo endpoint locale. La risposta del tuo endpoint viene registrata e reindirizzata.
Il listener webhook funziona solo con una API key in modalità test. Assicurati di aver effettuato l’accesso con una chiave di test prima di usare dodo wh listen.
Il listener preserva le intestazioni originali del webhook (webhook-id, webhook-signature, webhook-timestamp) durante l’inoltro al tuo endpoint locale, così puoi testare la logica di verifica della firma.
Attiva Webhook di Test
Invia payload webhook simulati a qualsiasi endpoint per test rapidi senza dover creare transazioni reali.
Questo ti guida attraverso:
- Impostare un URL endpoint di destinazione
- Configurare opzionalmente Business ID, Product ID e Metadata
- Selezionare un evento specifico da attivare tramite un menu interattivo
- Inviare il payload simulato e visualizzare la risposta
Dopo ogni evento, puoi selezionare un altro evento da attivare o uscire — rendendo facile testare più gestori di eventi in una sola sessione.
Lo strumento trigger invia payload simulati senza firme webhook. Disabilita la verifica della firma webhook durante il test usando unsafe_unwrap() invece di unwrap() nel tuo gestore webhook.
Eventi Webhook Supportati
| Categoria | Eventi |
|---|
| Subscription | subscription.active, subscription.updated, subscription.on_hold, subscription.renewed, subscription.plan_changed, subscription.cancelled, subscription.failed, subscription.expired |
| Payment | payment.success, payment.failed, payment.processing, payment.cancelled |
| Refund | refund.success, refund.failed |
| Dispute | dispute.opened, dispute.expired, dispute.accepted, dispute.cancelled, dispute.challenged, dispute.won, dispute.lost |
| License | licence.created |
Variabili d’Ambiente
| Variabile | Descrizione |
|---|
DODO_WH_TEST_SERVER_URL | Sovrascrivi l’URL predefinito del server di relay dei webhook usato da dodo wh listen |
Risorse
Supporto