Pular para o conteúdo principal

Visão Geral

O boilerplate mínimo Astro fornece um ponto de partida pronto para uso para integrar os Pagamentos Dodo com sua aplicação Astro. Este template inclui sessões de checkout, manipulação de webhook, portal do cliente e componentes de UI modernos para ajudá-lo a começar a aceitar pagamentos rapidamente.
Este boilerplate usa Astro 5 com TypeScript, Tailwind CSS 4 e o adaptador @dodopayments/astro.

Recursos

  • Quick Setup - Comece em menos de 5 minutos
  • Payment Integration - Fluxo de checkout pré-configurado usando @dodopayments/astro
  • Modern UI - Página de preços limpa, com tema escuro, usando Tailwind CSS
  • Webhook Handler - Endpoint pronto para uso para eventos de pagamento
  • Customer Portal - Gerenciamento de assinaturas com um clique
  • TypeScript - Totalmente tipado com tipos mínimos e direcionados
  • Pre-filled Checkout - Demonstra como passar dados do cliente para melhorar a experiência

Pré-requisitos

Antes de começar, certifique-se de que você tem:
  • Node.js versão LTS (necessário para Astro 5)
  • Conta Dodo Payments (para acessar as chaves da API e do Webhook no painel)

Início Rápido

1

Clone the Repository

2

Install Dependencies

3

Get API Credentials

Inscreva-se em Dodo Payments e obtenha suas credenciais no painel:
Certifique-se de estar no Modo de Teste durante o desenvolvimento!
4

Configure Environment Variables

Crie um arquivo .env no diretório raiz:
Atualize os valores com suas credenciais do Dodo Payments:
Nunca faça commit de seu arquivo .env no controle de versão. Ele já está incluído em .gitignore.
5

Add Your Products

Atualize src/lib/products.ts com seus IDs de produto reais da Dodo Payments:
6

Run the Development Server

Abra http://localhost:4321 para ver sua página de preços!

Estrutura do Projeto

Personalização

Atualizar Informações do Produto

Edite src/lib/products.ts para alterar:
  • IDs de produto (do seu painel Dodo)
  • Preços
  • Funcionalidades
  • Descrições

Pré-preencher Dados do Cliente

No src/components/ProductCard.astro, substitua os valores codificados pelos seus dados reais de usuário:

Atualizar Portal do Cliente

Em src/components/Header.astro, substitua o ID de cliente codificado pelo ID real do cliente do seu sistema de autenticação ou banco de dados:
Você pode completar uma compra de teste para obter o ID do cliente para testes.

Eventos de Webhook

O boilerplate demonstra o tratamento de eventos de webhook em src/pages/api/webhook.ts:
  • onSubscriptionActive - Disparado quando uma assinatura se torna ativa
  • onSubscriptionCancelled - Disparado quando uma assinatura é cancelada
Adicione sua lógica de negócios dentro desses manipuladores:
Adicione mais eventos de webhook conforme necessário. Para desenvolvimento local, você pode usar ferramentas como ngrok para criar um túnel seguro para seu servidor local e usá-lo como sua URL de webhook.

Implantação

Este boilerplate usa saída estática com renderização sob demanda para rotas de API. Você precisará instalar um adapter para sua plataforma de implantação: Veja os guias de implantação do Astro para todas as plataformas.

Atualizar URL do Webhook

Após a implantação, atualize sua URL de webhook no Painel Dodo Payments:
Lembre-se também de atualizar a variável de ambiente DODO_PAYMENTS_WEBHOOK_KEY em seu ambiente de produção para corresponder à chave de assinatura do webhook para o seu domínio implantado.

Solução de Problemas

Exclua node_modules e reinstale as dependências:
Causas comuns:
  • ID do produto inválido - verifique se existe no seu painel Dodo
  • Chave de API ou configuração de ambiente incorreta em .env
  • Verifique o console do navegador e o terminal em busca de erros
Para testes locais, use ngrok para expor seu servidor:
Atualize a URL do webhook no seu painel Dodo para a URL do ngrok. Lembre-se de atualizar seu arquivo .env com a chave de verificação do webhook correta.
Este boilerplate usa saída estática com rotas de API sob demanda. Você precisa instalar um adaptador para implantação:Consulte os guias de implantação do Astro para mais detalhes.

Saiba Mais

Suporte

Precisa de ajuda com o boilerplate?
Última modificação em 28 de maio de 2026