Skip to main content
Visão geral da capa dos códigos de desconto
Os códigos de desconto permitem que você execute promoções e incentivos direcionados. Crie descontos percentuais, defina limites e expirações, restrinja a produtos e aplique-os facilmente no checkout.

Sessões de Checkout

Aplique códigos durante o checkout hospedado com discount_code e controles de UI.

Validar Desconto

Verifique se um desconto é válido pelo seu ID.

Obter Desconto pelo Código

Procure e valide um desconto usando seu código (por exemplo, “SAVE20”).

Criar Desconto (API)

Crie códigos de desconto novos programaticamente.

Listar & Atualizar Descontos

Navegue e gerencie descontos existentes; atualize ou exclua conforme necessário.

O que são Códigos de Desconto?

Códigos de desconto são tokens promocionais que reduzem os totais de pedidos no checkout. Eles são ideais para:
  • Campanhas sazonais: Black Friday, lançamentos de produtos ou aniversários
  • Ofertas de aquisição: Incentivos para primeira compra ou recompensas de indicação
  • Retenção: Recompensas de recuperação ou fidelidade para clientes existentes
  • Negócios B2B: Preços contratados ou negociados via códigos privados

Principais Benefícios

  • Descontos flexíveis: Percentual ou valor fixo de desconto
  • Controle direcionado: Restringir por produto e ciclos de assinatura
  • Governança de campanha: Datas de expiração e limites de uso
  • Checkout sem interrupções: Suporte a campo de UI e API via sessões de checkout
  • Descontos flexíveis: Descontos baseados em porcentagem ou em valor fixo
  • Códigos combináveis: Aplique até 20 códigos por checkout, pagamento ou assinatura — combine campanhas (por exemplo, WELCOME10 + BLACKFRIDAY20) sem criar códigos personalizados
  • Controle direcionado: Restrinja por produto, ciclos de assinatura e elegibilidade do cliente
  • Governança de campanhas: Datas de início programadas, datas de expiração e limites gerais e por cliente de uso
  • Preços por moeda: Defina a dedução fixa, o limite máximo e o subtotal mínimo por moeda
  • Checkout integrado: Suporte a campo de UI e API por meio de sessões de checkout
Crie códigos de desconto no seu painel do Dodo Payments e, em seguida, aplique-os no checkout hospedado ou via API.

Configuração do Painel

Lista de descontos no painel do Dodo Payments mostrando códigos de desconto existentes

Configuração no painel

  • Nome do desconto (obrigatório): Nome interno e nome exibido no painel
  • Código (obrigatório): A sequência que os clientes inserem no checkout ou um código aleatório gerado usando o botão fornecido
  • Tipo (obrigatório): Escolha Porcentagem (um percentual de desconto) ou Valor (uma dedução fixa)
  • Valor (obrigatório): O valor percentual ou o valor fixo de um desconto do tipo Valor
  • Data de início (opcional): Programe o código para se tornar ativo posteriormente; deixe vazio para ativá-lo imediatamente
  • Data de expiração (opcional): Data após a qual o código se torna inválido
  • Limite de uso (opcional): Máximo de resgates no total entre todos os clientes
  • Limite de uso por cliente (opcional): Máximo de resgates por qualquer cliente individual. Deve ser menor ou igual ao limite geral de uso quando ambos forem definidos
  • Elegibilidade do cliente (opcional): Restrinja quem pode resgatar o código — todos os clientes, clientes de primeira compra, clientes existentes ou uma lista selecionada manualmente
  • Opções de moeda (opcional): Valores por moeda — consulte Opções por moeda
  • Restrição de produto (opcional): Limite a aplicabilidade a produtos selecionados
  • Limite do ciclo de assinatura (opcional): Número de ciclos de cobrança aos quais o desconto se aplica
  • Preservar na alteração do plano (opcional): Mantenha o desconto ativo quando o plano da assinatura mudar (preserve_on_plan_change)
  • Metadata (opcional): Anexe pares personalizados de chave–valor para acompanhamento interno ou integrações
Os detalhes do desconto — tipo, porcentagem ou valor, nome, código e opções de moeda:
Formulário de novo código de desconto mostrando tipo, valor percentual, nome, código e opções de moeda
Limites de uso e expiração totalmente configurados:
Painel de limites de uso e expiração com data de início, data de expiração e limites de uso configurados
Mais abaixo no formulário — elegibilidade, restrições e opções avançadas:
Elegibilidade, restrições e opções avançadas para um código de desconto
Use limites de ciclo para preços promocionais introdutórios em assinaturas (por exemplo, “50% de desconto por 3 meses”).
Uma amount percentual é expressa em basis points na API — 1500 significa 15%. Uma amount fixa é um valor monetário e é denominada pelas opções de moeda do código.

Tipos de desconto

Ambos os tipos podem ser combinados no mesmo array discount_codes e são aplicados na ordem do array.
Editor de código de desconto com o tipo Valor selecionado, mostrando uma dedução fixa de 500 INR

Elegibilidade do cliente

Defina customer_eligibility para controlar quem pode resgatar um código:
Menu suspenso de elegibilidade do cliente mostrando as opções Qualquer, Primeira compra, Existente e Cliente específico
Um código specific começa com zero clientes elegíveis e rejeita todos os resgates até que você anexe clientes a ele. Anexe-os no painel ou usando a API de clientes de descontos.
Combine a elegibilidade com o Limite de uso por cliente para limitar quantas vezes cada cliente individual pode resgatar o código, independentemente do limite geral de uso.

Opções por moeda

As opções de moeda permitem que um único código funcione corretamente em todas as moedas nas quais você vende. Cada entrada define, para uma única moeda:
  • Valor — para um desconto do tipo Valor, esta é a própria dedução; para um desconto do tipo Porcentagem, limita quanto o código pode descontar. Corresponde a max_amount_possible na API.
  • Subtotal mínimo — o código só se aplica quando o carrinho atinge esse subtotal. 0 significa que não há mínimo.
  • Padrão — uma entrada pode ser marcada como padrão, para que outras moedas não configuradas sejam convertidas a partir dela.
Painel de opções de moeda com valor por moeda e subtotal mínimo para INR e USD
Um desconto do tipo Valor exige pelo menos uma opção de moeda com um padrão resolvível, pois uma dedução fixa não tem significado sem uma moeda. As opções de moeda são opcionais para descontos do tipo Porcentagem.
O subtotal mínimo é sempre medido com base nos preços originais do carrinho, nunca no total parcial durante uma combinação. Portanto, a ordem de combinação nunca altera se um mínimo foi atingido.

Experiência de checkout

  1. Os compradores inserem o código no campo de checkout.
  2. Os descontos elegíveis são aplicados e os totais são atualizados imediatamente.
Página de checkout mostrando um desconto aplicado ao total do pedido
Em Checkout Sessions, passe discount_codes (um array) para pré-aplicar um ou mais códigos. O campo de entrada de desconto é exibido por padrão — feature_flags.allow_discount_code usa true como padrão; portanto, defina-o como false somente se quiser ocultá-lo. Os códigos são aplicados na ordem do array, até um máximo de 20.

Combinação de códigos de desconto

As sessões de checkout, os pagamentos e as assinaturas aceitam até 20 códigos combinados por meio do array discount_codes (máximo de 20 entradas). Os códigos são aplicados na ordem do array: o primeiro código elegível reduz primeiro o preço-base, o próximo reduz o preço já descontado e assim por diante. O conjunto completo de descontos aplicados é retornado na resposta em discount_ids (em pagamentos/assinaturas) e discounts (detalhes mais completos por desconto, incluindo posição e ciclos restantes da assinatura).
O campo singular discount_code está obsoleto, mas ainda é totalmente compatível para manter a compatibilidade retroativa — as integrações existentes continuam funcionando sem alterações. Ele não pode ser combinado com discount_codes na mesma solicitação. Recomendamos migrar para discount_codes (o formato de array) quando for conveniente, mesmo para códigos únicos, para aproveitar a combinação e o formato de resposta mais completo.

Gerenciamento pela API

Crie códigos de desconto programaticamente com tipo e valor.

API Reference

Veja a API de criação de descontos.
Liste todos os descontos ou recupere detalhes para gerenciamento e auditoria.

API Reference

Consulte as APIs de listagem e recuperação.
Pesquise um desconto usando seu código legível (por exemplo, “SAVE20”), em vez do ID interno.

API Reference

Recupere o desconto pelo nome do código.
Modifique a configuração do desconto, como valor, expiração ou restrições.

API Reference

Saiba como atualizar os detalhes do desconto.
Verifique se um desconto é válido e aplicável antes de aplicá-lo.

API Reference

Valide o uso do desconto.
Desative ou remova descontos que não são mais necessários.

API Reference

Exclua um desconto.
Para um desconto com customer_eligibility definido como specific, gerencie os clientes que podem resgatá-lo:
  • GET /discounts/{discount_id}/customers — liste os clientes anexados (paginados, até 100 por página).
  • POST /discounts/{discount_id}/customers — anexe clientes por ID. A chamada é idempotente e aceita até 1000 IDs, que devem existir previamente na sua empresa. A resposta retorna apenas os IDs enviados nessa solicitação; portanto, liste o endpoint para ler a lista completa de permissões.
  • DELETE /discounts/{discount_id}/customers/{customer_id} — desanexe um único cliente.

Casos de uso comuns

  • Ofertas introdutórias: Promoções de lançamento por tempo limitado para novos produtos
  • Vendas em volume ou B2B: Descontos contratados para conjuntos de produtos selecionados
  • Estratégias de retenção: Códigos de recuperação em fluxos de prevenção de churn
  • Campanhas sazonais: Promoções baseadas em feriados ou eventos

Exemplos de integração

Criar um desconto com metadata

Anexe pares personalizados de chave–valor para acompanhamento interno.
Use metadata para identificar descontos por campanha, origem ou ID de referência interno, permitindo reconciliar o uso e medir o ROI posteriormente.

Aplicar descontos em Checkout Sessions

Pré-aplique um ou mais descontos combinados e exiba a UI de entrada do código.

Aplicar descontos durante alterações de plano

Ofereça preços promocionais quando os clientes fizerem upgrade ou downgrade da assinatura.
Leia todos os descontos aplicados na assinatura por meio do novo array discounts na resposta da assinatura. Cada entrada inclui discount_id, position, cycles_remaining (para assinaturas) e o código original.

Ocultar o campo de código de desconto

A entrada de desconto é exibida por padrão, para que os clientes sempre possam inserir um código sem que você precise passar um antecipadamente. Defina allow_discount_code como false para ocultar o campo completamente.

Práticas recomendadas

  • Nomeie claramente: Use códigos reconhecíveis que correspondam aos nomes das campanhas
  • Defina um período: Adicione datas de expiração para criar urgência e evitar uso indevido
  • Defina o escopo com cuidado: Limite a produtos específicos para evitar perda de margem
  • Valide antecipadamente: Verifique a aplicabilidade do código antes de confirmar o checkout
  • Monitore o impacto: Acompanhe o uso e a conversão por campanha
Os códigos de desconto são ferramentas poderosas para aquisição e retenção. Comece com ofertas simples e bem nomeadas, valide-as cuidadosamente e faça iterações com base no desempenho.
Última modificação em 17 de agosto de 2026