Novos recursos
1. Checkout com várias assinaturas
Agora, um checkout pode vender várias assinaturas de uma só vez. Adicione dois ou mais produtos de assinatura aproduct_cart e o cliente pagará por todos eles em um único pagamento, com uma fatura.
Cada produto se torna sua própria assinatura e é renovado de acordo com seu próprio cronograma, portanto planos com diferentes intervalos de cobrança ou períodos de teste podem compartilhar um carrinho. A página de checkout mostra um Total devido hoje e, em seguida, uma linha para cada assinatura, com seu período de teste, seu valor de renovação e a próxima data de cobrança.
Um carrinho comporta no máximo 20 produtos. Um carrinho com mais de uma assinatura também não pode conter produtos avulsos.
O pagamento registra toda a compra: is_multi_subscription é true e subscription_ids lista todas as assinaturas criadas, enquanto subscription_id é null.
Saiba mais: Carrinho com várias assinaturas
2. Moderation API
Analise textos e imagens antes que cheguem ao seu produto. Envie conteúdo paraPOST /moderation/screen e receba de volta um veredito de allow, flag ou deny, com as categorias que o acionaram.
As solicitações aceitam até 8.000 caracteres de texto, uma imagem de até 5 MiB ou ambos. Acompanhe o que você analisou com GET /moderation/usage. As análises em modo de teste são gratuitas e retornam vereditos simulados que você pode acionar sob demanda, permitindo testar todos os caminhos da sua integração.
Saiba mais: Moderation API
3. GCash, AlipayHK, FPS e Touch ‘n Go
Quatro novos métodos de pagamento locais chegam aos clientes do Sudeste Asiático e de Hong Kong:
O cliente escaneia um código QR na carteira digital ou no aplicativo bancário para pagar. Os quatro estão ativados por padrão e podem ser desativados em Configurações → Métodos de pagamento. Eles funcionam apenas para pagamentos avulsos e não aparecem em checkouts de assinatura. Cada método aparece somente quando o país de cobrança e a moeda correspondem e Adaptive Currency está ativado.
Saiba mais: Métodos de pagamento da Ásia-Pacífico
4. Apple Pay na Índia
Os clientes na Índia agora podem pagar com Apple Pay. As assinaturas do Apple Pay cobradas em INR usam mandatos do RBI, assim como outros cartões emitidos na Índia. Saiba mais: Apple Pay na Índia5. Alertas da Ethoca
Interrompa chargebacks em cartões Mastercard e outros cartões que não sejam Visa antes que sejam registrados. Quando um emissor de cartão envia um alerta da Ethoca, Dodo Payments reembolsa o pagamento automaticamente, evitando que a disputa se torne um chargeback e seja contabilizada na sua taxa de chargebacks. Os alertas da Ethoca são opcionais. Faça a adesão pelo cartão Ethoca Alerts, em Configurações → Resolução de disputas, ao lado do Visa RDR. Sua empresa precisa ter pagamentos em produção e um descritor da fatura primeiro, e há uma taxa para cada alerta. A confirmação da adesão leva de 2 a 4 dias úteis. Saiba mais: Alertas da Ethoca6. Registro de e-mails de clientes
Agora, cada cliente tem uma aba E-mails enviados em Vendas → Clientes, listando os e-mails que Dodo Payments enviou a ele nos últimos 180 dias. Cada entrada mostra o assunto, a categoria e o status de entrega — Enviado, Entregue, Falhou, Marcado como spam ou Não enviado — e um e-mail com falha informa o motivo. Abra qualquer e-mail para ler exatamente o que o cliente recebeu e envie-o novamente para o endereço original ou para um novo endereço, até três vezes. O mesmo registro está disponível pela API emGET /customers/{customer_id}/emails.
Saiba mais: Registros de e-mail
7. E-mails em modo de teste
Agora os e-mails de clientes são enviados em modo de teste, permitindo verificar toda a experiência de e-mail antes de entrar em produção. Os e-mails de teste vão para o destinatário real, e todo assunto começa com[TEST MODE].
O botão E-mails em modo de teste, em Configurações → Comunicação → E-mail, controla esse recurso e vem ativado por padrão. Uma empresa pode enviar até 100 e-mails em modo de teste por semana. Os e-mails em modo de produção não são afetados.
Saiba mais: E-mails em modo de teste
8. Checkout da direita para a esquerda
Agora o checkout é renderizado da direita para a esquerda em árabe e hebraico. A página inteira é espelhada — layout, navegação e resumo do pedido — enquanto endereços de e-mail, códigos e números de telefone mantêm sua ordem natural de leitura.
9. Nome obrigatório do titular do cartão
Definafeature_flags.require_cardholder_name como true em uma sessão de checkout para exigir que os clientes informem o nome presente no cartão. O campo aparece acima do número do cartão. A flag usa false por padrão. Outros métodos de pagamento ignoram essa configuração, embora Apple Pay e Google Pay já coletem o nome do pagador.
Saiba mais: Sessões de checkout
10. Quem cancelou uma assinatura
Agora as assinaturas incluem um objetocancelled_by que registra quem as cancelou. Seu actor_type é um destes valores: customer, merchant_user, api_key ou dodo_team; para um cliente ou usuário do dashboard, ele também inclui name e email.
O campo aparece na assinatura em respostas da API e em todos os payloads de webhook subscription.*. Ele abrange cancelamentos imediatos e programados e é null quando não se conhece o responsável, como em um cancelamento feito pelo sistema.
Saiba mais: Obter assinatura
11. Configurações de repasse e saldo reservado
Os repasses agora têm um novo local em Configurações → Repasses, acessível por Gerenciar na página Repasses. Altere a frequência dos repasses para um ciclo menos frequente, defina seu repasse mínimo e gerencie suas contas bancárias vinculadas em um só lugar. A página Repasses agora mostra a data real do próximo repasse, ignorando fins de semana e feriados bancários, e informa quando uma data de repasse é alterada. Se parte dos seus pagamentos liquidados for mantida como reserva, uma linha Reservado aparecerá no cartão Saldo de repasse. Esse valor ainda pertence a você e é liberado automaticamente de volta ao seu saldo. Saiba mais: Estrutura de repasses12. Um fluxo de verificação mais simples
A verificação da conta agora é uma única lista de verificação com um botão que orienta o próximo passo — Iniciar verificação, Continuar verificação ou Enviar para análise. Cada formulário é salvo como rascunho quando você clica em Salvar e continuar, para que possa preencher tudo no seu ritmo e enviar todos os formulários para análise juntos. A verificação de identidade é aberta em uma janela segura na mesma página. Quando a equipe precisa de mais informações, um banner Ação necessária mostra o que é necessário e até quando. Saiba mais: Verificação da conta13. Um dashboard redesenhado
Configurações agora é uma única página de cartões agrupados em Seu perfil, Configurações da empresa e Pagamentos e comércio, cada um abrindo sua própria seção. Integrações de rastreamento, Preços, Resolução de disputas e Repasses têm suas próprias páginas, e Storefront foi movido da barra lateral para Configurações. Links antigos redirecionam para as novas páginas. A pesquisa agora fica no cabeçalho, junto com um ícone de chat de suporte. A opção de sair foi movida para o seletor de empresas. Agora, todos os menus suspensos de país, número de telefone e moeda no dashboard podem ser pesquisados por nome, código ISO ou código de discagem.14. Dodo Sync 1.0
Dodo Sync, o pacote de código aberto que copia seus pagamentos, clientes, assinaturas e licenças para seu próprio banco de dados, chega à versão 1.0.- Sincronizações mais rápidas. Cada página de registros agora é gravada em uma única operação em lote, em vez de uma consulta por registro, no MongoDB, PostgreSQL, MySQL e ClickHouse.
- Seguro em serverless.
run()agora espera todas as gravações no banco de dados antes de ser resolvido, portanto uma sincronização no Vercel ou AWS Lambda não perde mais registros quando a função termina. Chame o novo métododisconnect()em um blocofinallypara fechar a conexão com o banco de dados. - Seu próprio banco de dados MongoDB. Os registros são gravados no banco de dados indicado na sua URI de conexão. Se a URI não indicar um banco de dados, o Dodo Sync usará
dodopayments_synccomo antes. - Segredos ocultos na CLI. O modo interativo agora oculta sua URI do banco de dados e sua chave de API enquanto você as digita.