Funktioner
- Interaktiv TUI: Kör
dodoutan argument för att öppna det interaktiva gränssnittet med kommandopalett, historik och aviseringar i realtid. - Inbyggd AI-assistent: Ställ frågor eller utför åtgärder på vanlig engelska med
/ai. Assistenten kördodopayments-mcplokalt och kräver ingen extra konfiguration. - Krypterade autentiseringsuppgifter: API-nycklar lagras i
~/.dodopayments/config.jsonoch krypteras med AES-256-GCM samt en nyckel som härleds från din dator. Inga autentiseringsuppgifter i klartext lagras på disken. - Automatiska uppdateringar: CLI:t söker efter nya versioner vid start och meddelar dig i TUI:n. För npm- och Bun-installationer kör du
/updateför att uppgradera på plats. - Webhook-verktyg: Vidarebefordra webhooks i testläge till din lokala server eller skicka simulerade webhook-payloads offline.
- Projektgenerering: Lägg till billing-rutter i Next.js-, Express- och Better Auth-projekt med
dodo init.
Installation
På macOS eller Linux installerar du den senaste binärutgåvan med installationsskriptet:dodo i den första skrivbara katalogen av /usr/local/bin, ~/.local/bin och ~/bin, eller i ~/.local/bin om ingen av dem är skrivbar. Om du vill installera en specifik utgåva anger du dess tagg i miljövariabeln DODO_VERSION. Om du vill välja katalog anger du DODO_INSTALL_DIR.
Installera med NPM eller Bun
Om du har Node.js eller Bun installerar du paketetdodopayments-cli globalt. Installationer via pakethanterare hämtar den senast publicerade versionen:
Direkta underkommandon som
dodo login körs med Node.js 18 eller senare. När du installerar via en pakethanterare behöver den interaktiva TUI:n även Bun. Utgåvans binärer kräver ingen av dessa runtime-miljöer.Manuell installation (utan Node / Bun)
Om du vill installera utan att köra ett fjärrskript laddar du själv ner binären.1
Download the Binary
Ladda ner binären för din plattform från den senaste GitHub-utgåvan.
2
Rename the Binary to dodo
3
Move It to a Directory on Your PATH
I Windows kräver det administratörsbehörighet att flytta filen till
C:\Windows\System32.4
(Optional) Verify the Download
Varje utgåva publicerar en fil med
SHA256SUMS.txt. Ladda ner den bredvid binären och verifiera sedan binären:Autentisering
Logga in med en API-nyckel innan du kör kommandon som läser från eller ändrar ditt konto. Om du vill logga in med ett direkt underkommando skickar du nyckeln och dess läge,test eller live:
- Öppnar kontrollpanelens sida Developer → API Keys i din webbläsare.
- Ber dig klistra in din API-nyckel.
- Ber dig välja Test Mode eller Live Mode.
~/.dodopayments/config.json.
Krypteringsnyckeln härleds från din dator, så de lagrade autentiseringsuppgifterna fungerar endast på den datorn. Om du uppgraderar från v3.0.x, som lagrade nycklar i operativsystemets nyckelring, kör du
dodo login igen. Nycklar i den äldre filen med klartext, ~/.dodopayments/api-key, migreras automatiskt och filen tas bort.Byta läge och logga ut
Du kan vara inloggad med en testlägesnyckel och en live-lägesnyckel samtidigt. Om du vill byta aktivt läge i TUI:n kör du/switch. Ta bort lagrade nycklar så här:
test, live eller all. I TUI:n ber /logout dig välja All accounts, Test Mode eller Live Mode och ber dig sedan bekräfta.
Användning
Du kan använda CLI:t i två lägen.1. Interaktiv TUI (rekommenderas)
Kördodo utan argument för att öppna det interaktiva gränssnittet:
/ för att öppna kommandopaletten. Text som inte börjar med / skickas till AI-assistenten.
2. Direkta underkommandon
Kör ett kommando utan att öppna TUI:n:dodo med /, till exempel /payments list 1. Kommandon som är märkta endast TUI är interaktiva guider. I direktläge skriver de ut ett meddelande som ber dig öppna TUI:n.
AI-assistent
Ställ frågor om ditt konto eller utför åtgärder på vanlig engelska. Assistenten kördodopayments-mcp på din dator och kräver därför ingen extra konfiguration eller OAuth-flow. Den anropar Dodo Payments API från din dator med din lagrade nyckel och skickar dina frågor till språkmodellen.
I direktläge kör du
dodo ai följt av din fråga. Exempel i TUI:n:
Projektgenerering
dodo init lägger till Dodo Payments billing-rutter i ett befintligt projekt. Det skriver ruttfilerna, installerar det matchande adapterpaketet @dodopayments/* och lägger till saknade DODO_PAYMENTS_*-variabler med platshållarvärden i din .env-fil. Filer och variabler som redan finns hoppas över, och kommandot körs utan inloggning.
För Better-Auth-genereringen kan du skicka en kommaseparerad lista över de pluginer som ska genereras:
checkout, portal, usage och webhooks. Utan en lista genereras alla fyra.
Om ditt projekt har en
src/-katalog skriver generatorn filerna i den. Den väljer installationskommando från projektets lock-fil (bun, pnpm eller yarn) och använder npm när ingen lock-fil hittas.Kommandoreferens
Dessa kommandon kräver en inloggad API-nyckel. Listkommandon tar ett valfritt sidnummer, som är 1 som standard, och visar upp till 100 objekt per sida.Produkter
Hantera din produktkatalog.Betalningar
Visa betalningstransaktioner.Kunder
Hantera dina kunder.Rabatter
Hantera rabattkoder.Licenser
Visa licensnycklar. Kommandot stavaslicences.
Tillägg
Hantera produkttillägg.Återbetalningar
Visa information om återbetalningar.Checkout
Skapa hostade checkout-sessioner.Webhooks
CLI:t har två webhook-verktyg för utveckling: en lyssnare som vidarebefordrar webhooks i testläge till din lokala server och en utlösare som skickar simulerade webhook-payloads till valfri endpoint.
I direktläge krävs argumenten. I TUI:n kör du
/wh listen eller /wh trigger utan argument för att öppna en interaktiv guide.
Lyssna efter webhooks
Vidarebefordra webhooks från ditt Dodo Payments-konto till din lokala utvecklingsserver i realtid.1
Enter Your Local Endpoint URL
Skicka den lokala URL som ska ta emot webhooks, till exempel
http://localhost:3000/webhook. I TUI-guiden ber CLI:t dig ange den.2
Automatic Setup
Om ditt konto saknar en webhook-endpoint för CLI:ts reläserver skapar CLI:t en. Endpointen visas i Developer → Webhooks. CLI:t öppnar sedan en WebSocket-anslutning till reläet för att ta emot händelser i realtid.
3
Receive and Forward
När en webhook-händelse utlöses, till exempel av en testbetalning eller en prenumerationsändring, vidarebefordrar CLI:t payloaden och headers till din lokala endpoint som en
POST-begäran. Det loggar händelsetypen och svaret från din endpoint och skickar svaret tillbaka till reläet.Reläet och CLI:n tolkar JSON-bodyt och serialiserar det igen innan det vidarebefordras. Om den vidarebefordrade bodyn skiljer sig byte för byte från originalet, till exempel i talformatet, misslyckas signaturverifieringen även om headers är intakta.
Utlös testwebhooks
Skicka en simulerad webhook-payload till valfri endpoint utan att skapa riktiga transaktioner./wh trigger-guiden i TUI:n leder dig genom följande:
- Ange en destinationens endpoint-URL.
- Ange valfritt Business ID, Product ID, Metadata (ett JSON-objekt), Customer email och Customer ID för payloaden. Tomma fält använder platshållarvärden.
- Välj en event att skicka från en interaktiv meny. Du kan skicka flera händelser i följd. Välj exit när du är klar.
dodo wh trigger kräver inte inloggning. Det fungerar som en lokal, offline webhook-payload-generator.Webhook-händelser som stöds
dodo wh trigger kan skicka simulerade payloads för 46 av de 48 händelsetyper som Dodo Payments levererar. Det stöder inte subscription.past_due eller subscription.unpaused. Skicka händelsenamnet exakt som det listas:
Tre triggernamn skiljer sig från händelsen
type i payloaden de skickar: payment.success skickar payment.succeeded, refund.success skickar refund.succeeded och licence.created skickar license_key.created.
Simulerade payload-strukturer följer motsvarande scheman i API-referensen. Se Webhook-händelser för information om vad varje händelse betyder och när Dodo Payments skickar den i produktion.
Miljövariabler
Den här variabeln ändrar hurdodo wh listen ansluter:
Uppdateringar
CLI:t söker efter en nyare version vid start och visar en avisering i statusfältet när en sådan finns. Om du vill uppgradera en npm- eller Bun-installation från TUI:n kör du:/update kan inte uppgradera en binär utgåva. För binärinstallationer, inklusive installationer med installationsskriptet, länkar det i stället till den senaste GitHub-utgåvan. Om du vill uppgradera från skalet kör du kommandot som du installerade med igen:
Resurser
GitHub Repository
Källkod och utgåvor.
npm Package
dodopayments-cli-paketet i npm-registret.Support
- Discord: Gå med i community-servern.
- GitHub: Öppna ett ärende i kodförrådet.
- E-post: Kontakta support@dodopayments.com.