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 “:
Environment Variables
.env
.env
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"
}
}
}
{
"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
❌ Erro 401 - Unauthorized
Causa: Chave de API inválida ou não fornecida
Solução: Verifique se o header Authorization está correto: Bearer ...
❌ Erro 422 - Validation Error
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: