Empezar gratis →
⚠️ Error conocido de Mercado Pago

Notificación Duplicada Mercado Pago: Solución Técnica

Errores en webhooks, IPN y notificaciones de Mercado Pago. Identificamos y resolvemos el problema de duplicación de notificaciones para asegurar la correcta sincronización de…

✅ Solución paso a paso

  1. Verificar la configuración del webhook: Asegúrate de que el URL del webhook en Mercado Pago es correcto y accesible.
  2. Analizar los logs del servidor: Revisa los logs de tu servidor para identificar patrones de errores HTTP (500, 503) o retrasos en el procesamiento de la notificación.
  3. Configurar el retry automático: Implementa una lógica de retry automático con un tiempo de espera adecuado (ej. 30-60 segundos) para reintentar la recepción de la notificación en caso de fallo.
  4. Validar el idempotencia del webhook: Asegúrate de que tu webhook implementa la idempotencia para evitar el procesamiento duplicado de la misma transacción.

¿Por qué ocurre este error?

El error de notificación duplicada en Mercado Pago surge cuando el sistema intenta procesar la misma transacción varias veces. Esto puede ocurrir debido a retries fallidos (HTTP 500 o 503) en la recepción del webhook, o a un procesamiento asíncrono incorrecto de la notificación.

Código de ejemplo

import crypto from 'node:crypto';
import express from 'express';
const app = express();

app.post('/webhook/mercadopago', express.json(), (req, res) => {
  const sig = req.headers['x-signature'] || '';
  const ts = sig.match(/ts=(\d+)/)?.[1];
  const v1 = sig.match(/v1=([a-f0-9]+)/)?.[1];
  const reqId = req.headers['x-request-id'];
  const data = `id:${req.body.data.id};request-id:${reqId};ts:${ts};`;
  const expected = crypto
    .createHmac('sha256', process.env.MP_WEBHOOK_SECRET)
    .update(data)
    .digest('hex');

  if (expected !== v1) return res.sendStatus(401);
  // Idempotencia: deduplicar por (data.id, action)
  res.sendStatus(200);
});

¿Cansado de manejar estos errores manualmente?

Comorando intercepta cada evento de Mercado Pago, ejecuta reintentos inteligentes y te avisa cuando hay un problema — sin que escribas una sola línea de código extra.

Automatizá tus pagos gratis →

Sin tarjeta de crédito · 250 eventos gratis · En vivo en 5 minutos