Este tutorial fornece um código de implementação de exemplo para uma aplicação Node.js/Express. Você pode modificar este código para seu framework específico (Next.js, React, Vue, etc.) e personalizar a interface do usuário de acordo com as necessidades da sua aplicação.
- Criar produtos de assinatura com precificação baseada em assentos
- Configurar adicionais para assentos adicionais
- Gerar links de pagamento com quantidades de adicionais personalizadas
- Lidar com sessões de checkout com contagens de assentos dinâmicas
O Que Estamos Construindo
Vamos criar um modelo de precificação baseada em assentos:- Plano Base: R$49/mês para até 5 membros da equipe
- Adicional de Assento: R$2/mês por assento adicional
- Links de Pagamento: Checkout dinâmico com quantidades de assentos personalizadas
Antes de começarmos, certifique-se de que você tem:
- Uma conta no Dodo Payments
- Familiaridade básica com TypeScript/Node.js
Passo 1: Crie Seu Adicional de Assento
Agora precisamos criar um adicional que represente assentos adicionais. Este adicional será anexado à nossa assinatura base e permitirá que os clientes comprem assentos adicionais.
1
Navegue até Adicionais
- No seu painel do Dodo Payments, permaneça na seção Produtos
- Clique na aba Adicionais
- Clique em Criar Adicional
2
Insira os detalhes do adicional
Preencha estes valores para nosso adicional de assento:Nome do Adicional:
Additional Team SeatDescrição: Add extra team members to your workspace with full access to all featuresPreço: Insira → 2.00Moeda: Deve corresponder à moeda da sua assinatura baseCategoria de Imposto: Selecione a categoria apropriada para seu produto.3
Salve seu adicional
- Revise todas as suas configurações:
- Nome: Assento Adicional da Equipe
- Preço: R$2,00/mês
- Clique em Criar Adicional
Adicional criado! Seu adicional de assento agora está disponível para ser anexado a assinaturas.
Passo 2: Crie Seu Produto de Assinatura Base
Começaremos criando um produto de assinatura base que inclui 5 membros da equipe. Esta será a base do nosso modelo de precificação baseada em assentos.
1
Navegue até Produtos
- Faça login no seu painel do Dodo Payments
- Clique em Produtos na barra lateral esquerda
- Clique no botão Criar Produto
- Selecione Assinatura como o tipo de produto
2
Preencha os detalhes da assinatura
Agora vamos inserir os detalhes específicos para nosso plano base:Nome do Produto:
MotionDescrição: Where your team's documentation lives.Preço Recorrente: Insira → 49.00Ciclo de Cobrança: Selecione → MonthlyMoeda: Selecione sua moeda preferida (por exemplo, USD)Passo 3: Conecte o Adicional à Assinatura
Agora precisamos associar nosso adicional de assento com a assinatura base para que os clientes possam comprar assentos adicionais durante o checkout.1
Anexar o adicional de assento

- Role para baixo até a seção Adicionais
- Clique em Adicionar Adicionais
- No dropdown, selecione seu adicional de assento
- Confirme que ele aparece na configuração da sua assinatura
2
Salve as alterações da assinatura
- Revise sua configuração completa de assinatura:
- Plano base: R$49/mês para 5 assentos
- Adicional: R$2/mês por assento adicional
- Período de teste: 14 dias
- Clique em Salvar Alterações
Precificação baseada em assentos configurada! Os clientes agora podem comprar seu plano base e adicionar assentos extras conforme necessário.
Passo 4: Gere Links de Pagamento com Quantidades de Adicionais Personalizadas
Agora vamos criar uma aplicação Express.js que gera links de pagamento com quantidades de adicionais personalizadas. É aqui que o verdadeiro poder da precificação baseada em assentos entra em cena - você pode criar dinamicamente sessões de checkout com qualquer número de assentos adicionais.1
Configure seu projeto
Crie um novo projeto Node.js e instale as dependências necessárias:Crie um arquivo
tsconfig.json:2
Crie seu arquivo de ambiente
Crie um arquivo
.env com sua chave de API do Dodo Payments:3
Implemente a criação da sessão de checkout
Crie um arquivo
src/server.ts com o seguinte código:4
Adicione uma interface web simples
Crie um arquivo
public/index.html para testes fáceis:Interface web criada! Você agora tem uma UI simples para testar diferentes quantidades de assentos.
5
Sirva arquivos estáticos
Adicione isso ao seu
src/server.ts para servir o arquivo HTML:Arquivos estáticos configurados! Visite
http://localhost:3000 para ver sua interface de demonstração.Passo 5: Teste Sua Implementação
Vamos testar nossa implementação de precificação baseada em assentos para garantir que tudo funcione corretamente.1
Inicie seu servidor
- Certifique-se de que você tem seu arquivo
.envcom a chave de API correta - Atualize os IDs do produto e do adicional em seu código com os valores reais do seu painel do Dodo Payments
- Inicie seu servidor:
Seu servidor deve iniciar com sucesso e mostrar “Servidor rodando em http://localhost:3000”
2
Teste a interface web

- Abra seu navegador e vá para
http://localhost:3000 - Você deve ver a interface de demonstração da precificação baseada em assentos
- Tente diferentes quantidades de assentos (0, 3, 10, etc.)
- Clique em “Gerar Link de Checkout” para cada quantidade
- Verifique se os URLs de checkout são gerados corretamente
3
Teste uma sessão de checkout
- Gere um link de checkout com 3 assentos adicionais
- Clique no URL de checkout para abrir o checkout do Dodo Payments
- Verifique se o checkout mostra:
- Plano base: R$49/mês
- Assentos adicionais: 3 × R6/mês
- Complete a compra de teste
O checkout deve exibir a divisão de preços correta e permitir que você complete a compra.
4
Escute por webhooks e atualize seu DB
Para manter seu banco de dados sincronizado com mudanças de assinatura e assentos, você precisa escutar eventos de webhook do Dodo Payments. Webhooks notificam seu backend quando um cliente completa o checkout, atualiza sua assinatura ou muda a contagem de assentos.Siga o guia oficial de webhooks do Dodo Payments para instruções passo a passo sobre como configurar endpoints de webhook e lidar com eventos:
Documentação de Webhooks do Dodo Payments
Aprenda como receber e processar eventos de webhook de forma segura para gerenciamento de assinaturas e assentos.
Resolução de Problemas
Problemas comuns e suas soluções:Falha na criação do checkout
Falha na criação do checkout
Possíveis causas:
- ID do produto ou ID do adicional inválido
- A chave de API não tem permissões suficientes
- Adicional não associado corretamente à assinatura
- Problemas de conectividade de rede
- Verifique se os IDs do produto e do adicional existem no seu painel do Dodo Payments
- Verifique se o adicional está anexado corretamente à assinatura
- Certifique-se de que a chave de API tem permissões para criar sessões de checkout
- Teste a conectividade da API com uma simples requisição GET
Parabéns! Você Implementou a Precificação Baseada em Assentos
Você criou com sucesso um sistema de precificação baseada em assentos com o Dodo Payments! Aqui está o que você realizou:Assinatura Base
Criou um produto de assinatura com 5 assentos incluídos por R$49/mês
Adicionais de Assento
Configurou adicionais para assentos adicionais por R$2/mês por assento
Checkout
Construiu uma API que gera sessões de checkout com quantidades de assentos personalizadas
Interface Web
Criou uma interface web simples para testar diferentes quantidades de assentos
Este exemplo demonstra apenas uma implementação mínima da precificação baseada em assentos. Para uso em produção, você deve adicionar tratamento de erros robusto, autenticação, validação de dados, medidas de segurança e adaptar a lógica para atender às necessidades da sua aplicação.