Autenticação Segura & Token de Pagamento

📦 Instalação

1. Importar os Scripts

Inclua os scripts ao final da tag <head> no seu HTML:

<head>
    <!-- Outros scripts e estilos -->

    <!-- SDK do Payevo (deve ser o último no head) -->
    <script src="https://apiv2.payevo.com.br/functions/v1/js"></script>
</head>

2. Configuração Inicial

// Execute assim que a página estiver pronta
document.addEventListener('DOMContentLoaded', function() {
    // Defina sua chave pública
    Payevo.setPublicKey("sua_chave_publica");

    // Escolha o ambiente
    Payevo.setTestMode(true); // em produção, altere para false
});

🚀 Como Utilizar

1. Gerando Token do Cartão

/**
 * Informações para gerar o token do cartão
 * 
 * Campos Obrigatórios:
 * - number: número do cartão (somente dígitos)
 * - holderName: nome do titular como aparece no cartão
 * - expMonth: mês de validade (2 dígitos)
 * - expYear: ano de validade (4 dígitos)
 * - cvv: código de segurança (3 a 4 dígitos)
 * - amount: valor em centavos
 * 
 * Campos Opcionais:
 * - currency: moeda (padrão: 'BRL')
 * - installments: quantidade de parcelas (padrão: '01')
 * - address: informações de endereço do cliente
 */

// Exemplo básico
const cardDataBasic = {
    number: "4000000000001091",
    holderName: "JOAO SILVA",
    expMonth: "12",
    expYear: "2025",
    cvv: "123",
    amount: 5000 // R$ 50,00
};

// Exemplo completo
const cardDataComplete = {
    // Dados obrigatórios
    number: "4000000000001091",
    holderName: "JOAO SILVA",
    expMonth: "12",
    expYear: "2025",
    cvv: "123",
    amount: 5000,
    
    // Opcionais
    currency: "BRL",
    installments: "01",

    // Endereço (opcional)
    address: {
        street: "Rua Exemplo",
        complement: "Apto 123",
        city: "São Paulo",
        state: "SP",
        zipcode: "01234567",
        country: "BR",

        // Dados adicionais do cliente
        name: "João da Silva",
        email: "[email protected]",
        phone: "11999999999"
    }
};

// Tokenização
const tokenBasic = await Payevo.encrypt(cardDataBasic);
const tokenComplete = await Payevo.encrypt(cardDataComplete);

2. Criando uma Transação

// Estrutura da transação
const payload = {
    card: {
        hash: token // token retornado anteriormente
    },
    customer: {
        name: "João Silva",
        email: "[email protected]",
        document: {
            type: "CPF",
            number: "12345678900"
        }
    },
    amount: 5000,          // R$ 50,00
    paymentMethod: "CARD"
};

// Enviando para a API
const response = await fetch("https://apiv2.payevo.com.br/functions/v1/transactions", {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        "Authorization": `Basic ${PAYEVO_CONFIG.SECRET_KEY}`
    },
    body: JSON.stringify(payload)
});

✨ Funcionalidades do SDK

O SDK já vem preparado para lidar com:

  • 🔒 Criptografia e tokenização de cartão
  • 🛡️ Compatibilidade com 3DS 2.0
  • 🔍 Verificações antifraude
  • ✅ Validação de informações
  • 💱 Tratamento de valores

⚠️ Atenção aos Detalhes

Valores

  • Sempre em centavos
  • Exemplos:
    • R$ 50,00 → 5000
    • R$ 199,90 → 19990
    • R$ 1.299,00 → 129900

Ambientes

  • Teste: setTestMode(true)
  • Produção: setTestMode(false)

Segurança

  • Utilize HTTPS em produção
  • Nunca salve dados sensíveis de cartões
  • Proteja suas chaves de acesso