Solución al error 'Ipn sin Payload' en Mercado Pago, causado por problemas de conectividad o datos incompletos en la notificación.
Este error indica que Mercado Pago envía una notificación Ipn (Instant Payment Notification) pero no contiene la carga útil (payload) necesaria para procesar la transacción. Esto puede deberse a errores de red, timeouts o respuestas HTTP 400 (Bad Request) de tu servidor. El sistema de Mercado Pago intenta reintentar la notificación, pero si el problema persiste, se genera este error.
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);
});
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