Skip to main content

Visão Geral

Este guia te levará através dos passos essenciais para processar seu primeiro pagamento com a API Autorizou. Em menos de 10 minutos, você terá uma integração funcional.
Pré-requisito: Você precisa ter uma conta Autorizou e uma chave de API. Se ainda não tem, cadastre-se aqui.

Passo 1: Configurar Autenticação

Primeiro, configure sua chave de API. No ambiente de testes, use uma chave que comece com “:
export AUTORIZOU_API_KEY="4eC39HqLyjWDarjtT1zdp7dc"
export AUTORIZOU_BASE_URL="https://sandbox.autorizou.cloud"

Passo 2: Criar um Cliente

Todo pagamento precisa estar associado a um cliente. Vamos criar um:
curl -X POST https://sandbox.autorizou.cloud/v1/customers \
  -H "Authorization: Bearer 4eC39HqLyjWDarjtT1zdp7dc" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "João Silva",
    "email": "joao.silva@exemplo.com.br",
    "documents": [
      {
        "type": "CPF",
        "value": "12345678901"
      }
    ],
    "addresses": [
      {
        "type": "billing",
        "postal_code": "01310100",
        "line_1": "Av. Paulista",
        "number": "1000",
        "neighborhood": "Bela Vista",
        "city": "São Paulo",
        "state": "SP",
        "country": "BR"
      }
    ],
    "phone": {
      "type": "mobile",
      "ddi": "55",
      "ddd": "11",
      "number": "999999999"
    }
  }'

Resposta Esperada:

{
  "id": "cus_abc123def456ghi789",
  "name": "João Silva", 
  "email": "joao.silva@exemplo.com.br",
  "documents": [
    {
      "type": "CPF",
      "value": "123.456.789-01"
    }
  ],
  "created_at": "2024-01-15T10:30:00Z"
}
Guarde o ID do cliente: Você precisará dele para os próximos passos. No exemplo acima seria cus_abc123def456ghi789.

Passo 3: Tokenizar um Cartão

Para processar pagamentos com cartão, primeiro precisamos tokenizá-lo de forma segura:
Importante: Este exemplo usa dados de cartão em texto puro para simplicidade. Em produção, use nossa biblioteca de tokenização no frontend para maior segurança.
curl -X POST https://sandbox.autorizou.cloud/v1/cards \
  -H "Authorization: Bearer 4eC39HqLyjWDarjtT1zdp7dc" \
  -H "Content-Type: application/json" \
  -d '{
    "customer_id": "cus_abc123def456ghi789",
    "encrypted": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
  }'

Resposta Esperada:

{
  "id": "card_def456ghi789jkl012",
  "customer_id": "cus_abc123def456ghi789",
  "brand": "visa",
  "last_digits": "1111",
  "holder_name": "JOAO SILVA",
  "exp_month": "12",
  "exp_year": "30",
  "created_at": "2024-01-15T10:35:00Z"
}

Passo 4: Processar o Pagamento

Agora vamos processar seu primeiro pagamento com cartão de crédito:
curl -X POST https://sandbox.autorizou.cloud/v1/charges/orders \
  -H "Authorization: Bearer 4eC39HqLyjWDarjtT1zdp7dc" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order_$(date +%s)" \
  -d '{
    "mcc": "5411",
    "code": "PED001",
    "description": "Compra de teste - Guia rápido",
    "customer": {
      "id": "cus_abc123def456ghi789"
    },
    "payment": {
      "amount": 10000,
      "currency": "BRL",
      "payment_method": "credit_card",
      "installments": 1,
      "credit_card": {
        "id": "card_def456ghi789jkl012",
        "statement_descriptor": "LOJA TESTE",
        "capture": true,
        "processing_model": "authorization_and_capture"
      }
    },
    "items": [
      {
        "name": "Produto de Teste",
        "description": "Produto para testar integração",
        "quantity": 1,
        "amount": 10000
      }
    ]
  }'

Resposta Esperada:

{
  "id": "pay_ghi789jkl012mno345",
  "status": "paid",
  "amount": 10000,
  "currency": "BRL", 
  "payment_method": "credit_card",
  "description": "Compra de teste - Guia rápido",
  "customer_id": "cus_abc123def456ghi789",
  "card": {
    "id": "card_def456ghi789jkl012",
    "brand": "visa",
    "last_digits": "1111"
  },
  "acquirer_reference": "1234567890",
  "authorization_code": "ABC123",
  "created_at": "2024-01-15T10:40:00Z",
  "paid_at": "2024-01-15T10:40:02Z"
}

🎉 Parabéns!

Você processou com sucesso seu primeiro pagamento! O status paid indica que a transação foi aprovada e confirmada.

Testando Outros Cenários

Pagamento Recusado

Use o cartão 4000000000000002 para simular uma recusa:
{
  "payment": {
    "credit_card": {
      "encrypted": "[dados do cartão recusado]"
    }
  }
}

Pagamento PIX

{
  "payment": {
    "payment_method": "pix",
    "amount": 10000,
    "pix": {
      "expires_at": "2024-12-31T23:59:59Z"
    }
  }
}

Pagamento com Boleto

{
  "payment": {
    "payment_method": "bank_slip",
    "amount": 10000, 
    "bank_slip": {
      "due_at": "2024-12-31"
    }
  }
}

Próximos Passos

Agora que você tem uma integração básica funcionando:

Configurar Webhooks

Receba notificações em tempo real sobre mudanças de status

Implementar Split

Distribua valores entre múltiplos destinatários

Adicionar 3D Secure

Aumente a segurança com autenticação adicional

Criar Assinaturas

Implemente cobranças recorrentes

Troubleshooting Comum

Causa: Chave de API inválida ou não fornecida
Solução: Verifique se o header Authorization está correto: Bearer ...
Causa: Dados inválidos na requisição
Solução: Verifique os campos obrigatórios e formatos (CPF, email, etc.)
Causa: ID do cliente incorreto ou inexistente
Solução: Confirme que está usando o ID retornado na criação do cliente
Causa: Dados do cartão malformados ou criptografia incorreta
Solução: Use os cartões de teste fornecidos e verifique a tokenização

Suporte

Precisa de ajuda? Entre em contato: