adt-dev-transparent
v1.0.6
Published
Pacote para implementar o script de checkout transparente da Aditum.
Downloads
153
Readme
Checkout Transparente
Utilizando o NPM de Checkout Transparente
O pacote do checkout transparente pode ser inserido em seu projeto utilizando o npm i adt-transparent
. Após utilizar o código, faça o const AditumTransparent = require('adt-transparent');
e estará disponível o objeto chamado AditumTransparent
e nele contém os métodos necessários para tokenizar o cartão.
Passo 1
A primeira coisa a se fazer é registrar as credenciais da loja em que vai ser criado o cartão tokenizado, chamando o método setCredentials
da SDK. Nesse método é necessário passar a MerchantCredential(CNPJ) e o MerchantToken dessa forma aqui: AditumTransparent.setCredentials({merchantCredential: "{{cnpj}}", merchantToken: "{{merchantToken}}"})
.
Passo 2
Após adicionar as credenciais deve chamar o método AditumTransparent.getCardBrand({bin: "411111", success, error})
, onde o bin é os 6 primeiros dígitos do cartão usado para identificar a bandeira, sucess é o callback que vamos chamar retornando a resposta com a bandeira então deve passar uma função para fazer esse tratamento e o error é o callback quando acontecer algum erro no processamento da requisição.
Objeto de sucesso na response:
{
"brand":"Visa"
}
Objeto de erro na response:
{
"errors": [
{
"errorCode": 1,
"message": "Propriedade 'CardBin' está ausente.",
"field": "CardBin"v
}]
}
Passo 3
Após o retorno da bandeira de cartão, pode chamar o método AditumTransparent.createTemporaryCard({card, success, error})
que é responsável por criar o token do cartão, onde card é o objeto contendo informações do cartão, success é o callback onde será informado o token gerado e o error é o callback que será chamado quando estiver algum erro na requisição. Abaixo um exemplo do objeto card preenchido:
{
"brand":"Visa",
"number":"4111111111111111",
"holderName":"FULANO SILVA",
"holderDocument":"65844359038",
"expirationMonth":"02",
"expirationYear":"2021",
"cvv":"223"
}
Objeto de retorno de sucesso:
{
"temporaryToken":"card_t/AIChh82EgN440hTW8vQqHcPC82EwBW"
}
Objeto de retorno de erro:
{
"errors":[
{
"errorCode":1,
"message":"Propriedade 'Cvv' está ausente.",
"field":"Cvv"
}]
}
Para múltiplos cartões, basta chamar esse método novamente com os dados do novo cartão e utilizar nos objetos de transação abaixo.
Passo 4
Após gerar o token, esse token pode ser enviado para seu servidor e ser usado pra passar uma requisição no endpoint v2/charge/ecommerce. Para passar uma cobrança com múltiplos cartões, basta adicionar mais um objeto de transação, com o token gerado para este cartão. Abaixo um exemplo de requisição usando esse token temporário.
{
"source":1,
"merchantChargeId": 1,
"customer":{
"name":"FULANO SILVA",
"email":"fake@email",
"document":"65844359038",
"documentType":1,
"phone":{
"countryCode":55,
"type":5,
"areaCode":"41",
"number":"444444444"
}
},
"transactions":[{
"paymentType":2,
"amount": 1000,
"installmentNumber":1,
"temporaryCardToken": "card_vS7aIEd72Ei3rb2EZlioSaAWj8o66maM"
}]
}