Atualizações Recentes
Saques via API v1: validação de titularidade obrigatória
A partir de hoje, saques criados via API v1 passam a ter a titularidade do destinatário validada. Não será mais permitido enviar dinheiro para uma chave PIX cujo CPF/CNPJ seja diferente do CPF/CNPJ da sua conta AbacatePay.O que mudou:- Saques via
POST /v1/payouts/createagora rejeitam chaves PIX cujotaxIddo titular seja diferente dotaxIdda conta autenticada - Tentativas de saque para chaves de terceiros retornam erro
400com a mensagem indicando a incompatibilidade de titularidade
Checkout Transparente: campo receiptUrl na resposta
Os endpoints de checkout transparente agora retornam o campo receiptUrl no objeto de resposta, em todos os métodos de pagamento (PIX, Boleto e Cartão).O que mudou:- Adicionado campo
receiptUrl(string | null) às respostas dePOST /v2/transparents/create,GET /v2/transparents/geteGET /v2/transparents/list - O campo é
nullenquanto a cobrança está pendente e é preenchido automaticamente com a URL do comprovante após o pagamento ser confirmado
Produtos digitais: arquivo para download
Produtos agora suportam um PDF vinculado para entrega digital. Após o pagamento ser confirmado, o comprador recebe acesso automático ao arquivo — sem nenhuma etapa manual da sua parte.Casos de uso: e-books, ingressos, licenças de software, apostilas, certificados.O que mudou:- Novo campo opcional
fileUrlemPOST /v2/products/create— informe a URL pública de um PDF (máximo 20 MB); a AbacatePay baixa e armazena o arquivo de forma segura - Novo campo
hasFile(boolean) no modeloProduct— retornado em todos os endpoints de produto; indica se há arquivo vinculado - O URL real do arquivo nunca é exposto pela API — segurança por padrão
Correção: imageUrl de produto agora funciona via API
O campo imageUrl em POST /v2/products/create não estava sendo processado corretamente. A imagem era recebida mas ignorada — o produto era criado sem imagem mesmo quando uma URL válida era enviada.O que foi corrigido:- A API agora baixa a imagem da URL fornecida e a armazena internamente (assim como já ocorre com
fileUrl) - O campo foi renomeado de
imageparaimageUrlno contrato da API, corrigindo uma inconsistência que impedia o campo de ser reconhecido - Validações adicionadas: a URL deve apontar para um arquivo de imagem válido; tamanho máximo de 5 MB
imageUrl.Assinaturas: novo ciclo trimestral (QUARTERLY) e PIX Automático
Duas melhorias no fluxo de assinaturas foram lançadas hoje.Ciclo trimestral
O valorQUARTERLY foi adicionado ao campo cycle de produtos e ao campo frequency.cycle de assinaturas. Use para cobranças a cada 3 meses.Ciclos disponíveis: WEEKLY · MONTHLY · QUARTERLY · SEMIANNUALLY · ANNUALLYPIX Automático para assinaturas
Lojas com o recurso PIX Automático habilitado podem agora criar assinaturas commethods: ["PIX"]. Anteriormente, assinaturas aceitavam apenas cartão de crédito.PIX Automático para assinaturas está disponível mediante habilitação no dashboard. Entre em contato com o suporte caso seu plano ainda não tenha acesso.
Reembolsos via API
Três novos endpoints permitem solicitar reembolso diretamente pela API, cobrindo os três fluxos de cobrança da plataforma.Permissão necessária:
REFUND:CREATEBody (todos os endpoints):Use o
id correto para cada rota: bill_ refere-se ao checkout, enquanto char_, pix_char_ e card_ referem-se à cobrança individual. Passar o ID errado retorna uma mensagem de erro indicando qual rota usar.Assinaturas: cancelar, alterar plano e registrar uso
Três novos endpoints de gerenciamento de assinaturas foram adicionados à API v2, completando o ciclo de vida de cobranças recorrentes.O que mudou:POST /v2/subscriptions/cancel— cancela uma assinatura ativa imediatamente, interrompendo todas as cobranças futurasPOST /v2/subscriptions/change-plan— troca o produto principal da assinatura (upgrade ou downgrade); o novo valor começa a ser cobrado no próximo cicloPOST /v2/subscriptions/record-usage— registra unidades de uso de produtos pay-as-you-go vinculados à assinatura; o total é incluído na próxima cobrança do ciclo
Consulte a documentação de assinaturas para exemplos completos e detalhes de cada endpoint.
Webhooks de Assinatura: novos eventos subscription.plan_changed e subscription.payment_failed
Dois novos eventos de webhook foram adicionados ao fluxo de assinaturas, dando mais visibilidade sobre o ciclo de vida das cobranças recorrentes dos seus clientes.O que mudou:subscription.plan_changed— disparado quando o cliente muda de plano dentro de uma assinatura ativa (upgrade ou downgrade). O payload inclui o objetosubscriptionatualizado com o novo valor e frequência.subscription.payment_failed— disparado quando uma tentativa de cobrança recorrente falha (ex: cartão recusado, saldo insuficiente). O payload inclui o objetopaymentcom o statusFAILEDe o camporeasonindicando o motivo da falha.
API v2 disponível para todos
A API v2 está agora disponível publicamente para todos os integradores, encerrando a fase beta. Não é mais necessário entrar em contato com o suporte para obter acesso.O que mudou:- A API v2 deixa de ser exclusiva para clientes selecionados e passa a ser o padrão para todos
- Novos cadastros já têm acesso à v2 diretamente, sem nenhuma etapa adicional
- Toda a documentação oficial passa a referenciar a v2 como versão atual
Checkout Transparente: rotas de Boleto e Boleto Transparente
Adicionadas as rotas de Boleto e Boleto Transparente ao Checkout Transparente, permitindo a criação de cobranças via boleto bancário diretamente pela API.O que mudou:- Adicionado suporte ao método
BOLETOna rotaPOST /v2/transparents/create - Boleto passa a ser uma opção de pagamento no fluxo de checkout transparente
Checkouts e Assinaturas: suporte ao campo metadata na criação
As rotas de criação de cobrança passam a aceitar e persistir um campo metadata customizado enviado pelo integrador.O que mudou:- Adicionado campo
metadata(objeto chave-valor) no body das rotas:POST /v2/checkouts/createPOST /v2/subscriptions/create
- O
metadataenviado é salvo e retornado no objeto de cobrança dentro do campometadata
Webhooks de Assinatura: novo campo checkout no payload
Os eventos de assinatura (subscription.completed, subscription.renewed, subscription.cancelled) passam a retornar um novo campo checkout dentro de data, contendo o objeto completo do checkout associado à cobrança.O que mudou:- Adicionado campo
checkoutemdatacom os detalhes do checkout associado à cobrança (id, url, amount, items, status, methods, etc.) - Adicionado campo
idno nível raiz do payload (identificador único do log do webhook)
Nova versão da API
A API v2 está em beta e passa a ser o novo padrão oficial. Tudo que é novo daqui pra frente roda nela.O que isso significa na prática?Todas as features novas — Checkout Transparente, Cartão de crédito, Assinatura ou qualquer novidade que vier — estarão disponíveis somente na API v2. Se você quiser usar o que há de mais recente, v2 é o caminho.Como usar a API v2?A API v2 está disponível para clientes selecionados até o fim da fase beta. Se você quiser participar do beta, entre em contato com o nosso suporte ao cliente.Posso usar v1 e v2 ao mesmo tempo?Pode, sim. As duas convivem em paralelo. Mas a gente recomenda migrar para a v2 o quanto antes: mais estabilidade e acesso a todas as funcionalidades novas.E a API v1?A API v1 segue funcionando e será mantida até 1º de março de 2028. Depois dessa data ela será descontinuada. Então vale ir se organizando e fazendo a migração com calma.Se você ainda precisa consultar a documentação da v1 durante a migração:- Em produção, selecione a versão v1 no seletor de versões no topo desta documentação ou acessar o link
Esquecemos os updates antes da v2. Prometemos que todo novo update aparecerá por aqui.
