Configurar ambiente de desenvolvimento
Para integrar seu SmartApp à Point Smart, é necessário preparar o ambiente do terminal Point para que o fluxo de pagamento entre seu aplicativo e o Mercado Pago funcione corretamente.
Veja abaixo as configurações necessárias para disponibilizar seu SmartApp.
Antes de iniciar sua integração, atualize o terminal de debug recebido junto com o kit com a versão Sandbox fornecida pela equipe responsável por sua integração. Após essa atualização, a equipe realizará algumas configurações internas para que o terminal possa operar corretamente no ambiente Sandbox.
Trata-se de um aplicativo de simulação projetado para replicar e testar as funcionalidades principais do nosso SDK. Este aplicativo permite simular processos fundamentais, como o login com credenciais de usuário e senha, bem como os fluxos completos de processamento de pagamentos.
O processo de instalação pode ser realizado via adb (Android Debug Bridge) usando o seguinte comando e substituindo <caminho_do_APK> pelo caminho completo do arquivo APK baixado:
bash
adb install <caminho_do_APK>
APK de Sandbox. Isso garantirá o funcionamento correto do aplicativo de simulação e evitará possíveis conflitos.Para utilizar a funcionalidade de simulação, é necessário instalar o APK com o flavor de sandbox. Este APK está disponível no kit de integrações, de onde poderá baixá-lo. Uma vez baixado, deverá instalá-lo no terminal.
O kit de desenvolvimento contém os recursos necessários para integrar o fluxo de pagamento a partir do SDK do Mercado Pago.
Tendo a base de seu aplicativo desenvolvida e após as autorizações realizadas no terminal, siga as seguintes etapas:
- Adicione a biblioteca do Kit de Desenvolvimento no diretório
app/libs. - Instale a versão demo do SmartApp para servir como base para sua integração. Caso deseje, você poderá instalar diretamente o seu SmartApp.
- Em seguida, no arquivo
.gradledo módulo em que o SDK será utilizado, inclua a dependência para a biblioteca adicionada:
gradle
dependencies { .... implementation files("libs/nativesdk-0.1.0.aar") ... }
Após definir qual SmartApp será integrado ao terminal Point, indique no arquivo AndroidManifest.xml a atividade principal que será definida como launcher da aplicação.
Main Apps
Os Main Apps são aplicativos de gestão de negócios que você pode integrar ao Point Smart e que se tornarão a interface principal do terminal. Ou seja, todo o sistema operacional do terminal utilizará a interface do Main App e você poderá utilizar as funcionalidades disponíveis (como Bluetooth, câmera do scanner, etc.) para processar pagamentos.
Adicione os seguintes intent-filter no arquivo XML:
xml
<intent-filter> ... <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.HOME" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter>
Exemplo de configuração do Manifest.
xml
<application android:label="@string/app_name" android:icon="@mipmap/ic_launcher"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.HOME" /> </intent-filter> </activity> </application>
A configuração de metadata do arquivo AndroidManifest.xml é fundamental para garantir a integração completa do SDK do Mercado Pago no seu aplicativo.
Estas metadata são responsáveis por definir configurações obrigatórias e personalizadas para o SDK operar adequadamente e, assim, garantir que seu aplicativo aproveite melhor as funcionalidades de pagamentos e ofereça uma experiência de compra consistente e otimizada.
Veja abaixo como configurar as metadata obrigatórias e opcionais no AndroidManifest.xml.
O campo CLIENT_ID é utilizado para identificar as transações dos integradores e deve conter o valor atribuído à aplicação criada no Mercado Pago. Este campo deve ser definido no arquivo AndroidManifest.xml conforme o exemplo abaixo:
xml
<application ...> <meta-data android:name="com.mercadolibre.android.sdk.CLIENT_ID" android:value="CLIENT_ID_VALUE" /> <!-- Outras configurações da aplicação --> </application>
| Campo | Descrição |
android:name | O nome da metadata deve ser exatamente com.mercadolibre.android.sdk.CLIENT_ID. Qualquer variação no nome impedirá o reconhecimento pelo SDK. |
android:value | O valor deve ser o client_id atribuído à aplicação e deve conter obrigatoriamente a letra L no final do número, indicando que é do tipo Long. |
O campo OAUTH_ENABLED ativa o protocolo de segurança OAuth, necessário quando os terminals utilizam contas diferentes da conta principal do desenvolvedor da aplicação. Este campo é opcional para integrações para um terminal próprioIntegrações de Mercado Pago Point ao seu sistema para uso próprio e configuradas a partir de credenciais de produção da sua aplicação. Para mais informações, acesse o link abaixo.Acessar as credenciais e obrigatório em integrações para terceirosIntegrações de Mercado Pago Point ao seu sistema em nome de um vendedor e configuradas a partir de credenciais obtidas por meio do protocolo de segurança OAuth. Para mais informações, acesse o link abaixo.Acessar as credenciais. Caso não seja incluído um valor, o padrão assumido será false.
xml
<application ...> <meta-data android:name="com.mercadolibre.android.sdk.OAUTH_ENABLED" android:value="true" /> <!-- Outras configurações da aplicação --> </application>
| Campo | Descrição |
android:name | O nome da metadata deve ser exatamente com.mercadolibre.android.sdk.OAUTH_ENABLED. Qualquer variação no nome impedirá o reconhecimento pelo SDK. |
android:value | O valor deve ser true ou false, indicando se o modelo OAuth está ou não habilitado. |
O campo PLATFORM_ID é um código único para cada integração e que identifica a sua aplicação no nosso ecossistema, facilitando a análise detalhada e a rastreabilidade do fluxo de pagamentos. Este campo é opcional caso sua integração não se enquadre no conceito de plataformas e obrigatório caso se enquadre. No caso de não obrigatoriedade, se o campo não for preenchido o SDK funcionará normalmente.
PLATFORM_ID, entre em contato com a equipe responsável por sua integração.xml
<application ...> <meta-data android:name="com.mercadolibre.android.sdk.PLATFORM_ID" android:value="platform_id_value" /> <!-- Outras configurações da aplicação --> </application>
| Campo | Descrição |
android:name | O nome da metadata deve ser exatamente com.mercadolibre.android.sdk.PLATFORM_ID. Qualquer variação no nome impedirá o reconhecimento pelo SDK. |
android:value | O valor deve conter o identificador único da sua integração no Mercado Pago. |
Após rodar o kit de desenvolvimento, incluir o SmartApp no terminal Point e configurar o arquivo AndroidManifest, configure o SDK responsável pelo fluxo dos pagamentos recebidos no aplicativo. Para isso, crie uma classe, herdada da classe Application, e inclua a configuração do SDK como no exemplo abaixo.
class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
val config = MPConfigBuilder(this, "123456789")
.withBluetoothConfig()
.withBluetoothUIConfig()
.build()
MPManager.initialize(this, config)
}
}
public class MainApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
MPConfig config = new MPConfigBuilder(this, "CLIENT_ID")
.withBluetoothConfig()
.withBluetoothUIConfig()
.build();
MPManager.INSTANCE.initialize(this, config);
}
}
Com o SDK configurado você poderá integrar o fluxo de pagamentos.