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.
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
// ...
$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
$item = new MercadoPago\Item();
$item->id = "1234";
$item->title = "Heavy Duty Plastic Table";
$item->quantity = 7;
$item->currency_id = "CLP";
$item->unit_price = 75.56;
// ...
?>
// ...
items: [
{
id: '1234',
title: 'Lightweight Paper Table',
quantity: 3,
currency_id: 'CLP',
unit_price: 55.41
}
]// ...
// ...
Item item = new Item();
item.setId("1234")
.setTitle("Lightweight Paper Table")
.setQuantity(3)
.setCurrencyId("CLP")
.setUnitPrice((float) 55.41);
// ...
# ...
item = MercadoPago::Item.new({
id: "1234",
title: "Lightweight Paper Table",
quantity: 3,
currency_id: "CLP",
unit_price: 55.41
})# ...
// ...
preference.Items.Add(
new Item()
{
Id = "1234",
Title = "Lightweight Paper Table",
Quantity = 3,
CurrencyId = "CLP",
UnitPrice = (float)55.41
}
);
// ...
URL de retorno
No final do processo de pagamento, você tem a opção de redirecionar o comprador para o seu site.
Para isso, back_urls
são usados. Esse redirecionamento pode ser automático através do atributo auto_return
ou de um link que permite retornar ao site do vendedor.
Atributo | Descrição |
---|---|
auto_return |
Redireciona automaticamente para o seu site quando o pagamento é finalizado como aprovado. Os valores possíveis são approved e all . |
back_url |
success. URL de retorno perante pagamento aprovado. pending. URL de retorno perante pagamento pendente. failure. URL de retorno perante pagamento rejeitado. |
<?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;
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.