Recursos
- TUI interativa: Execute
dodosem argumentos para abrir a interface interativa, com paleta de comandos, histórico e notificações em tempo real. - Assistente de IA integrado: Faça perguntas ou execute ações em inglês simples com
/ai. O assistente executadodopayments-mcplocalmente e não precisa de configuração adicional. - Credenciais criptografadas: As chaves de API são armazenadas em
~/.dodopayments/config.json, criptografadas com AES-256-GCM e uma chave derivada da sua máquina. Nenhuma credencial em texto simples é armazenada no disco. - Atualização automática: O CLI verifica novas versões na inicialização e envia uma notificação na TUI. Para instalações com npm e Bun, execute
/updatepara atualizar no local. - Ferramentas para webhooks: Encaminhe webhooks do modo de teste para seu servidor local ou envie payloads de webhook simulados offline.
- Scaffolding: Adicione rotas de cobrança a projetos Next.js, Express e Better Auth com
dodo init.
Instalação
No macOS ou Linux, instale o binário da versão mais recente com o script de instalação:dodo no primeiro diretório gravável entre /usr/local/bin, ~/.local/bin e ~/bin, ou em ~/.local/bin se nenhum deles for gravável. Para instalar uma versão específica, defina a variável de ambiente DODO_VERSION com a tag correspondente. Para escolher o diretório, defina DODO_INSTALL_DIR.
Instalar com NPM ou Bun
Se você tiver Node.js ou Bun, instale o pacotedodopayments-cli globalmente. As instalações pelo gerenciador de pacotes obtêm a versão publicada mais recente:
Subcomandos diretos, como
dodo login, são executados no Node.js 18 ou posterior. Quando você instala por meio de um gerenciador de pacotes, a TUI interativa também precisa do Bun. Os binários de versão não precisam de nenhum runtime.Instalação manual (sem Node / Bun)
Para instalar sem executar um script remoto, baixe o binário por conta própria.1
Download the Binary
Baixe o binário para sua plataforma na versão mais recente no GitHub.
2
Rename the Binary to dodo
3
Move It to a Directory on Your PATH
No Windows, mover o arquivo para
C:\Windows\System32 requer privilégios de administrador.4
(Optional) Verify the Download
Cada versão publica um arquivo
SHA256SUMS.txt. Baixe-o ao lado do binário e verifique o binário:Autenticação
Faça login com uma chave de API antes de executar comandos que leem ou alteram sua conta. Para fazer login com um subcomando direto, informe a chave e seu modo,test ou live:
- Abre a página Developer → API Keys do dashboard no seu navegador.
- Solicita que você cole sua chave de API.
- Solicita que você escolha Test Mode ou Live Mode.
~/.dodopayments/config.json.
A chave de criptografia é derivada da sua máquina, portanto as credenciais armazenadas funcionam apenas nessa máquina. Se você atualizar da v3.0.x, que armazenava as chaves no chaveiro do sistema operacional, execute
dodo login novamente. As chaves do arquivo antigo em texto simples ~/.dodopayments/api-key são migradas automaticamente, e esse arquivo é excluído.Alternar modos e sair
Você pode manter uma chave do modo de teste e uma chave do modo ativo conectadas ao mesmo tempo. Para alternar o modo ativo na TUI, execute/switch. Para remover as chaves armazenadas:
test, live ou all. Na TUI, /logout solicita que você escolha All accounts, Test Mode ou Live Mode e, em seguida, pede sua confirmação.
Uso
Você pode usar o CLI em dois modos.1. TUI interativa (recomendado)
Executedodo sem argumentos para abrir a interface interativa:
/ para abrir a paleta de comandos. Textos que não começam com / são enviados ao assistente de IA.
2. Subcomandos diretos
Execute um comando sem abrir a TUI:dodo por /, por exemplo /payments list 1. Os comandos marcados como somente TUI são assistentes interativos. No modo direto, eles exibem uma mensagem informando que você deve abrir a TUI.
Assistente de IA
Faça perguntas sobre sua conta ou execute ações em inglês simples. O assistente executadodopayments-mcp na sua máquina, portanto não precisa de configuração adicional nem de fluxo OAuth. Ele chama a API do Dodo Payments a partir da sua máquina usando sua chave armazenada e envia seus prompts ao modelo de linguagem.
No modo direto, execute
dodo ai seguido da sua pergunta. Exemplos na TUI:
Scaffolding do projeto
dodo init adiciona rotas de cobrança do Dodo Payments a um projeto existente. Ele grava os arquivos de rota, instala o pacote adaptador correspondente @dodopayments/* e acrescenta ao arquivo .env quaisquer variáveis DODO_PAYMENTS_* ausentes, com valores de placeholder. Ele ignora arquivos e variáveis que já existem e é executado sem fazer login.
Para o scaffold do Better-Auth, você pode informar uma lista separada por vírgulas de plugins a serem gerados:
checkout, portal, usage e webhooks. Sem uma lista, todos os quatro são gerados.
Se o seu projeto tiver um diretório
src/, o scaffolder grava os arquivos dentro dele. Ele escolhe o comando de instalação a partir do lock file do projeto (bun, pnpm ou yarn) e usa npm quando não encontra nenhum deles.Referência de comandos
Esses comandos precisam de uma chave de API conectada. Os comandos de listagem aceitam um número de página opcional, cujo padrão é 1, e exibem até 100 itens por página.Produtos
Gerencie seu catálogo de produtos.Pagamentos
Ver transações de pagamento.Clientes
Gerencie seus clientes.Descontos
Gerencie códigos de desconto.Licenças
Visualize chaves de licença. O comando é escrito comolicences.
Addons
Gerencie complementos de produtos.Reembolsos
Ver informações de reembolso.Checkout
Crie sessões de checkout hospedadas.Webhooks
O CLI tem duas ferramentas de webhook para desenvolvimento: um listener, que encaminha webhooks do modo de teste para seu servidor local, e um trigger, que envia payloads de webhook simulados para qualquer endpoint.
No modo direto, os argumentos são obrigatórios. Na TUI, execute
/wh listen ou /wh trigger sem argumentos para abrir um assistente interativo.
Escutar webhooks
Encaminhe webhooks da sua conta do Dodo Payments para seu servidor de desenvolvimento local em tempo real.1
Enter Your Local Endpoint URL
Informe a URL local que deve receber os webhooks, por exemplo
http://localhost:3000/webhook. No assistente da TUI, o CLI solicita esse valor.2
Automatic Setup
Se sua conta não tiver um endpoint de webhook para o servidor de retransmissão do CLI, o CLI criará um. O endpoint aparece em Developer → Webhooks. Em seguida, o CLI abre uma conexão WebSocket com o relay para receber eventos em tempo real.
3
Receive and Forward
Quando um evento de webhook é disparado, por exemplo, por um pagamento de teste ou uma alteração de assinatura, o CLI encaminha o payload e os headers para seu endpoint local como uma solicitação
POST. Ele registra o tipo de evento e a resposta do seu endpoint e envia a resposta de volta ao relay.O relay e a CLI analisam o corpo JSON e o serializam novamente antes de encaminhá-lo. Se o corpo encaminhado diferir byte a byte do original, por exemplo, na formatação de números, a verificação da assinatura falhará mesmo que os headers estejam intactos.
Disparar webhooks de teste
Envie um payload de webhook simulado para qualquer endpoint, sem criar transações reais./wh trigger na TUI orienta você sobre como:
- Definir uma URL de endpoint de destino.
- Opcionalmente informar um Business ID, Product ID, Metadata (um objeto JSON), Customer email e Customer ID para o payload. Campos vazios usam valores de placeholder.
- Selecionar um evento para enviar em um menu interativo. Você pode enviar vários eventos em sequência. Escolha exit para finalizar.
dodo wh trigger não requer login. Ele funciona como um gerador local e offline de payloads de webhook.Eventos de webhook compatíveis
dodo wh trigger pode enviar payloads simulados para 46 dos 48 tipos de evento entregues pelo Dodo Payments. Ele não é compatível com subscription.past_due nem com subscription.unpaused. Informe o nome do evento exatamente como listado:
Três nomes de trigger diferem do evento
type no payload que enviam: payment.success envia payment.succeeded, refund.success envia refund.succeeded e licence.created envia license_key.created.
Os formatos dos payloads simulados seguem os esquemas correspondentes na referência da API. Consulte Eventos de webhook para saber o que cada evento significa e quando o Dodo Payments o emite em produção.
Variáveis de ambiente
Esta variável altera a forma comododo wh listen se conecta:
Atualizações
O CLI verifica uma versão mais recente na inicialização e exibe uma notificação na barra de status quando há uma disponível. Para atualizar uma instalação npm ou Bun pela TUI, execute:/update não pode atualizar um binário de versão. Para instalações binárias, incluindo as feitas pelo script de instalação, ele redireciona para a versão mais recente no GitHub. Para atualizar pelo shell, execute novamente o comando usado na instalação:
Recursos
GitHub Repository
Código-fonte e versões.
npm Package
O pacote
dodopayments-cli no registro npm.Suporte
- Discord: Participe do servidor da comunidade.
- GitHub: Abra uma issue no repositório.
- E-mail: Entre em contato pelo endereço support@dodopayments.com.