Veepag.encryptCard e manda o retorno para o seu backend. Quem chama a API da Veepag é o seu servidor, com a apiKey.
Antes de começar
A Veepag entrega duas coisas para você colocar na página de pagamento:- A URL do script
veepag.min.js. - A chave pública, em PEM. Ela é a mesma para todas as contas. A chave privada fica na Veepag.
apiKey fica só no seu backend.
1. Inclua o script
Coloque a tag na página de pagamento, com a URL que a Veepag passou.Veepag.encryptCard fica disponível na página.
2. Cifre o cartão
Leia os campos do seu formulário e chame a função. A chamada é assíncrona: useawait.
expYear tem 4 dígitos (2029). expMonth pode ser 12 ou 3. O script monta a validade como 12/2029 ou 03/2029. Espaços no número do cartão são removidos.
keyId é opcional. Se você não enviar, o script usa v1.
result.encryptedCard é o token. Ele tem cinco campos: keyId, encryptedKey, iv, ciphertext e authTag. Os quatro últimos vêm em base64. Envie esse objeto inteiro para o seu backend.
3. Trate os erros
Se algum campo estiver inválido, o script não cifra.hasErrors vem true, encryptedCard vem null, e errors lista o que falhou. Mais de um erro pode voltar na mesma resposta.
Mostre a mensagem para o cliente e peça para corrigir o campo. Não chame a API da Veepag nesse caso.
4. Envie o token pelo seu backend
O seu servidor recebeencryptedCard e coloca esse objeto no campo token da cobrança. Não envie paymentProfile junto. A API aceita um ou outro.
No cartão, token vale nestes endpoints:
POST /v1/transactionPOST /v1/subscriptionPOST /v1/charge/pay(esse caminho usa reCAPTCHA; veja Cobranças)
amount continua em centavos.
paymentProfile, vai o mesmo token. product.id e paymentMethod continuam obrigatórios.
O token vale por 10 minutos e só pode ser usado uma vez. Se a cobrança falhar e você precisar tentar de novo, cifre o cartão outra vez na página. Reenviar o mesmo objeto é recusado.
Se a API aceitou o
token e devolveu a transação ou a assinatura, a cifra e o envio fecharam. O cartão foi aberto só na Veepag.