Skip to main content
Upsells e downsells permitem oferecer produtos adicionais ou mudanças de plano para os clientes usando seus métodos de pagamento salvos. Isso possibilita compras de um clique que ignoram a coleta de pagamento, melhorando drasticamente as taxas de conversão.

Post-Purchase Upsells

Ofereça produtos complementares imediatamente após o checkout com compras de um clique.

Subscription Upgrades

Mova clientes para níveis superiores com prorrateamento automático e faturamento instantâneo.

Cross-Sells

Adicione produtos relacionados a clientes existentes sem pedir novamente os dados de pagamento.

Visão geral

Upsells e downsells são estratégias poderosas de otimização de receita:
  • Upsells: Ofereça um produto de maior valor ou upgrade (ex.: plano Pro em vez de Basic)
  • Downsells: Ofereça uma alternativa de menor preço quando o cliente recusar ou fizer downgrade
  • Cross-sells: Sugira produtos complementares (ex.: add-ons, itens relacionados)
A Dodo Payments habilita esses fluxos por meio do parâmetro payment_method_id, que permite cobrar o método de pagamento salvo do cliente sem exigir que ele digite novamente os dados do cartão.

Benefícios principais

Como funciona

Pré-requisitos

Antes de implementar upsells e downsells, garanta que você tenha:
  • Clientes com métodos de pagamento salvos (salvos automaticamente após a primeira compra)
  • Produtos de upsell configurados no dashboard (pagamentos únicos, assinaturas ou complementos)
  • Um endpoint de webhook configurado para processar eventos payment.succeeded, payment.failed e subscription.plan_changed

Obtendo métodos de pagamento do cliente

Antes de oferecer um upsell, recupere os métodos de pagamento salvos do cliente:
Os métodos de pagamento são salvos automaticamente quando os clientes concluem o checkout. Não é necessário salvá-los explicitamente.

Upsells com um clique após a compra

Ofereça produtos adicionais imediatamente após uma compra bem-sucedida. O cliente pode aceitar com um único clique, pois o método de pagamento já está salvo.

Implementação

Ao passar payment_method_id para uma sessão de checkout, você também deve definir confirm: true e fornecer um customer_id existente. O método de pagamento deve pertencer a esse cliente. POST /payments não possui o campo confirm.

Upgrades de assinatura

Mova os clientes para planos de assinatura de nível superior com tratamento automático de rateio proporcional.

Visualização antes da confirmação

Sempre visualize as alterações do plano para mostrar aos clientes exatamente quanto será cobrado:

Executar o upgrade

Modos de rateio proporcional

Escolha como os clientes serão cobrados ao fazer upgrade:

difference_immediately

Cobra instantaneamente a diferença de preço ($30→$80 = $50). Ideal para upgrades simples.

prorated_immediately

Concede crédito pelo tempo não utilizado do plano antigo e cobra um ciclo completo do novo plano. Ideal para creditar o tempo não utilizado.

full_immediately

Cobra o preço total do novo plano e ignora o tempo restante. Ideal para redefinir o ciclo de cobrança.

do_not_bill

Aplica a alteração do plano sem cobrança imediata; o novo plano será cobrado na próxima renovação e a data de cobrança original será preservada. Ideal para upgrades de cortesia e migrações gratuitas.
Use difference_immediately para fluxos de upgrade simples — a cobrança corresponde apenas à diferença de preço. Use prorated_immediately quando quiser conceder ao cliente um crédito pelo tempo não utilizado do plano atual e cobrar um ciclo completo do novo plano.

Vendas cruzadas

Adicione produtos complementares para clientes existentes sem exigir que eles insiram novamente os dados de pagamento.

Implementação

Downgrades de assinatura

Quando os clientes quiserem mudar para um plano de nível inferior, conduza a transição de forma adequada com créditos automáticos.

Como funcionam os downgrades

  1. O cliente solicita o downgrade (Pro → Basic)
  2. O sistema calcula o valor restante do plano atual
  3. O crédito é adicionado à assinatura para futuras renovações
  4. O cliente muda imediatamente para o novo plano
O immediate_charge.summary.customer_credits da prévia está na moeda da carteira de créditos do cliente, indicada por customer_credits_currency. Ela pode ser diferente da currency do resumo, por exemplo, quando o cliente paga em INR por uma assinatura em USD.
Os créditos provenientes de downgrades que usam difference_immediately têm escopo de assinatura e são aplicados automaticamente a renovações futuras. Eles são diferentes dos benefícios de Credit-Based Billing.

Exemplo completo: fluxo de upsell após a compra

Veja uma implementação completa que mostra como oferecer um upsell após uma compra bem-sucedida:

Práticas recomendadas

  • Escolha o momento estrategicamente: ofereça upsells imediatamente após uma compra bem-sucedida, quando os clientes estão com mentalidade de compra. Outros momentos eficazes: após marcos de uso de recursos, ao se aproximarem dos limites do plano e durante a conclusão da integração.
  • Valide os métodos de pagamento: antes de tentar uma cobrança com um clique, verifique se o método de pagamento é compatível com a moeda do produto, não expirou e pertence ao cliente.
  • Trate as falhas de forma adequada: quando as cobranças com um clique falharem, recorra ao fluxo de checkout padrão, notifique o cliente com uma mensagem clara e ofereça a opção de atualizar o método de pagamento.
  • Mostre o valor com clareza: mostre o que os clientes receberão em comparação com o plano atual, destaque a diferença de preço (não o preço total) e use prova social.
  • Respeite a escolha do cliente: sempre ofereça uma maneira fácil de recusar, não mostre o mesmo upsell repetidamente após uma recusa e acompanhe quais upsells convertem para otimizar as ofertas.

Webhooks para monitorar

Acompanhe estes eventos de webhook para os fluxos de upsell e downgrade:

Webhook Integration Guide

Saiba como configurar e verificar endpoints de webhook.

Recursos relacionados

Subscription Upgrade Guide

Guia detalhado sobre alterações de plano, modos de proration e tratamento de falhas.

Checkout Sessions

Referência completa para criar sessões de checkout com todas as opções.

Customer Payment Methods API

Referência da API para listar os métodos de pagamento do cliente.

Add-ons

Aprimore as assinaturas com add-ons flexíveis para gerar receita adicional.
Última modificação em 26 de setembro de 2026