Inicio
Documentação
Recursos
Parcerias
Comunidade

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.

Como melhorar a aprovação dos pagamentos - Mercado Pago Developers

Busca inteligente powered by OpenAI 

RecomendaçÔes para melhorar sua aprovação

Para evitar que um pagamento legítimo seja recusado por não atender as validaçÔes de segurança, é necessårio incluir o måximo de informaçÔes possíveis na hora de realizar a operação e também que seu checkout esteja com uma interface otimizada.

VocĂȘ pode ver em detalhes nossas recomendaçÔes para melhorar sua aprovação abaixo.

Coleta e envĂ­o de Device ID

O Device ID Ă© uma informação importante para garantir uma melhor segurança e, consequentemente, uma melhor taxa de aprovação de pagamentos. Ele representa um identificador Ășnico para cada dispositivo do comprador no momento da compra. Caso um comprador frequente faça uma compra a partir de um dispositivo diferente do habitual, isso pode representar um comportamento atĂ­pico. Embora possa nĂŁo ser necessariamente fraude, o ID do dispositivo nos ajuda a refinar a avaliação e nos impede de rejeitar pagamentos legĂ­timos.

Atenção
Caso jå esteja utilizando o SDK JS do Mercado Pago não serå necessårio adicionar o código de segurança, pois o Device ID serå obtido por padrão.

VocĂȘ pode adicionar o cĂłdigo de segurança do Mercado Pago na sua pĂĄgina substituindo o valor de view pelo nome da seção na qual deseja adicionĂĄ-lo. O mais importante Ă© adicionĂĄ-lo na pĂĄgina do checkout, porĂ©m adicionar em outras pĂĄginas, como home, search ou item, tambĂ©m ajuda a enriquecer as informaçÔes coletadas.

html

<script src="https://www.mercadopago.com/v2/security.js" view="home"></script>
Importante
Caso nĂŁo tenha um valor disponĂ­vel para a seção, vocĂȘ pode deixĂĄ-la vazia.

Utilizar informaçÔes do Device ID na web

Para usar o Device ID na web e evitar possĂ­veis compras fraudulentas, Ă© preciso seguir os passos abaixo:

1. Adicione o script de segurança do Mercado Pago

Para implementar a geração do device ID em seu site, adicione o seguinte código na sua pågina de Checkout:

html

<script src="https://www.mercadopago.com/v2/security.js" view="checkout"></script>

2.Obtendo o Device ID

Uma vez que vocĂȘ tenha adicionado o cĂłdigo de segurança do Mercado Pago em seu site, uma variĂĄvel global de javascript Ă© criada automaticamente com o nome MP_DEVICE_SESSION_ID, cujo valor Ă© o Device ID.

Se vocĂȘ preferir atribuĂ­-lo a outra variĂĄvel, indique o nome adicionando o atributo output ao script de segurança, como no exemplo a seguir:

html

  <script src="https://www.mercadopago.com/v2/security.js" view="checkout" output="deviceId"></script>

VocĂȘ tambĂ©m pode criar sua prĂłpria variĂĄvel. Para isso, adicione uma tag HTML no seu site com o identificador id="deviceID", como no exemplo abaixo.

html

  <input type="hidden" id="deviceId">

3. Utilizando o Device ID

Uma vez que vocĂȘ tenha o valor de Device ID, Ă© preciso que vocĂȘ o envie aos nossos servidores ao criar um pagamento. Para isso, basta acrescentar o seguinte cabeçalho (header) Ă  requisição:

http

X-meli-session-id: device_id
Atenção
Lembre-se de substituir device_id pelo nome da variåvel que contém o seu valor de Device ID.

Utilizar Device ID em aplicaçÔes móveis

Se vocĂȘ possui uma aplicação mĂłvel nativa, pode capturar a informação do dispositivo com nosso SDK e enviar no momento de criar o token. Siga estas etapas:

1. Adicione a dependĂȘncia

Adicionar o seguinte cĂłdigo no arquivo Podfile.

          
use_frameworks!
pod ‘MercadoPagoDevicesSDK’

        

VocĂȘ precisa adicionar o repositĂłrio e a dependĂȘncia no arquivo build.gradle.

          
repositories {
    maven {
        url "https://artifacts.mercadolibre.com/repository/android-releases"
    }
}
dependencies {
   implementation 'com.mercadolibre.android.device:sdk:4.0.1'
}

        

2. Inicialize o mĂłdulo

Recomendamos realizar a inicialização no envento didFinishLaunchingWithOptions do AppDelegate.

          
import MercadoPagoDevicesSDK
...
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        ...        
        MercadoPagoDevicesSDK.shared.execute()
        ...
}

        

Recomendamos realizar a inicialização no envento didFinishLaunchingWithOptions do AppDelegate.

          
@import ‘MercadoPagoDevicesSDK’;
...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    ...
    [[MercadoPagoDevicesSDK shared] execute];
    ...
}

        

Recomendamos realizar a inicialização na classe MainApplication.

          
import com.mercadolibre.android.device.sdk.DeviceSDK;
DeviceSDK.getInstance().execute(this);

        

3. Capture a informação

Execute alguma das funçÔes abaixo para obter a informação no formato que precisar.

          
MercadoPagoDevicesSDK.shared.getInfo() // Devolve um objeto Device que Ă© CodificĂĄvel
MercadoPagoDevicesSDK.shared.getInfoAsJson() // Devolve um objeto em JSON
MercadoPagoDevicesSDK.shared.getInfoAsJsonString() // Devolve o JSON em formato de String
MercadoPagoDevicesSDK.shared.getInfoAsDictionary() // Devolve um objeto Dictionary<String,Any>

        
          
[[[MercadoPagoDevicesSDK] shared] getInfoAsJson] // Devolve um objeto em JSON
[[[MercadoPagoDevicesSDK] shared] getInfoAsJsonString] // Devolve o JSON em formato de String
[[[MercadoPagoDevicesSDK] shared] getInfoAsDictionary] // Deolve um objeto Dictionary<String,Any>

        
          
Device device = DeviceSDK.getInstance().getInfo() // Devolve um objeto Device, que Ă© serializĂĄvel
Map deviceMap = DeviceSDK.getInstance().getInfoAsMap()  // Devolve um Map<String, Object>
String jsonString = DeviceSDK.getInstance().getInfoAsJsonString() // Devolve uma String no formato JSON

        

4. Envie a informação

Por Ășltimo, envie a informação obtida no campo device ao criar o card_token.

plain

{
	...,
	 "device":{
	  "fingerprint":{
	     "os":"iOS",
	     "system_version":"8.3",
	     "ram":18446744071562067968,
	     "disk_space":498876809216,
	     "model":"MacBookPro9,2",
	     "free_disk_space":328918237184,
	     "vendor_ids":[
	        {
	           "name":"vendor_id",
	           "value":"C2508642-79CF-44E4-A205-284A4F4DE04C"
	        },
	        {
	           "name":"uuid",
	           "value":"AB28738B-8DC2-4EC2-B514-3ACF330482B6"
	        }
	     ],
	     "vendor_specific_attributes":{
	        "feature_flash":false,
	        "can_make_phone_calls":false,
	        "can_send_sms":false,
	        "video_camera_available":true,
	        "cpu_count":4,
	        "simulator":true,
	        "device_languaje":"en",
	        "device_idiom":"Phone",
	        "platform":"x86_64",
	        "device_name":"iPhone Simulator",
	        "device_family":4,
	        "retina_display_capable":true,
	        "feature_camera":false,
	        "device_model":"iPhone Simulator",
	        "feature_front_camera":false
	     },
	     "resolution":"375x667"
	  }
}

Detalhar todas as informaçÔes sobre o pagamento

Para otimizar a validação de segurança dos pagamentos e melhorar as aprovaçÔes, é importante fazer o envio do måximo de dados sobre o comprador e o produto.

Se atente a todos os atributos disponíveis ao criar um pagamento usando o método Criar pagamento. Preste atenção especialmente aos atributos em additional_info, como:

  • Dados do comprador,
  • Dados do produto,
  • Dados do envio.

Existem tambĂ©m campos extras que podem ser enviados de acordo com o ramo de atividade. VocĂȘ pode encontrar mais detalhes sobre cada setor e os dados do comprador e do shipping que recomendamos incluir em cada um deles aqui.

Melhorar a experiĂȘncia do usuĂĄrio

Muitas vezes o comprador pode errar na hora de preencher seus dados no checkout. Por isso, vale a pena revisar cada passo, interaçÔes e atĂ© design, para checar se tudo estĂĄ claro como deveria. Caso opte por criar seu front do zero, vocĂȘ encontra dicas de como fazĂȘ-lo de forma eficiente aqui. Se um pagamento for negado, Ă© importante tambĂ©m que vocĂȘ explique aos seus clientes o motivo da recusa e o que eles poderĂŁo fazer para resolver o problema. Assim, seus clientes terĂŁo todas as informaçÔes necessĂĄrias para pagar sem problemas. VocĂȘ encontra recomendaçÔes de mensagens para os principais motivos de recusa aqui.

Se, em vez disso, vocĂȘ quiser garantir uma interface otimizada, pode utilizar os componentes visuais de Checkout Bricks e tambĂ©m aproveitar um componente visual jĂĄ pronto com as melhores mensagens com o Status Screen Brick.

Importante
Recomendamos verificar os resultados da medição da qualidade da sua integração antes de entrar em produção, seja ela realizada de maneira manual ou automåtica. Isso permitirå validar o cumprimento dos padrÔes de qualidade e segurança do Mercado Pago, além de fornecer açÔes para melhorar sua taxa de aprovação de pagamentos.