Empezar gratis →
⚠️ Error conocido de Mercado Pago

Webhook Duplicado Mercado Pago - Solución

Identifica y corrige webhooks duplicados en Mercado Pago para evitar errores y asegurar el procesamiento de pagos. ¡Revisa tu configuración!

✅ Solución paso a paso

  1. Verifica la configuración de retries en tu aplicación. Reduce el número de intentos y ajusta los tiempos de espera.
  2. Implementa un ID único para cada webhook. Esto permite identificar y descartar duplicados antes de procesar la notificación.
  3. Asegúrate de que tu aplicación maneje correctamente los códigos de error HTTP (400, 500) recibidos en las notificaciones.
  4. Revisa los logs de tu aplicación y los logs de Mercado Pago para identificar patrones de duplicación y diagnosticar la causa raíz.

¿Por qué ocurre este error?

El error 'Webhook duplicado' en Mercado Pago surge cuando el sistema intenta procesar la misma notificación varias veces. Esto puede ocurrir debido a retries fallidos (HTTP 500) o a la falta de un mecanismo de deduplicación robusto en tu aplicació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