
Moip SDK Javascript (criptografia de cartão)
SDK Javascript para a criptografia de cartões de crédito.
O que é?
SDK Javascript que possibilita a criptografia de dados sensíveis de cartão no browser do cliente assim como identificação e validação de números de cartão de crédito. Para Web / React Native / Ionic 1 / Ionic 3 / NodeJS.
Exemplo
Veja um exemplo funcional utilizando o JavaScript de criptografia de cartão clicando aqui.
Plataformas
Observação
Para todas as plataformar, é necessário passar a sua public key como parâmetro para gerar o hash dos dados do cartão de crédito. Essa informação você pode obter pelo painel da moip, na seção de Chave de acesso https://conta.moip.com.br/configurations/api_credentials
-----BEGIN PUBLIC KEY-----MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoBttaXwRoI1Fbcond5mS7QOb7X2lykY5hvvDeLJelvFhpeLnS4YDwkrnziM3W00UNH1yiSDU+3JhfHu5G387O6uN9rIHXvL+TRzkVfa5iIjG+ap2N0/toPzy5ekpgxBicjtyPHEgoU6dRzdszEF4ItimGk5ACx/lMOvctncS5j3uWBaTPwyn0hshmtDwClf6dEZgQvm/dNaIkxHKV+9jMn3ZfK/liT8A3xwaVvRzzuxf09xJTXrAd9v5VQbeWGxwFcW05oJulSFjmJA9HcmbDYHJT+sG2mlZDEruCGAzCVubJwGY1aRlcs9AQc1jIm/l8JwH7le2kpk3QoX+gz0wWwIDAQAB-----END PUBLIC KEY-----
Web e Ionic 1
Neste cenário, a lib de criptografia já está compilada junto com o código do SDK, sem ter necessidade de importar outro script.
<script src="moip-sdk-js.js"></script> <script> MoipSdkJsMoipCreditCard hash ;</script>
Ionic 3
Neste cenário, é necessário instalar e importar uma lib de criptografia de terceiro, para gerar o hash do cartão de crédito. Após importar, lembrar de passar o contexto dele atravéz do método setEncrypter, como mostrado abaixo no exemplo.
Instalar
yarn add moip-sdk-js jsencrypt
// or
npm i moip-sdk-js jsencrypt --save
Usar
;; const pubKey = `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoBttaXwRoI1Fbcond5mS 7QOb7X2lykY5hvvDeLJelvFhpeLnS4YDwkrnziM3W00UNH1yiSDU+3JhfHu5G387 O6uN9rIHXvL+TRzkVfa5iIjG+ap2N0/toPzy5ekpgxBicjtyPHEgoU6dRzdszEF4 ItimGk5ACx/lMOvctncS5j3uWBaTPwyn0hshmtDwClf6dEZgQvm/dNaIkxHKV+9j Mn3ZfK/liT8A3xwaVvRzzuxf09xJTXrAd9v5VQbeWGxwFcW05oJulSFjmJA9Hcmb DYHJT+sG2mlZDEruCGAzCVubJwGY1aRlcs9AQc1jIm/l8JwH7le2kpk3QoX+gz0w WwIDAQAB -----END PUBLIC KEY-----`; MoipCreditCard hash ;
Veja aqui um exemplo de app utilizando Ionic 3 e a SDK de criptografia: link
React Native
Neste cenário, é necessário instalar e importar uma lib de criptografia de terceiro para gerar o hash do cartão de crédito. Após importar, lembrar de passar o contexto dele atravéz do método setEncrypter, como mostrado abaixo no exemplo.
Instalar
yarn add moip-sdk-js react-native-rsa-native
// or
npm i moip-sdk-js react-native-rsa-native --save
// A biblioteca react-native-rsa-native requere instalação e configuração automática
// Consultar repositório da biblioteca para particularidades no iOS
react-native link react-native-rsa-native
Usar
;; const pubKey = `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoBttaXwRoI1Fbcond5mS 7QOb7X2lykY5hvvDeLJelvFhpeLnS4YDwkrnziM3W00UNH1yiSDU+3JhfHu5G387 O6uN9rIHXvL+TRzkVfa5iIjG+ap2N0/toPzy5ekpgxBicjtyPHEgoU6dRzdszEF4 ItimGk5ACx/lMOvctncS5j3uWBaTPwyn0hshmtDwClf6dEZgQvm/dNaIkxHKV+9j Mn3ZfK/liT8A3xwaVvRzzuxf09xJTXrAd9v5VQbeWGxwFcW05oJulSFjmJA9Hcmb DYHJT+sG2mlZDEruCGAzCVubJwGY1aRlcs9AQc1jIm/l8JwH7le2kpk3QoX+gz0w WwIDAQAB -----END PUBLIC KEY-----`; MoipCreditCard hash ;
NodeJS ou React Web
Neste cenário, é necessário instalar e importar uma lib de criptografia de terceiro para gerar o hash do cartão de crédito. Após importar, lembrar de passar o contexto dele atravéz do método setEncrypter, como mostrado abaixo no exemplo.
Instalar
yarn add moip-sdk-js node-jsencrypt
// or
npm i moip-sdk-js node-jsencrypt --save
Usar
const JSEncrypt = ;const MoipCreditCard = MoipCreditCard; // or if you are using the import syntax (which is always the case for React Web) you can do the following://// import { MoipCreditCard } from 'moip-sdk-js'// import JSEncrypt from 'node-jsencrypt' const pubKey = `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoBttaXwRoI1Fbcond5mS 7QOb7X2lykY5hvvDeLJelvFhpeLnS4YDwkrnziM3W00UNH1yiSDU+3JhfHu5G387 O6uN9rIHXvL+TRzkVfa5iIjG+ap2N0/toPzy5ekpgxBicjtyPHEgoU6dRzdszEF4 ItimGk5ACx/lMOvctncS5j3uWBaTPwyn0hshmtDwClf6dEZgQvm/dNaIkxHKV+9j Mn3ZfK/liT8A3xwaVvRzzuxf09xJTXrAd9v5VQbeWGxwFcW05oJulSFjmJA9Hcmb DYHJT+sG2mlZDEruCGAzCVubJwGY1aRlcs9AQc1jIm/l8JwH7le2kpk3QoX+gz0w WwIDAQAB -----END PUBLIC KEY-----`; MoipCreditCard hash ;
Validação do Cartão de Crédito
Também é disponibilizado uma class com alguns métodos que faz as validações dos dados do cartão de crédito.
Para o uso Web ou Ionic 1, deve usar a classe da seguinte forma:
MoipSdkJsMoipValidator; // return true/false
Para o uso React Native, Ionic 3 ou NodeJS, deve usar a classe da seguinte forma:
;MoipValidator; // return true/false
Número do cartão de crédito
const creditCardNumber = '4111111111111111';MoipValidator; //return true/false
Código de segurança do cartão de crédito (CVC)
const creditCardNumber = '4111111111111111';const cvc = '123';MoipValidator; //return true/false
Data de expiração do cartão de crédito
const month = '10';const year = '2020';MoipValidator; //return true/false
Bandeira dos cartões
MoipValidator; //return [Object]MASTERCARDMoipValidator; //return [Object]VISAMoipValidator; //return [Object]AMEXMoipValidator; //return [Object]DINERSMoipValidator; //return [Object]HIPERCARDMoipValidator; //return [Object]ELOMoipValidator; //return [Object]HIPERMoipValidator; //return [Object]null