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

    Marketplace

    Mobile Checkout

    Web Tokenize Checkout

    Pagamentos presenciais

    Código QR

    Plugins e plataformas

    WooCommerce

    Prestashop

    Magento 2

    Shopify

    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 = "UYU";
  $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: 'UYU',
      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("UYU")
    .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: "UYU",
  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 = "UYU",
    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?

Copyright © 1999-2021 DeRemate.com de Uruguay S.R.L.

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

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