Skip to content
SDK para criptografia e validação de dados do cartão de crédido para integração com a API de pagamentos da Juno/BoletoBancário.
Kotlin Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Initial Commit Jul 15, 2019
directcheckout Correção testes unitarios Jul 22, 2019
gradle/wrapper
.gitignore Initial Commit Jul 15, 2019
README.md
bintry.gradle Correcoes para publicacao Jul 15, 2019
build.gradle
gradle.properties Initial Commit Jul 15, 2019
gradlew
gradlew.bat
settings.gradle

README.md

DirectCheckout Android

SDK para criptografia e validação de dados de cartão de crédito para integração com a API de pagamentos da Juno/BoletoBancário.

Visando garantir a segurança das transações realizadas em nossa plataforma, a API da Juno adota uma política de criptografia dos dados de cartão de crédito de ponta-a-ponta.

Para mais informações acesse nossa página de integração:

Integração via API

Setup

Adicione o SDK nas dependências do seu aplicativo

dependencies {
    implementation "br.com.juno:directcheckout:0.0.2"
}

No arquivo Manifest adicione a permissão de acesso à internet, e seu token público que pode ser obtido em nossa página de integração

<manifest>

    <uses-permission android:name="android.permission.INTERNET"/>

    <application
           ...
           android:name=".MyApplication"
           ...>

        <meta-data
                android:name="br.com.juno.directcheckout.public_token"
                android:value="YOUR_PUBLIC_TOKEN"/>

            ...

    </application>

</manifest>

Na sua classe application inicialize o SDK:

class MyApplication:Application(){

    override fun onCreate() {
        super.onCreate()
        DirectCheckout.initialize(this)
    }
}

Para utilizar o ambiente de testes (Sandbox) basta passar false no segundo parâmetro (prod):

class MyApplication:Application(){

    override fun onCreate() {
        super.onCreate()
        DirectCheckout.initialize(this, prod = false)
    }
}

Utilização

Detalhamos a seguir um exemplo de utilização de nossa biblioteca de como obter o hash do cartão de crédito:

  val card = Card(
      cardNumber = "999999999",
      holderName = "Teste",
      securityCode = "111",
      expirationMonth = "6",
      expirationYear = "2022"
  )

  DirectCheckout.getCardHash(card, object : DirectCheckoutListener<String> {
      
      override fun onSuccess(cardHash: String) {
          /* Sucesso - A variável cardHash conterá o hash do cartão de crédito */
      }

      override fun onFailure(exception: DirectCheckoutException) {
          /* Erro - A variável exception conterá o erro ocorrido ao obter o hash */
      }
  })

Caso esteja utilizando a linguagem Java:

  Card card  = new Card(
      "9999 9999 9999 9999",
      "Teste",
      "111",
      "6",
      "2022"
  );


  DirectCheckout.getCardHash(card, new DirectCheckoutListener<String>() {
      @Override
      public void onSuccess(@NotNull String cardHash) {
          /* Sucesso - A variável cardHash conterá o hash do cartão de crédito */
      }

      @Override
      public void onFailure(@NotNull DirectCheckoutException exception) {
          /* Erro - A variável exception conterá o erro ocorrido ao obter o hash */
      }
  });

Funções Auxiliares

A biblioteca disponibilizada também possui uma série de métodos auxiliares para a validação de dados do cartão de crédito, conforme demonstrado a seguir:

  /* isValidSecurityCode: Valida número do cartão de crédito (retorna true se for válido) */
  DirectCheckout.isValidCardNumber("9999999999999999")

  /* isValidSecurityCode: Valida código de segurança do cartão de crédito (retorna true se for válido) */
  DirectCheckout.isValidSecurityCode("9999999999999999", "111")

  /* isValidExpireDate: Valida data de expiração do cartão de crédito (retorna true se for válido) */
  DirectCheckout.isValidExpireDate("05", "2021")

  /* isValidCardData: Validação dos dados do cartão de crédito(retorna true se for válido) */
  DirectCheckout.isValidCardData(card)

  /* getCardType: Obtém o tipo de cartão de crédito (bandeira) */
  DirectCheckout.getCardType("9999999999999999")}

Algumas funções também podem ser acessadas diretamente da classe Card:

  val card = Card(
    cardNumber = "999999999",
    holderName = "Teste",
    securityCode = "111",
    expirationMonth = "6",
    expirationYear = "2022"
  )

  /* isValidSecurityCode: Valida número do cartão de crédito (retorna true se for válido) */
  card.validateNumber()

  /* isValidSecurityCode: Valida código de segurança do cartão de crédito (retorna true se for válido) */
  card.validateCVC()

  /* isValidExpireDate: Valida data de expiração do cartão de crédito (retorna true se for válido) */
  card.validateExpireDate()

  /* getCardType: Obtém o tipo de cartão de crédito (bandeira) */
  card.getType()

Contato

Para mais informações entre em contato com a Juno:

You can’t perform that action at this time.