> ## 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.

# v1.84.0 (20 de fevereiro de 2026)

> Análises por produto, prevenção de disputas Verifi RDR, DodoPayments CLI, reformulação da interface do portal do cliente, atualizações do método de pagamento no checkout inline, preenchimento automático de ID fiscal, parâmetros de consulta na URL de retorno, API de atualização de e-mail do cliente e adaptador Bun

## Novos Recursos

### 1. **Análise por Produto**

Cada produto agora possui seu próprio **painel de análises dedicado**. Navegue até **Produtos > \[Selecione um Produto]** para acessar métricas detalhadas específicas daquele produto, organizadas em cinco abas:

<Frame>
  <img src="https://mintcdn.com/dodopayments/QP0nYJEAkU83kGFn/images/product-analytics/overview.png?fit=max&auto=format&n=QP0nYJEAkU83kGFn&q=85&s=f2ce88b712ba0205839cd334d0f2a367" alt="Análises em Nível de Produto" style={{ maxHeight: '500px', width: 'auto' }} width="2368" height="1564" data-path="images/product-analytics/overview.png" />
</Frame>

| Aba             | O que você recebe                                                                                                                                           |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Visão Geral** | Receita total, contagem de pagamentos bem-sucedidos, gráfico de tendência de receita de 30 dias (diária ou cumulativa) e uma tabela de transações filtrável |
| **Clientes**    | Top 3 clientes classificados por gasto com visão de pódio, além de uma tabela completa de detalhamento de clientes                                          |
| **Retenção**    | Taxa de churn de clientes, taxa de churn de receita e um gráfico de tendência de linha dupla para identificar padrões                                       |
| **Assinantes**  | Todas as assinaturas do produto com status, data de início, próxima data de cobrança e valor                                                                |
| **MRR**         | Gráfico de barras empilhadas de Receita Recorrente Mensal com detalhamentos de Novo MRR, MRR de Expansão, MRR Cancelado e MRR Líquido                       |

Todas as abas suportam um **filtro de data** (padrão Todos os Tempos) para que você possa analisar qualquer período.

<Tip>
  Use a aba Retenção para identificar produtos com alto churn cedo e a aba MRR para acompanhar se a receita de expansão está superando a receita perdida mês a mês.
</Tip>

Saiba mais: [Product-Level Analytics](/features/analytics-and-reporting#product-level-analytics)

### 2. **Suporte Verifi RDR no Dodo Payments**

O Dodo Payments agora oferece suporte ao **Visa Rapid Dispute Resolution (RDR)** impulsionado pela Verifi — uma ferramenta automatizada de prevenção de disputas que resolve disputas elegíveis da Visa **antes de se tornarem chargebacks formais**. Quando um portador de cartão inicia uma disputa, o RDR a intercepta e emite automaticamente um reembolso se a transação estiver abaixo do seu limite configurado em USD.

**Por que isso importa**

| Benefit                             | Impacto                                                                                                                       |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| **Taxa de disputa reduzida**        | Disputas resolvidas por RDR não contam para o limite de 0,9% da Visa                                                          |
| **Taxa de disputa ainda se aplica** | Uma taxa de disputa ainda é cobrada em transações resolvidas por RDR - isso cobre o custo de contestar com a Visa em seu nome |
| **Nenhuma sobrecarga operacional**  | Sem coleta de evidências ou prazos de resposta                                                                                |
| **Melhor experiência do cliente**   | Portadores de cartão recebem reembolsos instantâneos                                                                          |
| **Proteção de conta**               | Mantenha-se fora do Programa de Monitoramento de Disputas da Visa (VDMP)                                                      |

<Warning>
  Ultrapassar a taxa de disputas de 0,9% da Visa ou 100 disputas/mês aciona o VDMP, com multas crescentes de até mais de US\$ 50.000/mês. O RDR ajuda você a ficar bem abaixo desses limites.
</Warning>

**Como Funciona**

1. O portador do cartão inicia uma disputa com o banco
2. O RDR intercepta a disputa antes que vire um chargeback formal
3. Se o valor da transação estiver igual ou abaixo do seu limite, um reembolso é emitido automaticamente
4. A disputa é resolvida instantaneamente e **não conta** contra a sua taxa de disputas

<Info>
  Transações reembolsadas automaticamente pelo RDR aparecem como uma **disputa perdida** no painel do Dodo Payments. Isso é esperado — o reembolso foi emitido automaticamente para evitar um chargeback formal.
</Info>

Para ativar o Verifi RDR na sua conta, entre em contato com **[support@dodopayments.com](mailto:support@dodopayments.com)** para configurar o seu limite.

Saiba mais: [Visa RDR Documentation](/features/transactions/disputes#visa-rapid-dispute-resolution-rdr)

### 3. **DodoPayments CLI**

Apresentamos a nova **DodoPayments CLI** (`dodopayments-cli`) — gerencie todo o fluxo de trabalho do Dodo Payments diretamente no terminal. Construída para desenvolvedores que preferem a linha de comando, a CLI permite gerenciar produtos, pagamentos, clientes, descontos, licenças, complementos, reembolsos e até criar sessões de checkout sem sair do editor.

**Instalação**

<CodeGroup>
  ```bash npm (Recommended) theme={null}
  npm install -g dodopayments-cli
  ```

  ```bash Bun theme={null}
  bun install -g dodopayments-cli
  ```
</CodeGroup>

**Comandos Principais**

| Comando                 | Descrição                                                                       |
| ----------------------- | ------------------------------------------------------------------------------- |
| `dodo login`            | Autentique-se com sua chave de API (abre o navegador)                           |
| `dodo products list`    | Liste todos os produtos                                                         |
| `dodo payments list`    | Liste todos os pagamentos                                                       |
| `dodo customers create` | Crie um novo cliente                                                            |
| `dodo checkout new`     | Crie uma sessão de checkout e obtenha a URL                                     |
| `dodo wh listen`        | Encaminhe webhooks de teste em tempo real para seu servidor local via WebSocket |
| `dodo wh trigger`       | Envie cargas úteis de webhook simuladas para qualquer endpoint                  |

**Testes de Webhook**

A CLI inclui duas ferramentas poderosas para desenvolvimento:

* **`dodo wh listen`** — abre uma conexão WebSocket para encaminhar webhooks de teste em tempo real para o seu servidor local, preservando cabeçalhos originais para testes de verificação de assinatura
* **`dodo wh trigger`** — envia cargas úteis de webhook simuladas de forma interativa, suportando todos os 22 tipos de evento de assinaturas, pagamentos, reembolsos, disputas e licenças

<Tip>
  O ouvinte de webhook funciona apenas com uma chave de API em **modo de teste**. Certifique-se de estar logado com uma chave de modo de teste antes de usar `dodo wh listen`.
</Tip>

Saiba mais: [CLI Documentation](/developer-resources/sdks/cli)

### 4. **Reformulação da Interface do Portal do Cliente**

O Portal do Cliente foi completamente redesenhado com uma interface limpa e unificada. O portal renovado apresenta uma navegação por barra lateral esquerda e seções organizadas, proporcionando aos clientes uma experiência de autoatendimento mais intuitiva.

<Frame>
  <img src="https://mintcdn.com/dodopayments/kCngKZVrb0rZMS1f/images/customer-portal/new-portal.png?fit=max&auto=format&n=kCngKZVrb0rZMS1f&q=85&s=9431b2e24142e47cb39dc84c1a0303fe" alt="Reforma do UI do Portal do Cliente" style={{ maxHeight: '500px', width: 'auto' }} width="2876" height="1568" data-path="images/customer-portal/new-portal.png" />
</Frame>

**Novidades**

| Seção                       | Recursos                                                                                              |
| --------------------------- | ----------------------------------------------------------------------------------------------------- |
| **Assinaturas Ativas**      | Veja todas as assinaturas ativas com detalhes do plano, ciclo de cobrança e próxima data de pagamento |
| **Métodos de Pagamento**    | Gerencie métodos de pagamento salvos, adicione novos cartões e atualize os dados de pagamento         |
| **Histórico de Cobranças**  | Veja faturas anteriores com recibos em PDF para download                                              |
| **Informações de Cobrança** | Edite nome, e-mail, telefone e endereço de cobrança                                                   |
| **Detalhes da Assinatura**  | Consulte informações detalhadas da assinatura com opções para cancelar ou alterar o plano             |
| **Alterações de Plano**     | Faça upgrade ou downgrade via Coleções de Produtos diretamente no portal                              |

Os clientes também podem atualizar métodos de pagamento para assinaturas ativas ou reativar assinaturas em espera devido a pagamentos falhos — tudo a partir do portal renovado.

<Check>
  O portal renovado está disponível em `https://customer.dodopayments.com/login/{business_id}` no modo ao vivo e `https://test.customer.dodopayments.com/login/{business_id}` no modo de teste.
</Check>

Saiba mais: [Customer Portal](/features/customer-portal)

### 5. **Atualização de Método de Pagamento no Checkout Inline**

O [checkout inline](/developer-resources/inline-checkout) agora suporta **atualizações de método de pagamento** para assinaturas. Quando um cliente precisa atualizar o método de pagamento (para uma assinatura ativa ou para reativar uma assinatura em espera), o fluxo de atualização do método de pagamento pode ser renderizado diretamente no layout da sua página usando o checkout inline — proporcionando uma experiência integrada e fluida.

**Como Funciona**

1. Chame a API de Atualização de Método de Pagamento para obter um `payment_link`:

```typescript theme={null}
const response = await client.subscriptions.updatePaymentMethod('sub_123', {
  type: 'new',
  return_url: 'https://example.com/return'
});
```

2. Use o `payment_link` retornado como o `checkoutUrl` no checkout inline:

```typescript theme={null}
DodoPayments.Checkout.open({
  checkoutUrl: response.payment_link,
  elementId: "dodo-inline-checkout"
});
```

O iframe inline renderiza apenas o formulário de coleta do método de pagamento, permitindo que os clientes digitem novos dados de cartão ou selecionem um método salvo sem sair da sua página.

<Tip>
  Para assinaturas em espera, o fluxo de atualização do método de pagamento cria automaticamente uma cobrança pelos valores restantes. Monitore os webhooks `payment.succeeded` e `subscription.active` para confirmar a reativação.
</Tip>

Saiba mais: [Inline Checkout](/developer-resources/inline-checkout) | [Subscription Payment Method Updates](/features/subscription#update-payment-method-for-active-subscription)

### 6. **Suporte de Preenchimento Automático de ID Fiscal para Sessões de Checkout**

Agora você pode **preencher automaticamente o ID Fiscal** (por exemplo, VAT, GST) ao criar uma sessão de checkout usando o parâmetro `tax_id`. Isso é ideal para transações B2B em que você já conhece o número de identificação fiscal do cliente. Quando um ID Fiscal é preenchido automaticamente, o campo é pré-preenchido e bloqueado no formulário de checkout.

```typescript theme={null}
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_123', quantity: 1 }],
  customer: { customer_id: 'cus_123' },
  billing_address: { country: 'DE' },
  tax_id: 'DE999999999',
  return_url: 'https://yoursite.com/return'
});
```

<Info>
  O parâmetro `tax_id` requer um `billing_address` com pelo menos um campo `country`. A elegibilidade fiscal é validada em tempo real e regras de cobrança reversa são aplicadas automaticamente para transações B2B qualificadas.
</Info>

Use a flag `allow_customer_editing_tax_id` para controlar se os clientes podem modificar o ID Fiscal preenchido previamente e `allow_tax_id` para alternar a visibilidade do ID Fiscal no checkout.

Saiba mais: [Checkout Sessions - Tax ID](/developer-resources/checkout-session) | [B2B Payments](/features/b2b-payments)

### 7. **Chave de Licença e E-mail no Redirecionamento da URL de Retorno**

Após o cliente finalizar o checkout, o Dodo Payments agora adiciona `license_key` e `email` como parâmetros de consulta ao seu redirecionamento `return_url`, além dos parâmetros já existentes `payment_id`/`subscription_id` e `status`.

**Parâmetros de Consulta Adicionados**

| Parâmetro         | Tipo     | Condição                                                                                                |
| ----------------- | -------- | ------------------------------------------------------------------------------------------------------- |
| `payment_id`      | `string` | Sempre presente para pagamentos únicos                                                                  |
| `subscription_id` | `string` | Sempre presente para pagamentos de assinatura                                                           |
| `status`          | `string` | Sempre presente                                                                                         |
| `license_key`     | `string` | Presente se o produto tiver chaves de licença habilitadas (separadas por vírgulas quando houver várias) |
| `email`           | `string` | Presente se o cliente tiver um e-mail registrado                                                        |

**URLs de redirecionamento de exemplo:**

```text theme={null}
# One-time payment with license key
https://yoursite.com/return?payment_id=pay_xxx&status=succeeded&license_key=LK-001&email=customer%40example.com

# Subscription with multiple license keys
https://yoursite.com/return?subscription_id=sub_xxx&status=active&license_key=LK-001,LK-002&email=customer%40example.com
```

<Tip>
  Use esses parâmetros de consulta para exibir chaves de licença ou enviar um e-mail de confirmação imediatamente na sua página de retorno, sem precisar de uma chamada API extra.
</Tip>

Saiba mais: [Checkout Sessions - Return URL](/developer-resources/checkout-session) | [License Keys in Return URL](/features/license-keys#license-keys-in-return-url)

### 8. **API de Atualização de E-mail do Cliente**

O endpoint `PATCH /customers/{customer_id}` agora suporta a atualização programática de endereços de e-mail de clientes. Atualize e-mail junto com nome, telefone e metadados em uma única chamada API.

```typescript theme={null}
await client.customers.update('cus_123', {
  email: 'newemail@example.com',
  name: 'Updated Name'
});
```

**Campos Atualizáveis**

| Campo          | Tipo             | Descrição                                   |
| -------------- | ---------------- | ------------------------------------------- |
| `email`        | `string \| null` | Endereço de e-mail do cliente               |
| `name`         | `string \| null` | Nome exibido do cliente                     |
| `phone_number` | `string \| null` | Número de telefone em formato internacional |
| `metadata`     | `object \| null` | Pares chave-valor personalizados            |

<Info>
  Atualizações de e-mail do cliente também estão disponíveis pelo Portal do Cliente (autoatendimento), pelo painel e pela CLI via `dodo customers update`.
</Info>

Saiba mais: [Customer Update API](/api-reference/customers/patch-customer) | [Customer Management](/features/customers)

### 9. **Lançamento do Adaptador Bun**

Apresentando `@dodopayments/bun` — um adaptador dedicado para o servidor nativo do [Bun](https://bun.sh) (`Bun.serve()`). Integre checkout, portal do cliente e webhooks com o Bun em poucas linhas de código.

**Instalação**

```bash theme={null}
bun add @dodopayments/bun
```

**Configuração Rápida**

```typescript theme={null}
import { Checkout, CustomerPortal, Webhooks } from "@dodopayments/bun";

Bun.serve({
  routes: {
    "/api/checkout": Checkout({
      bearerToken: process.env.DODO_PAYMENTS_API_KEY!,
      returnUrl: process.env.DODO_PAYMENTS_RETURN_URL!,
      environment: process.env.DODO_PAYMENTS_ENVIRONMENT!,
    }),
    "/api/customer-portal": CustomerPortal({
      bearerToken: process.env.DODO_PAYMENTS_API_KEY!,
      environment: process.env.DODO_PAYMENTS_ENVIRONMENT!,
    }),
    "/api/webhooks": Webhooks({
      webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_KEY!,
      onPaymentSucceeded: async (payload) => {
        console.log("Payment succeeded:", payload.data.payment_id);
      },
      onSubscriptionActive: async (payload) => {
        console.log("Subscription active:", payload.data.subscription_id);
      },
    }),
  },
});
```

O adaptador Bun suporta os três fluxos de checkout (estático, dinâmico e baseado em sessão), geração de sessão do portal do cliente e tratamento seguro de webhooks com verificação de assinatura e validação Zod para 22 tipos de evento.

<Check>
  O adaptador Bun junta-se à nossa família de 11 adaptadores de framework, incluindo Next.js, Nuxt, Express, Fastify, Hono, Astro, SvelteKit, Remix, TanStack Start, Better Auth e Convex.
</Check>

Saiba mais: [Bun Adapter Documentation](/developer-resources/bun-adaptor) | [Framework Adapters Overview](/developer-resources/framework-adaptors)
