Inicio
Documentação
Recursos
Parcerias
Comunidade

Recursos

Confira as atualizações das nossas soluções e do funcionamento do sistema ou peça suporte técnico.

Parcerias

Conheça nosso programa para agências ou desenvolvedores que oferecem serviços de integração e vendedores que desejam contratá-los.

Comunidade

Fique por dentro das últimas novidades, peça ajuda a outros integradores e compartilhe seu conhecimento.

Primeiros passos - Main Apps - Mercado Pago Developers

Busca inteligente powered by OpenAI 

Primeiros passos

Assegure-se de ter o Demo App instalado no dispositivo SmartPOS do Kit de Desenvolvimento. Este aplicativo pode servir como referência na integração.

Para usar o SDK, siga estes passos:

  1. Adicione a biblioteca do Kit de Desenvolvimento no diretório app/libs.
  2. Inclua a dependência para a biblioteca no arquivo .gradle do módulo no qual o SDK vai ser usado. Assim:

gradle

dependencies {
     ....
     implementation files("libs/nativesdk-0.1.0.aar")
     ...
}
  1. A configuração correta de metadata no arquivo AndroidManifest.xml é crucial para garantir o funcionamento ideal e a integração completa do nosso SDK em sua aplicação. A metadata permite definir configurações essenciais e personalizadas que o SDK precisa para operar adequadamente, adaptando-se às necessidades específicas de cada aplicação e seu ambiente de uso. Para isso, configure as seguintes informações:

    xml

    <application
        ...>
    
        <meta-data
    
            android:name="com.mercadolibre.android.sdk.CLIENT_ID"
            android:value="123456789L" />
    
        <!-- Outras configurações da aplicação -->
    </application>
    Importante
    É crucial que o nome da metadata seja exatamente com.test.android.sdk.CLIENT_ID. Qualquer variação no nome pode resultar na falta de reconhecimento do campo pelo SDK.

    Além disso, certifique-se de que o valor do Client ID termine com a letra "L" para indicar que é um número do tipo Long. Isso é necessário para que o SDK processe corretamente o valor.
    • OAUTH_ENABLED: utilize o campo OAUTH_ENABLED para ativar o protocolo de autorização OAuth, que é necessário quando os dispositivos serão usados com contas diferentes da do desenvolvedor da aplicação. Este campo é opcional e, caso não seja adicionado na metadata, será considerado o valor padrão false.

    xml

    <application
        ...>
    
        <meta-data
    
            android:name="com.mercadolibre.android.sdk.OAUTH_ENABLED"
            android:value="true" />
    
        <!-- Outras configurações da aplicação -->
    </application>
    Importante
    É crucial que o nome da metadata seja exatamente com.mercadolibre.android.sdk.OAUTH_ENABLED. Qualquer variação no nome pode resultar na falta de reconhecimento do campo pelo SDK.

    Certifique-se de definir corretamente o valor do campo apenas com true ou false, de acordo com a necessidade de habilitar ou não o protocolo OAuth . Se não for especificado, o valor padrão será false.
  2. Ainda no arquivo AndroidManifest.xml, defina a atividade principal que será estabelecida como launcher da aplicação. Adicione os seguintes intent-filter:

xml

<intent-filter>

   ...

   <category android:name="android.intent.category.LAUNCHER" />

   <category android:name="android.intent.category.HOME" />

</intent-filter>
  1. Crie a classe herdada da classe Application de Android e insira a configuração do SDK:
          
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, "123456789")
     .withBluetoothConfig()
     .withBluetoothUIConfig()
     .build();
   MPManager.INSTANCE.initialize(this, config);
 }
}

        
  1. Comece a usar o SDK para processar pagamentos:
          
val paymentFlow = MPManager.paymentFlow

val uriSuccess = paymentFlow.buildCallbackUri(
   "mercadopago://launcher_native_app",
   "success",
   hashMapOf("attr" to "123"),
   "demo_app"
)

val uriError = paymentFlow.buildCallbackUri(
   "mercadopago://launcher_native_app",
   "error",
   hashMapOf("attr" to "456"),
   "demo_app"
)

paymentFlow.launchPaymentFlowActivity(
   amount,
   description,
   uriSuccess,
   uriError,
   context,
   lastPaymentMethodSelected
) { response ->
   response.doIfError { error ->
       error.message?.let { errorMessage -> setLayoutError(errorMessage) }
   }
}

        
          
PaymentFlow paymentFlow = MPManager.INSTANCE.getPaymentFlow();

HashMap<String, String> metadata = new HashMap<>();

Uri uriSuccess = paymentFlow.buildCallbackUri(
 "mercadopago://launcher_native_app",
 "success",
 metadata,
 "demo_app"
);

Uri uriError = paymentFlow.buildCallbackUri(
 "mercadopago://launcher_native_app",
 "error",
 metadata,
 "demo_app"
);

Function1<MPResponse, Unit> callback = (MPResponse response) -> {
 return;
};

paymentFlow.launchPaymentFlowActivity(
 "1",
 "My Payment Description",
 uriSuccess,
 uriError,
 getApplicationContext(),
 "credit",
 callback
);