Configuração do Pagamento Customizado
Pagamento Customizado
Como criar uma nova configuração
Para configurar o conector de pagamento customizado é necessário ter acesso ao Painel Administrativo da Plataforma, confira o passo a passo em nossa Central de Ajuda clicando aqui.
Campo: URL
O campo "URL" servirá para informar o endpoint onde a plataforma fará Posts com requisições contendo os dados do Pedido.
Chamamos esse campo de urlbase quando mencionamos ele nos documentos de Modelo de Requisição para a versão Completa.
Ela servirá de base para as requisições feitas tanto na versão Simplificada quanto na versão Completa, descritas no próximo tópico.
Importante: A URL deve ter o SSL instalado e com o 'https' corretamente.
Campo: Versão
Existem dois tipos de versões que possuem relação com a forma com que a URL será utilizada: Simplificada e Completa. Seguem abaixo as características de cada versão:
Versão Simplificada
Na versão Simplificada a plataforma faz um post na URL usando o Modelo de Objeto para a versão Simplificada com as informações do pedido + headers, e aguarda o retorno dos status conforme explicado em Modelo Response v1.
Nesta versão não é possível utilizar as funcionalidades de Cartões Sugeridos, Scripts Customizados, HTML do Formulário Customizado e Parcelamento Customizado.
Versão Completa
Na versão Completa a plataforma faz requisições na url base configurada no campo URL em 3 momentos:
- Ao selecionar o método de pagamento customizado: Requisição para {urlbase}/payment-details;
- Ao excluir um cartão salvo listado no checkout: Requisição para {urlbase}/card;
- Ao fechar o pedido utilizando o método de pagamento customizado: Requisição para {urlbase}/payment.
As requisições possuem informações diferentes, que estão detalhadas em Modelo de Objeto para a versão Completa. Em toda requisição feita, enviaremos os dados cadastrados no campo Headers.
Importante
As funcionalidades listadas abaixo podem ser utilizadas separadamente e a plataforma irá substituir o padrão pelo que está sendo enviado no response.
Ou seja, é possível utilizar somente a funcionalidade Cartões Salvos e as demais retornar vazio ou "null", utilizando assim o padrão da plataforma.
Segue abaixo a lista de funcionalidades disponíveis na versão Completa:
Cartões Salvos:
Permite apresentar uma lista de cartões já utilizados e salvos pelo consumidor para facilitar o fechamento do pedido, tornando-se desnecessário um novo preenchimento das informações do cartão do consumidor.
Essa informação será retornada no Response da Requisição feita no Payment Details.
É necessário desenvolver no front-end da loja a opção do consumidor salvar o cartão para utilizar nas próximas compras. Essa opção deve estar dentro do formulário de "Novo Cartão de Crédito".
A plataforma irá enviar na Requisição de Payment, dentro do objeto "Pagamento > Form" o campo "saveCard" como "true" quando o consumidor selecionar a opção, ou "false" quando o consumidor não selecionar.
É necessário desenvolver no front-end e na integração também a funcionalidade de deletar o cartão salvo pelo usuário.
O consumidor poderá excluir o cartão salvo e a plataforma irá enviar uma requisição para a URL cadastrada informando a exclusão. Mais detalhes em Modelo de Requisição Card.
Scripts Customizados:
Permite inserir scripts no módulo de pagamento, no momento que a opção de pagamento customizado é selecionada pelo consumidor.
Para mais detalhes técnicos, acesse Modelo de Requisição Payment Details.
HTML do Formulário Customizado:
Diferente do campo "Editor HTML" que permite apenas inserir mais campos no formulário, essa funcionalidade permite substituir nosso formulário padrão por outro formulário em formato HTML com mais informações e layout customizado. Essas informações serão enviadas na requisição para a URL informada. Para mais detalhes técnicos, acesse Modelo de Requisição Payment Details.
Parcelamento Customizado:
Permite mostrar parcelamentos diferenciados para grupos de clientes baseado no retorno da chamada feita pela plataforma. Ou seja, a plataforma faz uma requisição na URL informando os dados do pedido, e o endpoint retorna a quantidade de parcelas disponíveis para este pedido. Para mais detalhes técnicos, acesse Modelo de Requisição Payment Details.
Segue abaixo uma tabela de exemplo onde separamos os CPFs/CNPJs dos clientes em Grupos A, B, C e D, onde o Grupo A é composto por clientes Premium, com mais vantagens, mais compras, ou qualquer outro critério adotado:
Grupo | Parcelas disponíveis |
---|---|
Grupo A | 12x sem juros |
Grupo B | 8x sem juros |
Grupo C | 4x sem juros |
Grupo D | 2x sem juros |
Grupo A | 12x sem juros |
Importante
Os Parcelamentos e os Juros devem ser os mesmos configurados no Admin > Pagamentos > Grupos e Parcelamentos > Parcelamentos.
Campo: Headers
Este campo é composto por 'Chave' e 'Valor' e será enviado no header do post para a URL informada.
Dessa forma, é possível utilizar essas informações para identificar a requisição, criar gatilhos na integração ou conduzir diferentes processos.
Exemplo:
Para integrações utilizadas por vários lojistas, é possível configurar os headers conforme exemplificado abaixo e identificar no endpoint de acordo com as informações enviadas pela plataforma:
Chave | Valor |
---|---|
Store_id | 123XYZ456 |
Store_name | Loja de Teste |
Observação: O exemplo acima serve apenas para orientar sobre uma forma de utilização, mas os headers não estão limitados ao exemplo acima.
Campo: Editor HTML
Nesse campo será possível incluir qualquer HTML que será apresentado para o usuário. Disponibilizamos uma, DIV
Exemplo:
<div data-gateway-cartao> Exibe o formulário de cartão padrão TrayCorp.
<div class='forminline'> Itens individuais incluídos no FORM que serão tokenizados e transmitidos via POST para a URL configurada
<input type="hidden" name="bandeira"/> Será enviada a bandeira do cartão para a URL configurada
<label>CPF</label> Será exibido o campo CPF na tela de fechamento para preenchimento do comprador
<input type='tel' id='yapay-cpf' name='cpf' placeholder='CPF' data-mask='cpf' />
</div>
</div>
Usando nosso modelo
Utilizando o nosso modelo de HTML, o preenchimento de todos os dados do cartão é obrigatório para o fechamento do pedido.
Cenário hipotético:
Um cliente chega ao checkout com produtos no carrinho, informa seu endereço, seleciona um frete e vai para o módulo de Formas de Pagamento.
Neste momento a plataforma vai exibir as formas de pagamentos configuradas e ativas dentro de "Grupos e Pagamentos", incluindo o Pagamento Customizado.O cliente seleciona "Cartão de Crédito" - que é uma forma de pagamento customizada usando a versão Completa" - neste momento fazemos uma requisição para {urlbase}/payment-details e recebemos as informações listadas e detalhadas nos tópicos abaixo.
O cliente visualiza seus cartões salvos nas últimas compras (Cartão A e Cartão B) e decide excluir o Cartão B. Ao clicar em "excluir", a plataforma faz uma requisição para {urlbase}/card informando o cartão que deve ser excluído.
O cliente então seleciona o Cartão A e fecha o pedido. A plataforma faz uma requisição para {urlbase}/payment enviando todos os detalhes do pedido, incluindo informações de pagamento.
Updated 6 months ago