Tempo de leitura aproximado: 7min 36s
API - Interface de Programação de Aplicativos (Application Programming Interface), é uma integração que conecta dois softwares.
Comece buscando as informações - Basic Authentication - no card em Configurações - integrações - API EVO.
username: usuário obtido no card de integração do EVO
password: senha obtida no card de integração do EVO
Para utilizar a API de integração de vendas, o usuário precisa ter permissão de consulta e edição de vendas na chave habilitada:
1. Para fazer uma venda via API, pode ser necessário o uso outros endpoints, de acordo com as necessidades e as regras de negócio da empresa. Veja a lista dos endpoints importantes:
buscar usuários no EVO - os dados de clientes e oportunidades podem ser obtidos pelo CPF e e-mail usando os seguintes endpoints, desde que já existam na base do EVO, para utilização na API de vendas:
autenticação de usuário e reset de senha - os endpoints abaixo são usados para resetar senha, fazer login ou sair da área do cliente no ambiente EVO:
buscar IDs dos contratos - são encontradas no endpoint:
vendas - o endpoint usado para fazer vendas pelo EVO é:
https://evo-integracao.w12app.com.br/api/v1/sales via POST (veja o exemplo)
2. Para cadastrar um novo cartão de crédito para tokenização no gateway de pagamentos, chame nosso componente externo EVO PAY - https://w12evopay.com/evocartao/evo-pay.js
IMPORTANTE: se o valor da venda do contrato for "zero", não é preciso usar o EVO PAY ou passar os dados relacionados ao pagamento: token, tipo de pagamento e nº de parcelas.
3. Exemplos:
CSS EVO PAY - o EVO PAY aceita qualquer css direto no frontend de quem está desenvolvendo, mas a ordem dos campos do EVO PAY não pode ser alterada.
JS do EVO PAY em html - exemplo de uso:
<html>
<head>
<title>EvoPay</title>
<script src="https://w12evopay.com/evocartao/evo-pay.js"></script>
</head>
<body>
<div>
<div class="my-5">
<h1>Site teste</h1>
</div>
<evo-cartao></evo-cartao>
</div>
<script>
var evoCartao;
setTimeout(() => {
evoCartao = document.querySelector('evo-cartao');
evoCartao.classes = 'form-no-style';
//Dados obtidos através da API https://evo-integracao.w12app.com.br/api/v1/configuration/gateway
evoCartao.gateway = {};
// Dados obtidos através da API https://evo-integracao.w12app.com.br/api/v1/configuration/card-flags
evoCartao.bandeiras = [];
// Dados obtidos através da API https://evo-integracao.w12app.com.br/api/v1/configuration/card-translation
evoCartao.traducoes = {};
evoCartao.addEventListener('eventoTokenGerado', (event) => {
console.log(event.detail);
});
evoCartao.addEventListener('eventoOcorreuErro', (event) => {
console.log(event.detail);
alert(event.detail);
});
}, 500);
function teste() {
evoCartao.dispatchEvent(new CustomEvent('salvar'));
}
</script>
</body>
</html>
Utilizando o html acima, ao gerar os dados de cartão pelo gateway com sucesso, o retorno será pelo evento 'eventoTokenGerado' e em caso negativo, pelo evento 'eventoOcorreuErro'.
API de vendas - exemplo de uso: o endpoint utilizado para fazer vendas pelo EVO é o https://evo-integracao.w12app.com.br/api/v1/sales via POST
{
"idBranch": “int”, // ID da filial de venda
"idMembership": “int”, // ID Contrato a ser vendido (se a venda for de serviço, passar o valor 0)
"idService": “int”, // ID serviço a ser vendido (se a venda for de contrato, passar o valor 0)
"memberData": { // Dados complementares do cliente caso o gateway solicite
"idMember": “int”,
"document": "string",
"zipCode": "string",
"address": "string",
"number": "string",
"complement": "string",
"neighborhood": "string",
"city": "string",
"idState": “int”
},
"cardData": { // Dados do cartão do aluno e token de cadastro do evoPay
"token": "string",
"temporaryToken": "string",
"branchToken": "string",
"totalInstallments": 0,
"truncatedCardNumber": "string",
"brand": "string",
"cardHolderName": "string",
"cardExpirationYear": 0,
"cardExpirationMonth": 0
},
"idProspect": 0, // ID do Prospect caso já tenha cadastro na base de dados
"idMember": 0, // ID do Cliente caso já tenha cadastro na base de dados
"voucher": "string", // Código do voucher caso seja utilizado na venda
"idCardMember": 0, // Código do cartão do cliente caso seja um cartão já cadastrado no cliente
"totalInstallments": 0, // Número de parcelas
"payment": 1 // Tipo pagamento : 1 – Cartão Crédito, 2 – Boleto, 3 – Crédito de venda, 4 – Transferencia Bancaria, 5 – ValorZero
}
Tem dúvidas? Acesse a central de ajuda ou entre em contato com nosso time de atendimento pelo chat!
Revisado em 16/01/2023