Creación - OAuth - Mercado Pago Developers
¿Qué documentación quieres buscar?

¿No sabes cómo empezar la integración? 

Accede a los primeros pasos

Creación

El flujo de authorization_code se caracteriza por la intervención del vendedor para autorizar explícitamente el acceso de la aplicación a sus datos y por el uso de un código otorgado por el servidor de autenticación para que la aplicación pueda obtener un Access token y un refresh token asociado.

Debido a que se trata de un flujo basado en la redirección, debes permitir la interacción con el navegador del vendedor y recibir el request a través de la redirección del servidor de autorización. En este flujo, la aplicación solicita al vendedor el consentimiento expreso para acceder a los datos mediante la apertura de una página web en la que se explicitan los ámbitos a los que se solicita el acceso.

Importante
Recuerda que utilizarás información sensible de tus vendedores. Asegúrate de guardarla de forma segura. No la utilices en la URL de autenticación y gestiona todo el proceso únicamente desde tu servidor.

Una vez permitido el acceso, el servidor genera un código de acceso que llega a la aplicación a través de una redirección. En este paso, la aplicación solicita acceso al servidor de autenticación enviando el código obtenido y los datos de la aplicación. Una vez hecho esto, el servidor otorga el Access token y el refresh token a la aplicación.

Para generar el código de autorización, es preciso cumplir con los requisitos a continuación.

RequisitosDescripciónEspecificaciones
Cuentas de vendedor de Mercado PagoSe requerirán cuentas de vendedor de Mercado Pago. Uno para ti y otro para el vendedor.Cuenta de vendedor en Mercado Pago. Si no la tienes, haz clic aquí para crear.
AplicaciónLas aplicaciones son las distintas integraciones contenidas en una o varias tiendas. Puedes crear una aplicación para cada solución que implementes, con el fin de tener todo organizado y mantener un control que facilite la gestión.Para usar OAuth necesitarás tener una aplicación creada. Consulta la documentación del Panel del desarrollador para obtener información sobre cómo crear una aplicación.
CredencialesLas credenciales son contraseñas únicas con las que identificamos una integración en tu cuenta y sirven para capturar pagos de forma segura en tiendas virtuales y otras aplicaciones.Para realizar pruebas y garantizar que la integración funcione, se requerirán credenciales de prueba. Después de este paso, necesitarás credenciales de producción para recibir pagos reales.
Redirect URLDirección a la que deseas reenviar a los vendedores después de haberlos vinculado correctamente.Esta es una dirección en tu servidor donde se recibirán los Access tokens.
URL de autenticaciónDirección a la que desea enviar a los vendedores para autorizar el acceso a datos privados.Esta es una dirección en el servidor de Mercado Pago donde se otorga expresamente el permiso para acceder a los datos privados.

Configurar PKCE

El PKCE (Proof Key for Code Exchange) es un protocolo de seguridad utilizado con OAuth para proteger contra ataques de código malicioso durante el intercambio de códigos de autorización por Access Token. Añade una capa adicional de seguridad generando un verifier que se transforma en un challenge para asegurar que, incluso si el código de autorización es interceptado, no sea útil sin el verifier original.

En Mercado Pago, puedes habilitar la verificación por PKCE desde la pantalla de Detalles de aplicación, lo que te permitirá enviar un código secreto adicional para ser utilizado durante el proceso de autorización.

Importante
Con el campo PKCE habilitado, Mercado Pago comenzará a requerir los campos code_challenge y code_method como obligatorios en las solicitudes de OAuth.

Sigue los pasos a continuación para generar los campos obligatorios y configurar la verificación por PKCE.

  1. Los campos pueden generarse de varias formas, ya sea con desarrollo propio o mediante el uso de SDKs. Sigue los pasos necesarios descritos en esta documentación oficial para generar los campos que serán requeridos.
  2. Después de generar y cifrar los campos, será necesario enviar los códigos respectivos a Mercado Pago a través de query_params utilizando la URL de autenticación a continuación.

URL

https://auth.mercadopago.com/authorization?response_type=code&client_id=$APP_ID`redirect_uri=$YOUR_URL&code_challenge=$CODE_CHALLENGE&code_challenge_method=$CODE_METHOD
  • Redirect_uri: URL proporcionada en el campo "Redirect URL" de tu aplicación.
  • Code_verifier: código que debe generarse, respetando los requisitos para su funcionamiento, que son: una secuencia aleatoria de caracteres con una longitud entre 43 y 128 caracteres, que incluya letras mayúsculas, minúsculas, números y algunos caracteres especiales. Por ejemplo: 47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU.
  • Code_challenge: a continuación, es necesario crear un code_challenge a partir del code_verifier utilizando una de las siguientes transformaciones:
    • Si es posible utilizar S256, será necesario seleccionar esta opción transformando el code_verifier en un code_challenge mediante una codificación BASE64URL después de aplicar la función "SHA256".
    • Si no es posible utilizar S256 por alguna razón técnica y el servidor admite el método Plain, es posible definir el code_challenge igual al code_verifier.
  • Code_challenge_method: es el método utilizado para generar el code_challenge, según se describe en el ítem anterior. Este campo puede ser, por ejemplo, S256 o Plain, dependiendo de la codificación seleccionada en la etapa de code_challenge.

  1. Después de enviar correctamente los códigos a Mercado Pago, obtendrás la autorización necesaria obtener el Access token y realizar la verificación por PKCE en las transacciones realizadas con OAuth.

Obtener Access token

Access token es el código utilizado en diferentes solicitudes de origen público para acceder a un recurso protegido que representa una autorización otorgada por un vendedor a una aplicación cliente que contiene scopes y un tiempo de vigencia limitado para dicho acceso. Sigue los pasos a continuación para obtenerlo.

  1. Edita tu aplicación para que contenga tu Redirect URL. Consulta Editar aplicación.

  2. Envía la URL de autenticación con los siguientes campos al vendedor con cuya cuenta deseas vincular la tuya:

    • client_id: edita tu aplicación para que contenga tu Redirect URL. Consulta ID de aplicación.
    • state: reemplaza el valor "RANDOM_ID" con un identificador que sea único para cada intento y que no incluya información confidencial para que puedas identificar de quién es el código recibido.
    • redirect_uri: agrega la URL informada en el campo Redirect URL de tu aplicación.

  3. Espera a que el vendedor acceda a la URL y permita el acceso. Al acceder a la URL, el vendedor será dirigido a Mercado Pago y deberá iniciar sesión en su cuenta para realizar la autorización.

  4. Verifica la Redirect URL de tu servidor para ver el código de autorización devuelto en el parámetro de code.

  5. Envía tus credenciales y código de autorización al endpoint /oauth/token para recibir el Access token como respuesta.

Importante
Se recomienda realizar este procedimiento de una única vez junto con el usuario, ya que el código recibido por la Redirect URL después de la autorización tiene una validez de 10 minutos y el Access token recibido a través del endpoint tiene una validez de 180 días.

Para generar credenciales de sandbox para pruebas, envíe el parámetro test_token con el valor true.