Inicio
Documentación
Recursos
Partners
Comunidad

Recursos

Revisa las actualizaciones de nuestras soluciones y operatividad del sistema o pide soporte técnico.

Partners

Conoce nuestro programa para agencias o desarrolladores que ofrecen servicios de integración y vendedores que quieren contratarlos.

Comunidad

Recibe las últimas novedades, pide ayuda a otros integradores y comparte tus conocimientos.

Configurar URLs de retorno - Etapas de integración - Mercado Pago Developers

Configurar URLs de retorno

La URL de retorno es la dirección a la que se redirige al usuario después de completar el pago, ya sea exitoso, fallido o pendiente. Esta URL debe ser una página web que controles, como un servidor con dominio nombrado (DNS).

Este proceso se configura a través del atributo back_urls en el backend, en la preferencia de pago asociada a tu integración. Con este atributo podrás definir que el comprador sea redirigido al sitio web que configuraste, ya sea automáticamente o a través del botón "Volver al sitio", según el estado del pago.

Puedes configurar hasta tres URL de retorno diferentes, que corresponderán a los escenarios de pago pendiente, éxito o error.

Nota
En integraciones mobile, recomendamos que las URLs de retorno sean deep links. Para conocer más, ve a la documentación Integración para aplicaciones móviles.

Definir URL de retorno

En tu código backend, deberás configurar la URL a la que quieres que Mercado Pago redirija al usuario una vez que haya completado el proceso de pago.

Nota
Si lo prefieres, también es posible configurar las URLs de retorno a través del envío POST a la API Crear preferencia con el atributo back_urls informando las URLs a las que se debe dirigir al comprador al finalizar el pago.

A continuación, te compartimos ejemplos de cómo incluir el atributo back_urls según el lenguaje de programación que estés utilizando, además del detalle de cada uno de los posibles parámetros.

          
<?php
$preference = new MercadoPago\Preference();
//...
$preference->back_urls = array(
    "success" => "https://www.tu-sitio/success",
    "failure" => "http://www.tu-sitio/failure",
    "pending" => "http://www.tu-sitio/pending"
);
$preference->auto_return = "approved";
// ...
?>

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

        
          
PreferenceBackUrlsRequest backUrls =
// ...
   PreferenceBackUrlsRequest.builder()
       .success("https://www.seu-site/success")
       .pending("https://www.seu-site/pending")
       .failure("https://www.seu-site/failure")
       .build();

PreferenceRequest request = PreferenceRequest.builder().backUrls(backUrls).build();
// ...

        
          
# ...
preference_data = {
  # ...
  back_urls = {
    success: 'https://www.tu-sitio/success',
    failure: 'https://www.tu-sitio/failure',
    pending: 'https://www.tu-sitio/pendings'
  },
  auto_return: 'approved'
  # ...
}
# ...

        
          
var request = new PreferenceRequest
{
    // ...
    BackUrls = new PreferenceBackUrlsRequest
    {
        Success = "https://www.tu-sitio/success",
        Failure = "http://www.tu-sitio/failure",
        Pending = "http://www.tu-sitio/pendings",
    },
    AutoReturn = "approved",
};

        
          
preference_data = {
    "back_urls": {
        "success": "https://www.tu-sitio/success",
        "failure": "https://www.tu-sitio/failure",
        "pending": "https://www.tu-sitio/pendings"
    },
    "auto_return": "approved"
}

        
AtributoDescripción
auto_returnLos compradores son redirigidos automáticamente al site cuando se aprueba el pago. El valor predeterminado es approved. El tiempo de redireccionamiento será de hasta 40 segundos y no podrá ser personalizado. Por defecto, también se mostrará un botón de "Volver al sitio".
back_urlsURL de retorno al sitio. Los escenarios posibles son:
success: URL de retorno cuando se aprueba el pago.
pending: URL de retorno cuando el pago está pendiente.
failure: URL de retorno cuando se rechaza el pago.

Respuesta de las URLs de retorno

Las back_urls devolverán, a través de un llamado GET, algunos parámetros útiles. A continuación, te compartimos un ejemplo de cómo se verá una respuesta y el detalle de los parámetros que podrás encontrar en ella.

curl

GET /test?collection_id=106400160592&collection_status=rejected&payment_id=106400160592&status=rejected&external_reference=qweqweqwe&payment_type=credit_card&merchant_order_id=29900492508&preference_id=724484980-ecb2c41d-ee0e-4cf4-9950-8ef2f07d3d82&site_id=MLC&processing_mode=aggregator&merchant_account_id=null HTTP/1.1
Host: yourwebsite.com
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate, br, zstd
Accept-Language: es-419,es;q=0.9
Connection: keep-alive
Referer: https://www.mercadopago.com/checkout/v1/payment/redirect/505f641c-cf04-4407-a7ad-8ca471419ee5/congrats/rejected/?preference-id=724484980-ecb2c41d-ee0e-4cf4-9950-8ef2f07d3d82&router-request-id=0edb64e3-d853-447a-bb95-4f810cbed7f7&p=f2e3a023dd16ac953e65c4ace82bb3ab
Sec-Ch-Ua: "Chromium";v="134", "Not:A-Brand";v="24", "Google Chrome";v="134"
Sec-Ch-Ua-Mobile: ?0
Sec-Ch-Ua-Platform: "macOS"
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: cross-site
Sec-Fetch-User: ?1
Upgrade-Insecure-Requests: 1
ParámetroDescripción
payment_idID (identificador) del pago de Mercado Pago.
statusStatus del pago. Por ejemplo: approved para un pago aprobado o pending para un pago pendiente.
external_referenceReferencia que puedes sincronizar con tu sistema de pagos.
merchant_order_idID (identificador) de la orden de pago generada en Mercado Pago.

Respuesta en medios de pago offline

Los medios de pago offline son aquellos en donde el usuario comprador elige un medio de pago que requiere que utilice un punto de pago físico para completar el proceso de compra. En este flujo de pago, Mercado Pago generará un comprobante que el usuario necesita para realizar el pago en el establecimiento correspondiente, y redireccionará al usuario a la URL que especificaste en el atributo back_urls como pending.

En este punto, el pago está en estado pendiente porque el usuario todavía tiene que ir a un establecimiento físico y pagar.

Para brindarle mayor información al comprador, recomendamos que, para los estados de pago pending, redirecciones al comprador a tu sitio web y le compartas información clara sobre cómo completar el pago.

Una vez que el usuario va al establecimiento correspondiente y realiza el pago en efectivo con el comprobante generado, Mercado pago es notificado y el pago cambiará de estado. Recomendamos que configures las notificaciones de pago para que tu servidor pueda procesar esta notificación y actualizar el estado del pedido en tu base de datos.

Elegir el tipo de integración

Una vez que hayas terminado de realizar las configuraciones en tu backend y hayas obtenido tu ID de la preferencia, deberás avanzar a las configuraciones del frontend. Para eso, es necesario que elijas el tipo de integración que mejor se adapte a tus necesidades, ya sea para integrar un sitio web o para una aplicación móvil.

Selecciona el tipo de integración que quieres hacer y sigue los pasos detallados para completar la integración de Checkout Pro.

Continuar integración para sitios web
Ofrece cobros con redirección a Mercado Pago en tu sitio web o tienda online.
Continuar integración para aplicaciones móviles
Ofrece cobros con redirección Mercado Pago en tu aplicación para dispositivos móviles.