> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Charm Pricing

> Arredonde automaticamente os preços convertidos para finais limpos e ajustados psicologicamente, como 49,99, em todas as moedas, sem definir manualmente um preço por mercado.

O Charm Pricing arredonda o preço convertido para um final limpo, como **49,99**, em cada checkout. Você define a regra uma vez. O Dodo Payments a aplica na moeda de cada cliente.

## O que é Charm Pricing?

O [Adaptive Currency](https://docs.dodopayments.com/features/adaptive-currency.md) converte seu preço-base usando taxas de câmbio atualizadas. O resultado é um número preciso, mas raramente atraente: um produto de \$47,00 pode aparecer como **€43,12** hoje e **€43,47** amanhã.

O Charm Pricing pega esse valor convertido e o move para o final limpo mais próximo. O cliente vê **€49,99**, não €43,12. O final permanece estável enquanto as taxas de câmbio variam.

Você não define um preço por mercado. Basta escolher uma regra de arredondamento, que será aplicada a todas as moedas.

> [!NOTE]
>
> O Charm Pricing requer o [Adaptive Currency](https://docs.dodopayments.com/features/adaptive-currency.md). Ative o Adaptive Currency primeiro.

## Principais benefícios

* **Preços limpos em todas as moedas** — Uma regra cobre todos os mercados. Você não precisa manter uma lista de preços.
* **Finais estáveis** — O final não muda quando a taxa de câmbio varia alguns pontos percentuais.
* **Sem distorções de conversão** — Os clientes nunca veem 43,12 ou 1043,87.
* **Automático para novos mercados** — Uma moeda que você nunca precificou ainda recebe um número limpo.

> [!NOTE]
>
> Para definir manualmente um preço exato para um mercado, use o [Localized Pricing](https://docs.dodopayments.com/features/localized-pricing.md). Um preço localizado sempre tem prioridade sobre o Charm Pricing nesse produto.

## Ative o Charm Pricing

**1. Enable Adaptive Currency**

Acesse **Settings → Business**. Em **Business Settings**, ative o **Adaptive Currency**. O Charm Pricing não funciona sem ele.

![Adaptive Currency toggle in Business Settings](https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/adaptive-currency-toggle.png?fit=max\&auto=format\&n=Ovz6j1aDoP1Nl_kB\&q=85\&s=a9d847b5ee912ddf416bba76f7f75994)

**2. Turn on Charm Pricing**

Na mesma seção **Business Settings**, ative o **Charm Pricing** — "Arredonde os preços para números mais limpos e atraentes". O tipo de arredondamento atual aparece abaixo do botão de alternância.

![Charm Pricing enabled in Business Settings](https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/charm-toggle.png?fit=max\&auto=format\&n=Ovz6j1aDoP1Nl_kB\&q=85\&s=e8038d1b4c0df6a0ed246af73e83011c)

> [!WARNING]
>
> As alterações se aplicam apenas a transações futuras. Assinaturas existentes mantêm a regra de arredondamento com a qual foram iniciadas. Consulte [Subscriptions](#subscriptions).

**3. Set the rounding type and steps**

Clique em **Edit** para abrir **Set up Charm Pricing**. Escolha um **Rounding type** e ajuste o **Rounding step** para qualquer faixa de preço. Clique em **Save Changes**.

![Set up Charm Pricing dialog with the rounding type selector and the Try it preview](https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/rounding-type.png?fit=max\&auto=format\&n=Ovz6j1aDoP1Nl_kB\&q=85\&s=52b3cac8b3644aa2e129019cc989b617)

Use **Try it** para verificar um valor antes de salvá-lo. Insira um valor e uma moeda, e a caixa de diálogo mostrará o resultado e o step usado.

O Dodo Payments fornece um step padrão para cada faixa. Consulte [Rounding types](#rounding-types) e [Rounding steps](#rounding-steps).

![Rounding step table, one step for each price range](https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/bands.png?fit=max\&auto=format\&n=Ovz6j1aDoP1Nl_kB\&q=85\&s=49814c0af4e7d120d4ae64c868943a84)

**4. Confirm at checkout**

> [!TIP]
>
> Abra um checkout de teste com um país de cobrança que use outra moeda. Confirme se o preço exibe o final esperado.

## Como o preço é calculado

Dodo Payments aplica o **preço de lista por unidade**, após a conversão de moeda, antes de qualquer desconto e antes dos impostos. Em seguida, um desconto é deduzido do preço de lista ajustado — consulte [Descontos e Charm Pricing](#discounts-and-charm-pricing).

1. **Encontre o intervalo.** O preço de lista seleciona um intervalo na tabela de etapas de arredondamento. Um preço de \$47 está no intervalo de 10 a 99, então a etapa é **10**. A etapa é escolhida pelo preço de lista, portanto um produto permanece no mesmo intervalo independentemente do código de desconto do cliente.
2. **Escolha o alvo.** A etapa fornece dois candidatos, **40** e **50**. O tipo de arredondamento escolhe um deles. Com **Nearest**, 47 está mais próximo de 50.
3. **Ajuste o final.** Dodo Payments subtrai um milésimo da etapa, então 50 se torna **49.99**. O ajuste nunca é menor que uma unidade mínima. **Whole** ignora esta etapa.

### Tipos de arredondamento

| Tipo | O que escolhe | \$47 se torna |
| :- | :- | :- |
| **Nearest** | O mais próximo dos dois candidatos. Em caso de empate, arredonda para cima. | \$49,99 |
| **Floor** | Sempre o candidato abaixo do preço. | \$39,99 |
| **Ceiling** | Sempre o candidato acima do preço. | \$49,99 |
| **Whole** | O candidato mais próximo, sem ajuste. | \$50,00 |

> [!WARNING]
>
> **Floor** pode reduzir um preço em quase um step inteiro. Um preço de \$47 se torna \$39,99, uma redução de 15%. Verifique o efeito nas suas faixas de preço antes de escolhê-lo.

### Etapas de arredondamento

O step depende do tamanho do preço, na unidade principal da moeda. Estes são os valores padrão. Você pode alterar o **Rounding step** para qualquer faixa. Não é possível alterar as faixas.

| Faixa de preço | Etapa |
| :- | :- |
| 1–9 | 1 |
| 10–99 | 10 |
| 100–999 | 100 |
| 1.000–9.999 | 1.000 |
| 10.000–99.999 | 10.000 |
| 100.000–999.999 | 10.000 |
| 1.000.000–9.999.999 | 10.000 |
| 10.000.000 ou mais | 10.000 |

O step para de crescer em 10.000. Isso mantém a alteração pequena para valores altos e é importante para moedas com muitas unidades por dólar, como IDR e VND.

> [!NOTE]
>
> Um step grande desloca bastante o preço. Com o step padrão de 1.000, um preço convertido de **\$1.234** se torna **\$999,00**. Reduza o step dessa faixa se a alteração for grande demais para o seu catálogo.

### Exemplos práticos

| Preço convertido | Moeda | Step | Tipo de arredondamento | Cliente paga |
| :- | :- | :- | :- | :- |
| \$47,00 | USD | 10 | Nearest | **\$49,99** |
| \$47,00 | USD | 10 | Whole | **\$50,00** |
| \$47,00 | USD | 10 | Floor | **\$39,99** |
| \$5,00 | USD | 1 | Nearest | **\$4,99** |
| ¥4.700 | JPY | 1.000 | Nearest | **¥4.999** |
| ¥5 | JPY | 1 | Nearest | **¥4** |

> [!NOTE]
>
> Moedas sem casas decimais, como JPY, não têm finais fracionários: o desconto é a etapa dividida por 1.000, arredondada para unidades inteiras, com um mínimo de uma unidade. O final é ¥4.999, não ¥4.999,99.

### Quando o Charm não se aplica

O Dodo Payments mantém o preço convertido inalterado nestes casos:

* O step é maior que o preço. O preço não pode ser alterado em menos de um step inteiro.
* O resultado seria zero ou menor.
* Nenhum step corresponde ao valor.

## Como se aplica no checkout

Charm Pricing define o preço que o cliente vê antes da dedução de qualquer desconto. Para um produto sem preço localizado, a ordem é:

1. **Preço base** — o preço que você define no produto.
2. **[Paridade do poder de compra](https://docs.dodopayments.com/features/purchasing-power-parity.md)** — se o produto tiver optado por participar, a porcentagem do país será aplicada.
3. **[Conversão de moeda](https://docs.dodopayments.com/features/adaptive-currency.md)** — o valor é convertido para a moeda do cliente pela taxa vigente.
4. **Arredondamento Charm** — o preço de lista convertido é ajustado para um final padronizado. Esse é o preço que o cliente vê como subtotal.
5. **Descontos** — qualquer desconto do produto e [código de desconto](https://docs.dodopayments.com/features/discount-codes.md) é deduzido do preço de lista ajustado.
6. **Impostos** — calculados sobre o valor após o desconto. Consulte [Preços com impostos incluídos](https://docs.dodopayments.com/features/tax-inclusive-pricing.md).

Cada linha do carrinho é calculada individualmente. O arredondamento Charm é executado uma vez, sobre o preço de lista. O valor com desconto não é arredondado novamente.

### Descontos e Charm Pricing

Charm Pricing define o preço exibido, e um desconto é uma dedução desse preço. Em um plano de \$199.00/mês com uma etapa de 100 e arredondamento **Nearest**:

```text theme={null}
list  199.00 → charm → 199.90     (Subtotal)
10% of the charmed list  19.99    (Discount)
paid  199.90 − 19.99 = 179.91     (Total)
```

A forma como o desconto é aplicado ao preço de lista ajustado depende do tipo de desconto:

| Desconto na linha | O que é aplicado | Motivo |
| :- | :- | :- |
| Apenas códigos percentuais, sem limite máximo | A **taxa** | Uma taxa é uma proporção do preço, portanto acompanha o preço. |
| Qualquer código de valor fixo ou código percentual com limite máximo | O **valor** | Um código de valor fixo define um valor, portanto esse valor não deve variar com a etapa. |

> [!NOTE]
>
> Uma linha com desconto não termina com um final Charm. O preço de lista ajustado mantém o final `.99` ou `.90`; uma porcentagem deduzida dele não tem motivo para manter esse final. No exemplo acima, o cliente paga **\$179.91**, não um número ajustado.

Um produto com um preço riscado (preço de comparação) mostra uma linha de desconto real, pois o preço riscado é aplicado como uma dedução da mesma forma. Uma linha totalmente descontada permanece gratuita, e um código de valor fixo maior que o preço de lista ajustado é limitado a gratuito, em vez de resultar em um valor negativo.

> [!WARNING]
>
> **Assinaturas existentes com um desconto podem ter o preço alterado na próxima renovação.** As renovações usam o preço de lista ajustado, e não um preço com desconto reajustado. Com **Nearest** ou **Ceiling**, o preço de lista ajustado fica no preço de lista ou acima dele, então um código percentual geralmente cobra um pouco mais do que antes. Com **Floor**, ele pode ficar bem abaixo, então o mesmo código pode cobrar menos.

> [!WARNING]
>
> **Uma linha com Charm torna toda a transação inclusiva em taxas.** O cliente paga exatamente o final que viu, então a taxa de conversão do Adaptive Currency não pode ser adicionada separadamente. Você absorve essa taxa. Consulte [Ativar Fees Inclusive](https://docs.dodopayments.com/features/adaptive-currency.md#enable-fees-inclusive).

## Assinaturas

Uma assinatura registra sua etapa e seu tipo de arredondamento quando o cliente assina. Dodo Payments repete essa mesma decisão em cada renovação.

**O que fica fixo:** a etapa e o tipo de arredondamento. Se você editar uma etapa ou alterar o tipo de arredondamento, uma assinatura existente não terá seu preço recalculado. O cliente mantém a regra com a qual concordou.

**O que pode mudar:** o valor. A cada renovação, o preço é convertido pela taxa de câmbio atual e, em seguida, a regra fixa é aplicada. Uma grande variação da taxa pode alterar o valor da renovação, mesmo que a regra não tenha mudado.

> [!WARNING]
>
> **Uma alteração de plano remove o Charm dessa assinatura.** Quando um assinante [altera o plano](https://docs.dodopayments.com/features/subscription.md#subscription-plan-changes), o novo plano cobra o valor mostrado na cotação da alteração de plano. Dodo Payments não aplica Charm a esse valor nem às renovações posteriores dessa assinatura.

## Comportamentos importantes

| Comportamento | Detalhe |
| :- | :- |
| **Requer Adaptive Currency** | O Charm Pricing não faz nada enquanto o Adaptive Currency estiver desativado. |
| **Preços localizados têm prioridade** | Um produto com uma regra de [Localized Pricing](https://docs.dodopayments.com/features/localized-pricing.md) correspondente nunca recebe Charm. O valor exato que você definiu é aplicado. |
| **Aplicado por unidade** | O preço unitário recebe Charm e, em seguida, é multiplicado pela quantidade. |
| **Antes dos descontos** | O Charm arredonda o preço de lista convertido. Em seguida, um desconto é deduzido desse preço com Charm. Consulte [Descontos e Charm Pricing](#discounts-and-charm-pricing). |
| **Antes dos impostos** | O imposto é calculado após o arredondamento com Charm e após qualquer desconto, para que os totais sejam consistentes. |
| **Força a inclusão de taxas** | Você absorve a taxa de conversão de moeda em uma transação com Charm. |
| **Não se aplica a Pay What You Want** | O cliente escolhe o valor, então ele nunca recebe Charm. Consulte [Pay What You Want](https://docs.dodopayments.com/features/pay-what-you-want.md). |
| **Somente taxas fixas para uso baseado em consumo** | As cobranças de uso medido nunca recebem Charm. |
| **Sem webhook próprio** | O valor com Charm aparece no pagamento ou na assinatura como qualquer outro preço. |

## Boas práticas

* **Comece com Nearest.** Ele altera o preço o mínimo possível. Use Floor somente quando aceitar o desconto que ele cria.
* **Verifique seus produtos maiores e menores.** A etapa muda de acordo com o intervalo de preço, então um produto de \$5 e um produto de \$1,200 se comportam de forma diferente.
* **Revise a etapa para moedas de alto valor unitário.** Os preços em IDR, VND e KRW ficam nos intervalos superiores, onde a etapa é fixada em 10,000.
* **Defina o preço das suas assinaturas antes do lançamento.** Editar uma etapa posteriormente não recalcula o preço de assinantes existentes.
* **Considere a taxa de conversão.** Uma linha com Charm inclui as taxas, portanto a taxa é descontada da sua receita.

## Relacionado

> **[Adaptive Currency](https://docs.dodopayments.com/features/adaptive-currency.md)**
>
> A conversão é arredondada pelo Charm Pricing. Obrigatório para Charm Pricing.

> **[Purchasing Power Parity](https://docs.dodopayments.com/features/purchasing-power-parity.md)**
>
> Cobrança menor em países sensíveis a preço. Executado antes do arredondamento Charm.

> **[Localized Pricing](https://docs.dodopayments.com/features/localized-pricing.md)**
>
> Defina um preço exato por país ou moeda. Substitui o Charm Pricing.

> **[Tax-Inclusive Pricing](https://docs.dodopayments.com/features/tax-inclusive-pricing.md)**
>
> Controle se seus preços incluem impostos.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.