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
@dodopayments/astro adapter.Recursos
- Configuração Rápida - Comece em menos de 5 minutos
- Integração de Pagamento - Fluxo de checkout pré-configurado usando
@dodopayments/astro - UI Moderna - Página de preços limpa e com tema escuro usando Tailwind CSS
- Manipulador de Webhook - Endpoint de webhook pronto para uso para eventos de pagamento
- Portal do Cliente - Gerenciamento de assinatura com um clique
- TypeScript - Totalmente tipado com tipos mínimos e focados
- Checkout Pré-preenchido - Demonstra a passagem de dados do cliente para melhorar a experiência do usuário
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 o Repositório
2
Instalar Dependências
3
Obter Credenciais da API
Inscreva-se em Dodo Payments e obtenha suas credenciais no painel:
- Chave da API: Painel → Desenvolvedor → Chaves da API
- Chave do Webhook: Painel → Desenvolvedor → Webhooks
4
Configurar Variáveis de Ambiente
Crie um arquivo Atualize os valores com suas credenciais do Dodo Payments:
.env no diretório raiz:5
Adicione Seus Produtos
Atualize
src/lib/products.ts com seus IDs de produto reais do Dodo Payments:6
Execute o Servidor de Desenvolvimento
Estrutura do Projeto
Personalização
Atualizar Informações do Produto
Editesrc/lib/products.ts para modificar:
- IDs dos produtos (do seu painel Dodo)
- Preços
- Recursos
- Descrições
Pré-preencher Dados do Cliente
Emsrc/components/ProductCard.astro, substitua os valores codificados por dados reais do usuário:
Atualizar Portal do Cliente
Emsrc/components/Header.astro, substitua o ID do cliente codificado pelo ID real do cliente do seu sistema de autenticação ou banco de dados:
Eventos de Webhook
O boilerplate demonstra como lidar com eventos de webhook emsrc/pages/api/webhook.ts:
onSubscriptionActive- Acionado quando uma assinatura se torna ativaonSubscriptionCancelled- Acionado quando uma assinatura é cancelada
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:| Plataforma | Guia |
|---|---|
| Vercel | Implantar no Vercel |
| Netlify | Implantar no Netlify |
| Cloudflare | Implantar no Cloudflare |
Atualizar URL do Webhook
Após a implantação, atualize sua URL de webhook no Painel Dodo Payments:DODO_PAYMENTS_WEBHOOK_KEY em seu ambiente de produção para corresponder à chave de assinatura do webhook para seu domínio implantado.
Solução de Problemas
Módulo não encontrado ou erros de build
Módulo não encontrado ou erros de build
Delete
node_modules e reinstale as dependências:Redirecionamento de checkout falha
Redirecionamento de checkout falha
Causas comuns:
- ID do produto inválido - verifique se ele existe no seu painel Dodo
- Chave da API errada ou configuração de ambiente em
.env - Verifique o console do navegador e o terminal em busca de erros
Webhooks não recebendo eventos
Webhooks não recebendo eventos
Para testes locais, use ngrok para expor seu servidor:Atualize a URL do webhook em seu painel Dodo para a URL do ngrok. Lembre-se de atualizar seu arquivo .env com a chave de verificação do webhook correta.
Link do portal do cliente não funciona
Link do portal do cliente não funciona
Substitua o
CUSTOMER_ID codificado em src/components/Header.astro por um ID de cliente real do seu painel Dodo.Ou integre seu sistema de autenticação e banco de dados para buscar o ID do cliente dinamicamente.Build falha com erro de adapter
Build falha com erro de adapter
Este boilerplate usa saída estática com rotas de API sob demanda. Você precisa instalar um adapter para implantação:Veja os guias de implantação do Astro para detalhes.
Saiba Mais
Suporte
Precisa de ajuda com o boilerplate?- Junte-se à nossa comunidade no Discord para perguntas e discussões
- Verifique o repositório do GitHub para problemas e atualizações
- Entre em contato com nossa equipe de suporte para assistência