Integração avançada - Checkout Pro - Mercado Pago Developers
Developers
Referência API
Suporte
Entrar

    Inicio

    Começando

    Pagamentos online

    Checkout Pro

    Checkout API

    Link de pagamento

    Assinaturas

    Marketplace

    Mobile Checkout

    Web Tokenize Checkout

    Pagamentos presenciais

    Código QR

    Mercado Pago Point

    Plugins e plataformas

    WooCommerce

    Prestashop

    Magento 2

    Shopify

    Tiendanube

    VTEX

    SDKs

    Notificações

    Webhooks

    IPN

    Gerenciamento de conta

    Requisitos para ir à produção

    Obter pagamentos

    Relatórios

    Devoluções e cancelamentos

    Gestão de estornos

    Melhora a aprovação

    Recursos

    Localização

    Changelog

    Status

NESTA PÁGINA

Sugerir alterações
Ajude-nos a melhorar a documentação
Você viu informações equivocadas, gostaria que explicássemos algo a mais ou que melhorássemos nossos manuais? Deixe suas sugestões no GitHub.

Integração avançada

Receba notificações de pagamentos

As notificações IPN (Instant Payment Notification) são a forma automática de aviso da criação de novos pagamentos e as atualizações de seus status. Por exemplo se foram aprovados, recusados ou se estão pendentes. Permitem que você administre seu estoque e mantenha seu sistema sincronizado.

Receber notificações IPN

Informações adicionais para a preferência

Melhore a aprovação dos pagamentos e a experiência dos seus compradores adicionando informações à sua preferência.

Recomendamos detalhar todas as informações possíveis sobre o item e o comprador.

Dados do comprador

  • php
  • node
  • java
  • ruby
  • csharp
          
<?php
  // ...
  $payer = new MercadoPago\Payer();
  $payer->name = "Joao";
  $payer->surname = "Silva";
  $payer->email = "user@email.com";
  $payer->date_created = "2018-06-02T12:58:41.425-04:00";
  $payer->phone = array(
    "area_code" => "11",
    "number" => "4444-4444"
  );
    
  $payer->identification = array(
    "type" => "CPF",
    "number" => "19119119100"
  );
    
  $payer->address = array(
    "street_name" => "Street",
    "street_number" => 123,
    "zip_code" => "06233200"
  );
  // ...
?>

        
          
// ...
var payer = {
  name: "Joao",
  surname: "Silva",
  email: "user@email.com",
  date_created: "2015-06-02T12:58:41.425-04:00",
  phone: {
    area_code: "11",
    number: "4444-4444"
  },
  
  identification: {
    type: "CPF",
    number: "19119119100"
  },
  
  address: {
    street_name: "Street",
    street_number: "123",
    zip_code: "06233200"
  }
}
// ...

        
          
// ...
Payer payer = new Payer();
payer.setName("Joao")
     .setSurname("Silva")
     .setEmail("user@email.com")
     .setDateCreated("2018-06-02T12:58:41.425-04:00")
     .setPhone(new Phone()
        .setAreaCode("11")
        .setPhoneNumber("4444-4444"))
      
     .setIdentification(new Identification()
        .setType("CPF")
        .setNumber("19119119100"))
      
     .setAddress(new Address()
        .setStreetName("Street")
        .setBuildingNumber("123")
        .setZipCode("06233200"));
// ...

        
          
# ...
payer = MercadoPago::Payer.new({
  name: "Joao"
  surname: "Silva"
  email: "user@email.com"
  date_created: Time.now
  phone: MercadoPago::Phone.new({
    area_code: "11",
    number: "4444-4444"
  })
  
  identification: MercadoPago::Identification.new({
    type: "CPF",
    number: "19119119100"
  })
  
  address: MercadoPago::Address.new ({
    street_name: "Street",
    street_number: "123",
    zip_code: "06233200"
  })
})
# ...

        
          
using MercadoPago;
using MercadoPago.Resources;
using MercadoPago.DataStructures.Preference;
// ...
Payer payer = new Payer()
{
    Name = "Joao",
    Surname = "Silva",
    Email = "user@email.com",
    Phone = new Phone()
    {
        AreaCode = "11",
        Number = "4444-4444"
    },
    
    Identification = new Identification()
    {
        Type = "CPF",
        Number = "19119119100"
    },
    
    Address = new Address()
    {
        StreetName = "Street",
        StreetNumber = int.Parse("123"),
        ZipCode = "06233200"
    }
};
// ...

        

Dados do item

  • php
  • node
  • java
  • ruby
  • csharp
          
<?php
  $item = new MercadoPago\Item();
  $item->id = "1234";
  $item->title = "Heavy Duty Plastic Table";
  $item->description = "Table is made of heavy duty white plastic and is 96 inches wide and 29 inches tall";
  $item->category_id = "home";
  $item->quantity = 7;
  $item->currency_id = "ARS";
  $item->unit_price = 75.56;
  // ...
?>

        
          
// ...
items: [
    {
      id: '1234',
      title: 'Lightweight Paper Table',
      description: 'Inspired by the classic foldable art of origami',
      category_id: 'home',
      quantity: 3,
      currency_id: 'ARS',
      unit_price: 55.41
    }
  ]// ...

        
          
// ...
Item item = new Item();
item.setId("1234")
    .setTitle("Lightweight Paper Table")
    .setDescription("Inspired by the classic foldable art of origami")
    .setCategoryId("home")
    .setQuantity(3)
    .setCurrencyId("ARS")
    .setUnitPrice((float) 55.41);
// ...

        
          
# ...
item = MercadoPago::Item.new({
  id: "1234",
  title: "Lightweight Paper Table",
  description: "Inspired by the classic foldable art of origami",
  category_id: "home",
  quantity: 3,
  currency_id: "ARS",
  unit_price: 55.41
})# ...

        
          
// ...
preference.Items.Add(
  new Item()
  {
    Id = "1234",
    Title = "Lightweight Paper Table",
    Description = "Inspired by the classic foldable art of origami",
    CategoryId = "home",
    Quantity = 3,
    CurrencyId = "ARS",
    UnitPrice = (float)55.41
  }
);
// ...

        
Você pode encontrar a lista de categorias para o seu item no seguinte link. Se você não conseguir encontrar a categoria do seu produto, envie o valor others como category_id.

URL de retorno

No final do processo de pagamento, você tem a opção de redirecionar o comprador para o seu site. Para isso, precisa adicionar o atributo back_urls e definir, segundo o status do pagamento, a onde quer que redirecionemos seu comprador quando ele clique no botão de voltar ao site.

Se quer que o redirecionamento seja automático para os pagamentos aprovados, precisa adicionar também o atributo auto_return com valor approved.

Nota
Tenha em conta que o atributo auto_return só funciona para o modo 'redirect' e 'mobile'. Isso não funciona quando usa o modo modal já que o comprador está sempre no site.

autoreturn

AtributoDescrição
auto_returnRedireciona automaticamente para o seu site quando o pagamento é finalizado como aprovado. O valor é approved.
back_urlssuccess. URL de retorno perante pagamento aprovado.

pending. URL de retorno perante pagamento pendente.

failure. URL de retorno perante pagamento rejeitado.

Através das back_urls serão retornados os seguintes parâmetros:

ParâmetroDescrição
payment_idID do pagamento do Mercado Pago.
statusEstado do pagamento. Ex.: approved para um pagamento aprovado ou pending para um pagamento pendente.
external_referenceValor que foi enviado no momento da criação da preferência de pagamento.
merchant_order_idID da ordem de pagamento gerada no Mercado Pago.
Alguns dos parâmetros conterão informação apenas se o pagador realizou o pagamento no Checkout Pro e não abandonou o fluxo antes de retornar ao seu site através da back_urls de failure.
  • php
  • node
  • java
  • ruby
  • csharp
          
<?php
$preference = new MercadoPago\Preference();
//...
$preference->back_urls = array(
    "success" => "https://www.seu-site/success",
    "failure" => "http://www.seu-site/failure",
    "pending" => "http://www.seu-site/pending"
);
$preference->auto_return = "approved";
// ...
?>

        
          
var preference = {}
preference = {
  // ...
  "back_urls": {
        "success": "https://www.seu-site/success",
        "failure": "http://www.seu-site/failure",
        "pending": "http://www.seu-site/pending"
    },
    "auto_return": "approved",
  // ...
}

        
          
Preference preference = new Preference();
// ...
BackUrls backUrls = new BackUrls(
                    "https://www.seu-site/success",
                    "http://www.seu-site/pending",
                    "http://www.seu-site/failure");

preference.setBackUrls(backUrls);
// ...

        
          
preference = MercadoPago::Preference.new
# ...
preference.back_urls = {
  success: "https://www.seu-site/success",
  failure: "http://www.seu-site/failure",
  pending: "http://www.seu-site/pendings"
}
preference.auto_return = "approved"
# ...

        
          
Preference preference = new Preference();
 preference.BackUrls = new BackUrls()
  {
    Success = "https://www.seu-site/success",
    Failure = "http://www.seu-site/failure",
    Pending = "http://www.seu-site/pendings"
  };
  preference.AutoReturn = AutoReturnType.approved;

        

Evite recusas de pagamentos

Um pagamento pode ser recusado porque o emissor do meio de pagamento detecta um problema ou porque não preenche os requisitos de segurança necessários.

Evite pagamentos recusados com nossas recomendações e melhore a aprovação de seus pagamentos.

Cancelamentos e estornos

Os cancelamentos são feitos quando o pagamento não foi concluído antes da data de vencimento e o vendedor decide cancelá-lo. As devoluções acontecem quando o pagamento foi feito, mas o vendedor decide estorná-lo, total ou parcialmente.

Você pode encontrar todas as informações na seção de Devoluções e cancelamentos.

Gerencie contestações

Uma contestação ou chargeback acontece quando o comprador entra em contato com a entidade emissora do cartão e desconhece o pagamento. Isso significa que o dinheiro do vendedor, por esse pagamento, será retido da sua conta do Mercado Pago até que seja solucionada.

Gerenciar contestações


Próximos passos

Outras funcionalidades

Configure seus pagamentos e adapte o Checkout Pro ao seu negócio.

Customizações

Adapte o estilo da sua marca na experiência de compra.

Essas informações foram úteis?

Mercado Pago ofrece servicios de pago y no está autorizado por el Banco Central a operar como entidad financiera. Los fondos acreditados en cuentas de pago no constituyen depósitos en una entidad financiera ni están garantizados conforme legislación aplicable a depósitos en entidades financieras. Copyright © 2021 MercadoLibre S.R.L.

Termos e condiçõesComo cuidamos da sua privacidade
Partners Mercado Pago

Al navegar en este sitio aceptás las cookies que utilizamos para mejorar tu experiencia. Más información.