Conectar Asaas

⏱ Tempo estimado: 5 minutos

O Asaas é o PSP mais simples de integrar. Você precisa apenas de uma API Key.

1

Criar conta no Asaas

Para testes (Sandbox)

  1. Acesse sandbox.asaas.com
  2. Clique em "Criar conta grátis"
  3. Preencha seus dados (pode usar dados fictícios no sandbox)
  4. Confirme o email
  5. No sandbox, a conta é aprovada automaticamente

Para produção

  1. Acesse asaas.com
  2. Clique em "Criar conta"
  3. Preencha com seus dados reais (CPF/CNPJ)
  4. Envie os documentos solicitados para verificação
  5. Aguarde aprovação (geralmente 1–2 dias úteis)
2

Gerar API Key

  1. Acesse sua conta Asaas (sandbox ou produção)
  2. No menu lateral, clique em Integrações
  3. Clique em Gerar nova Chave de API
  4. Dê um nome para a chave (ex: "Hubpay")
  5. Copie a chave imediatamente — ela começa com $aact_ e só é exibida uma vez
  6. Guarde em lugar seguro
⚠️Importante: chaves de sandbox começam com $aact_hmlg_ e de produção com $aact_prod_. A chave é irrecuperável — se perder, gere uma nova. Você pode ter até 10 chaves por conta.
3

Conectar no Hubpay

  1. Acesse hubpay.dev/dashboard/psps
  2. Clique em Conectar novo PSP
  3. Selecione Asaas como provider
  4. Selecione o ambiente:
    • Test se está usando chave de sandbox ($aact_hmlg_...)
    • Live se está usando chave de produção ($aact_prod_...)
  5. Dê um label (ex: "Asaas principal")
  6. Cole a API Key no campo
  7. Clique em Salvar credencial
🔒Suas credenciais são criptografadas com AES-256-GCM antes do armazenamento. Nem a equipe Hubpay tem acesso em texto puro.
4

Testar

Crie sua primeira cobrança de teste:

bash
curl -X POST https://api.hubpay.dev/v1/charges \
  -H "Authorization: Bearer hpx_test_SUA_CHAVE_HUBPAY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 1000,
    "provider": "asaas",
    "description": "Teste Asaas"
  }'

Se retornar status 201 com pix.copy_paste, está funcionando! Ou usando o SDK:

typescript
import { Hubpay } from '@hubpay/sdk';

const hubpay = new Hubpay({ apiKey: 'hpx_test_...' });

const charge = await hubpay.charges.create({
  amount: 1000,
  provider: 'asaas',
  description: 'Teste Asaas',
});

console.log(charge.pix.copy_paste);
5

Configurar webhook (recomendado)

Após salvar a credencial, o Hubpay gera uma URL de webhook única pra ela. É essa URL que você cola no painel do Asaas pra receber notificações de pagamento em tempo real. Formato:

text
https://api.hubpay.dev/api/wh/{uuid}
  1. Em /dashboard/psps, no menu "..." da credencial, clique em Copiar URL do webhook e Copiar token do webhook.
  2. No painel Asaas: Integrações → Webhooks → Criar Webhook.
  3. Cole a URL no campo URL e o token no campo Token de autenticação (header asaas-access-token).
  4. Marque os eventos: PAYMENT_CREATED, PAYMENT_RECEIVED, PAYMENT_CONFIRMED, PAYMENT_OVERDUE, PAYMENT_DELETED, PAYMENT_REFUNDED, PAYMENT_UPDATED.
  5. Ative e salve.
💡Cada credencial Asaas tem sua própria URL de webhook — se você cadastrar duas contas Asaas, cada uma recebe um UUID diferente.

Solução de problemas

ErroCausaSolução
402 psp_not_configuredCredencial não cadastrada ou inativaVerifique em /dashboard/psps se o Asaas está ativo
502 com "invalid_access_token"API Key incorreta ou expiradaGere nova chave no painel Asaas e atualize no Hubpay
502 com "access_token_not_found"API Key não foi enviada ao AsaasRecadastre a credencial no Hubpay
Ambiente erradoChave de sandbox usada com ambiente Live (ou vice-versa)Confira se o prefixo da chave corresponde ao ambiente selecionado

Links úteis