Cómo automatizar tus ventas por WhatsApp API y Mercado Pago con Comercio Agéntico e IA: compras recurrentes, reposición de stock, conciliación automática, despacho y turnos 24/7
Cualquier empresa, distribuidora, tienda mayorista/minorista o profesional de servicios puede hoy vender las 24 horas sin depender de responder mensajes a mano ni pedir comprobantes de pago. En esta guía vas a ver cómo funciona la arquitectura que usamos en producción en MESI para unir la API Oficial de WhatsApp Business, el Comercio Agéntico (para que los usuarios que consultan en ChatGPT, Perplexity, Claude o Gemini te compren en 1 clic), los perfiles de recompra periódica y la conciliación automática con Mercado Pago que dispara la orden de preparación de pedido, el despacho o la reserva de un turno.
¿Querés este circuito de WhatsApp + Mercado Pago + Stock/Turnos funcionando en tu negocio sin programarlo desde cero?
Con MIA (Desarrollo con Inteligencia Artificial de MESI), le contás en español qué productos o servicios comercializás y el equipo de especialistas de MESI junto con agentes de IA arma tu plataforma completa y la deja corriendo 24/7 en tu propia Cloud VPS dedicada:
1. Vendedor IA 24/7 + Perfiles
Reconoce a cada cliente por su número, recuerda su último pedido, su lista de precios y le escribe periódicamente para consultar si necesita reponer stock.
2. Conciliación sin comprobantes
Genera el link de pago de Mercado Pago en el chat y, apenas impacta el cobro en el webhook, aprueba la orden, emite Factura ARCA y avisa al cliente aunque no haya mandado captura.
3. Preparación, Despacho o Citas
Envía automáticamente la orden de preparación al depósito (con aviso de despacho y seguimiento al comprador) o confirma turnos y citas en tu calendario.
1 Del «Respondé cuando puedas» al Comercio Agéntico 24/7 por WhatsApp y Web
En la mayoría de las PyMEs y comercios, el embudo de ventas se rompe en tres cuellos de botella: demorar en contestar fuera de horario, perder tiempo pasando precios y esperando capturas de transferencias, y olvidarse de contactar a los clientes habituales cuando se les termina la mercadería.
Al combinar una Cloud VPS (o MIA) con la API Oficial de WhatsApp Business y endpoints de Comercio Agéntico, tu negocio pasa a operar con un circuito cerrado y autónomo en dos frentes simultáneos:
- Frente 1 — Descubrimiento en Chats de IA (Comercio Agéntico Externo): Cada vez más compradores le preguntan a ChatGPT, Perplexity, Claude o Gemini qué proveedor elegir o dónde comprar un insumo. Al publicar en tu web un archivo
/llms.txt, precios en vivo por API JSON y enlaces de Compra en 1 Clic (/comprar?producto=...) y de WhatsApp directo con contexto, la IA del comprador le entrega el link listo para cerrar la compra en tu WhatsApp o en tu Checkout. - Frente 2 — Cierre, Cobro, Conciliación y Postventa en tu WhatsApp (Agente Interno 24/7): Cuando el cliente entra a tu WhatsApp (ya sea desde un chat de IA, desde Instagram/Google Ads o porque ya te compra todos los meses), tu agente consulta el stock real en tu base MySQL, aplica su lista de precios personalizada, le genera en 1 segundo el link oficial de Mercado Pago (
init_point) y, apenas paga, concilia y dispara el armado del pedido sin que nadie tenga que mirar comprobantes.
| Etapa del Circuito Comercial | Atención Manual por WhatsApp | Comercio Agéntico + WhatsApp API + Mercado Pago (MIA / VPS) |
|---|---|---|
| Consulta de precios y stock (23:30 hs o domingo) | Queda sin leer hasta el lunes; el cliente le compra a otro. | El agente consulta MySQL en vivo, cotiza al instante y ofrece pagar en el acto. |
| Cliente recurrente que pide todos los meses | Tiene que volver a explicar quién es, qué pide, su CUIT y su dirección. | El bot lo reconoce por su teléfono: «¿Repetimos tu pedido habitual o sumamos algo?». |
| Seguimiento cuando al cliente se le acaba el stock | Depende de que el vendedor se acuerde de escribirle uno por uno. | Un proceso automático detecta su ciclo (ej. 15 días) y le escribe proactivamente por WhatsApp. |
| Cobro y verificación del pago | El cliente manda captura borrosa; administración tarda horas en conciliar. | El Webhook de Mercado Pago concilia en ~2 seg aunque el cliente no avise en el chat. |
| Preparación de pedido, despacho o turno | Hay que copiar los datos a mano a una planilla o avisar al depósito. | Se genera sola la Orden de Preparación (Picking), la Factura ARCA y el aviso de despacho. |
2 Perfiles en WhatsApp para Compras Recurrentes y Contactos Periódicos de Reposición de Stock
El activo más rentable de cualquier distribuidora, mayorista, proveeduría, gastronomía, marca de cosmética, insumos médicos, alimento para mascotas o empresa de servicios es la recompra. Cuando tu bot de WhatsApp está conectado a tu base de datos en tu Cloud VPS, el número de teléfono del cliente (54911...) actúa como su llave única de perfil (CRM conversacional).
¿Qué guarda el perfil de cada cliente en tu base de datos?
- Identidad fiscal y logística: Nombre o Razón Social, DNI/CUIT, condición frente al IVA (para emitir Factura A o B automáticamente), dirección de entrega habitual, transporte o expreso preferido y franja horaria de recepción.
- Canasta habitual y lista de precios: Qué códigos de producto compra siempre, en qué cantidades, qué lista de precios le corresponde (Minorista, Mayorista, Distribuidor) y cuál fue su última compra.
- Cadencia de reposición (
ciclo_recompra_dias): Cada cuántos días vuelve a necesitar mercadería o servicio (por ejemplo, cada 7 días para una cafetería, cada 21 días para insumos de estética o cada 30 días para abonos y mantenimiento).
Cómo se ve la experiencia real de Recompra y Reposición Proactiva en WhatsApp
¡Hola Martín! 👋 Te escribo porque hace 14 días te entregamos tu último pedido para Cafetería Central y calculamos que podés estar necesitando reponer stock.
📦 Tu pedido habitual:
• 6x Café en Grano Selección 1 kg
• 4x Cajas de Vasos Térmicos 8 oz (x250 u.)
¿Querés que te prepare este mismo pedido para enviar a Av. Santa Fe 2450, o querés agregar o cambiar algún producto?
¡Excelente Martín! Ya verifiqué el stock y actualicé tu orden #ORD-4092 (Lista Mayorista):
• 6x Café en Grano Selección 1 kg
• 4x Cajas Vasos Térmicos 8 oz
• 2x Cajas Azúcar en Sobres (x1000 u.)
• 1x Jarra Emulsionadora Acero 600 ml
💰 Total con IVA incl. (Factura A — CUIT 30-71234567-9): $248.500,00 ARS
💳 Tocá acá para abonar en 1 clic con Mercado Pago:
https://www.mercadopago.com.ar/checkout/v1/redirect?pref_id=4092...
⚡ Apenas se acredite el pago, nuestro sistema pasa automáticamente tu pedido a preparación en el depósito y te avisa por acá cuando salga el reparto.
3 Conciliación Automática con Mercado Pago, Orden de Preparación (Picking) y Despacho
¿Qué ocurre cuando el cliente toca el link de Mercado Pago desde su celular, paga y guarda el teléfono sin avisar en el chat? En un esquema bien diseñado, absolutamente todo se ejecuta solo en menos de 3 segundos gracias al notification_url (Webhook IPN/Webhooks de Mercado Pago):
- Creación de la Preferencia con Referencia Externa: Al generar el link de pago, el agente asigna
external_reference = "ORD-4092"ynotification_url = "https://tudominio.com.ar/api/webhook-mp.php?order=ORD-4092". - Verificación Criptográfica y Conciliación Automática: Cuando el cliente paga, Mercado Pago envía un
POSTa tu servidor. Tu backend consulta el pago contrahttps://api.mercadopago.com/v1/payments/{id}, verifica questatus === 'approved'y que el monto abonado coincida con el total de la ordenORD-4092(con bloqueo idempotente para no duplicar si Mercado Pago reintenta el webhook). - Descuento de Stock y Emisión de Factura Electrónica ARCA (ex AFIP): En la misma transacción SQL se descuenta el stock comprometido y, si tenés integrado el módulo WSFEv1 (ver nuestra guía de Factura Electrónica ARCA/AFIP), se solicita el CAE y se genera el PDF con QR oficial.
- Disparo de la Orden de Preparación al Depósito / Cocina / Expedición: El servidor cambia el estado del pedido a
EN_PREPARACION, lo muestra en el tablero Kanban del depósito y envía un aviso instantáneo por WhatsApp interno al encargado de logística con el detalle de bultos, etiqueta de envío y domicilio. - Confirmación Proactiva al Cliente en su WhatsApp (sin que haya escrito «ya pagué»): Tu servidor invoca la API de WhatsApp y le escribe al cliente: «✅ ¡Pago acreditado! Tu pedido #ORD-4092 ya entró en preparación en nuestro depósito. Te adjuntamos tu Factura A y te avisaremos por acá apenas salga hacia Av. Santa Fe 2450».
- Aviso de Despacho y Seguimiento: Cuando el depósito escanea o marca el pedido como
DESPACHADO(cargando el remito, link de seguimiento de correo/moto o nombre del chofer), el cliente recibe automáticamente el WhatsApp de salida y, 24 hs después de la entrega, una encuesta breve o recordatorio de próxima compra.
4 Automatización de Citas, Turnos y Servicios con Seña o Pago Anticipado
El mismo motor agéntico aplica al 100% si tu negocio comercializa servicios con agenda (consultorios médicos y odontológicos, centros de estética, estudios jurídicos/contables, talleres mecánicos, instalaciones técnicas, canchas deportivas, peluquerías o consultorías):
- Consulta de disponibilidad en tiempo real: El cliente pregunta en lenguaje natural «¿Tenés turno para limpieza dental o service este jueves por la tarde?». El agente revisa la tabla
agenda_turnos(o Google Calendar / MesiMail Calendar) y le ofrece los bloques libres reales (ej. Jueves 15:00 hs o 16:30 hs). - Reserva temporal (Hold de 10 minutos) + Link de Seña en Mercado Pago: Para eliminar el ausentismo (no-show), cuando el cliente elige las 16:30 hs, el bot bloquea ese horario por 10 minutos con estado
PENDIENTE_SENAy le envía el link de Mercado Pago por el valor de la seña o de la sesión completa. - Confirmación automática por Webhook: Apenas el cliente abona la seña en Mercado Pago, el webhook cambia el turno a
CONFIRMADO, agenda el evento en el calendario del profesional y le manda por WhatsApp el comprobante de reserva con la ubicación del local. Si pasan los 10 minutos sin pago, libera el horario automáticamente para otro cliente. - Recordatorios y reprogramación autónoma: 24 horas antes del turno, el bot le envía un mensaje automático de confirmación. Si el cliente responde «No llego, ¿podemos pasarlo al viernes?», el agente verifica las reglas de cancelación y reprograma el turno en el acto sin ocupar a una recepcionista.
5 Arquitectura Técnica: Base de Datos de Perfiles Recurrentes y Webhook de Conciliación
Si estás desarrollando este flujo en tu propia Cloud VPS o en un plan de Web Hosting NVMe con PHP 8.4 y MySQL en MESI, esta es la estructura base recomendada para soportar perfiles recurrentes, órdenes conciliadas por webhook y cola de despacho:
CREATE TABLE clientes_whatsapp (
id INT AUTO_INCREMENT PRIMARY KEY,
telefono_wa VARCHAR(25) NOT NULL UNIQUE, -- Ej: 5491122334455
nombre_razon_social VARCHAR(120) NOT NULL,
dni_cuit VARCHAR(20) DEFAULT NULL,
condicion_iva INT DEFAULT 5, -- 1: Resp. Inscripto, 6: Monotributo, 5: Cons. Final
email VARCHAR(120) DEFAULT NULL,
direccion_entrega VARCHAR(200) DEFAULT NULL,
lista_precios ENUM('minorista','mayorista','distribuidor') DEFAULT 'minorista',
pedido_habitual_json JSON DEFAULT NULL, -- Última canasta recurrente para repetir en 1 clic
ciclo_recompra_dias INT DEFAULT 15, -- Cada cuántos días avisarle si necesita stock
ultima_compra_at DATETIME DEFAULT NULL,
proximo_aviso_stock_at DATE DEFAULT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
INDEX idx_proximo_aviso (proximo_aviso_stock_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE ordenes_comercio_agentico (
id INT AUTO_INCREMENT PRIMARY KEY,
codigo_orden VARCHAR(32) NOT NULL UNIQUE, -- Ej: ORD-2026-4092 (external_reference en MP)
cliente_id INT NOT NULL,
tipo_operacion ENUM('producto_envio','producto_retiro','turno_servicio') DEFAULT 'producto_envio',
items_json JSON NOT NULL,
total_ars DECIMAL(12,2) NOT NULL,
estado ENUM('pendiente_pago','pagado_en_preparacion','despachado','entregado','cancelado') DEFAULT 'pendiente_pago',
mp_preference_id VARCHAR(80) DEFAULT NULL,
mp_payment_id VARCHAR(40) DEFAULT NULL,
cae_arca VARCHAR(30) DEFAULT NULL,
tracking_despacho VARCHAR(100) DEFAULT NULL,
fecha_turno DATETIME DEFAULT NULL,
notificado_wa TINYINT(1) DEFAULT 0, -- Idempotencia para no duplicar el WhatsApp al cliente
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
paid_at DATETIME DEFAULT NULL,
FOREIGN KEY (cliente_id) REFERENCES clientes_whatsapp(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Webhook de Conciliación Automática de Mercado Pago + Disparo a Depósito y Cliente (PHP 8.4)
Este endpoint recibe el aviso directo de Mercado Pago cuando el cliente abona desde el link enviado por el bot, valida el cobro contra la API oficial, pasa el pedido a preparación, alerta al depósito y le confirma al comprador por WhatsApp aunque no haya escrito «ya pagué»:
<?php
declare(strict_types=1);
// 1. Recibir notificación Webhook de Mercado Pago
$rawInput = file_get_contents('php://input');
$payload = json_decode($rawInput ?: '{}', true) ?: [];
$paymentId = (string)($payload['data']['id'] ?? ($_GET['data_id'] ?? ($_GET['id'] ?? '')));
if ($paymentId === '' || !ctype_digit($paymentId)) {
http_response_code(200);
exit(json_encode(['ok' => true, 'ignored' => true]));
}
// 2. Consultar el pago real en la API oficial de Mercado Pago
$mpAccessToken = getenv('MP_ACCESS_TOKEN');
$ch = curl_init("https://api.mercadopago.com/v1/payments/{$paymentId}");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer {$mpAccessToken}"],
CURLOPT_TIMEOUT => 8,
]);
$mpPayment = json_decode((string)curl_exec($ch), true);
curl_close($ch);
if (($mpPayment['status'] ?? '') !== 'approved') {
http_response_code(200);
exit(json_encode(['ok' => true, 'status' => $mpPayment['status'] ?? 'pending']));
}
$codigoOrden = (string)($mpPayment['external_reference'] ?? '');
$montoPagado = (float)($mpPayment['transaction_amount'] ?? 0);
// 3. Conciliar de forma idempotente en MySQL con bloqueo FOR UPDATE
$pdo->beginTransaction();
$stmt = $pdo->prepare("
SELECT o.*, c.telefono_wa, c.nombre_razon_social, c.direccion_entrega, c.ciclo_recompra_dias
FROM ordenes_comercio_agentico o
JOIN clientes_whatsapp c ON c.id = o.cliente_id
WHERE o.codigo_orden = ? FOR UPDATE
");
$stmt->execute([$codigoOrden]);
$orden = $stmt->fetch(PDO::FETCH_ASSOC);
if (!$orden || (int)$orden['notificado_wa'] === 1 || $montoPagado + 1.0 < (float)$orden['total_ars']) {
$pdo->rollBack();
http_response_code(200);
exit(json_encode(['ok' => true, 'already_processed' => true]));
}
// 4. Pasar a 'pagado_en_preparacion' y programar el próximo recordatorio de stock del cliente
$pdo->prepare("
UPDATE ordenes_comercio_agentico
SET estado = 'pagado_en_preparacion', mp_payment_id = ?, notificado_wa = 1, paid_at = NOW()
WHERE id = ?
")->execute([$paymentId, $orden['id']]);
$pdo->prepare("
UPDATE clientes_whatsapp
SET ultima_compra_at = NOW(),
pedido_habitual_json = ?,
proximo_aviso_stock_at = DATE_ADD(CURDATE(), INTERVAL ciclo_recompra_dias DAY)
WHERE id = ?
")->execute([$orden['items_json'], $orden['cliente_id']]);
$pdo->commit();
// 5. Notificar por WhatsApp al cliente (confirmación instantánea sin pedir comprobante)
enviarWhatsAppOficial(
$orden['telefono_wa'],
"✅ *¡Pago acreditado en Mercado Pago!* Muchas gracias *{$orden['nombre_razon_social']}*.\n\n"
. "Tu orden *#{$codigoOrden}* por *$" . number_format($montoPagado, 2, ',', '.') . " ARS* ya fue conciliada automáticamente y entró en *Preparación en Depósito*.\n"
. "📍 *Dirección de despacho:* {$orden['direccion_entrega']}\n\n"
. "🚚 _Te vamos a avisar por este mismo chat apenas salga tu pedido con los datos de seguimiento._"
);
// 6. Enviar la Orden de Preparación (Picking) al WhatsApp del encargado de Depósito / Logística
enviarWhatsAppOficial(
getenv('WHATSAPP_DEPOSITO_LOGISTICA'),
"📦 *NUEVA ORDEN PAGADA PARA PREPARAR (#{$codigoOrden})*\n\n"
. "• *Cliente:* {$orden['nombre_razon_social']} (+{$orden['telefono_wa']})\n"
. "• *Entrega:* {$orden['direccion_entrega']}\n"
. "• *Detalle:* " . formatearItemsComanda(json_decode($orden['items_json'], true))
);
http_response_code(200);
echo json_encode(['ok' => true, 'reconciled' => $codigoOrden]);
6 Prompt Maestro listo para copiar: creá tu sistema de Comercio Agéntico y WhatsApp con MIA
Si contratás MIA (Desarrollo con IA de MESI) o trabajás con Antigravity / Claude Code sobre tu Cloud VPS en MESI, podés copiar este prompt con un clic y adaptarlo al rubro de tu negocio para generar toda la plataforma (base de datos, agente de WhatsApp, conciliación con Mercado Pago, panel de preparación/despacho y seguimiento de recompras):
Elegí dónde desplegar tu sistema de Ventas por WhatsApp y Comercio Agéntico
Todos nuestros planes se abonan en Pesos Argentinos con Factura A o B electrónica de ARCA y cuentan con soporte de especialistas y guardia IA 24/7:
MIA (Desarrollo IA + VPS)
Creamos y evolucionamos tu bot de ventas por WhatsApp, base de clientes recurrentes, conciliación con Mercado Pago y panel de despacho, alojado en tu propia Cloud VPS dedicada.
Cloud VPS 2 Dedicado
Acceso SSH root completo, IP dedicada y almacenamiento SSD Enterprise RAID10 para correr demonios Gunicorn/FastAPI, workers de WhatsApp, colas Redis o n8n 24/7.
Hosting Profesional NVMe
Ideal si tu tienda o webhook corre en PHP 8.4 / 8.2 + MySQL o WooCommerce: 20 GB NVMe, 50 casillas MesiMail, SSL gratis y alta inmediata al abonar con Mercado Pago.
Preguntas frecuentes sobre Ventas por WhatsApp API, Mercado Pago y Comercio Agéntico
¿Qué diferencia hay entre un chatbot tradicional de menú («marcá 1, marcá 2») y un sistema de Comercio Agéntico por WhatsApp?
Un bot tradicional solo muestra respuestas rígidas y deriva a un humano cuando el cliente quiere comprar o modificar su pedido. Un Agente de Comercio Agéntico conectado a tu base de datos entiende lenguaje natural («mandame lo mismo del mes pasado pero sumame 3 cajas de guantes y facturalo al CUIT de la clínica»), verifica el stock real, calcula el total con la lista de precios de ese cliente, genera el link de pago de Mercado Pago y concilia el cobro por webhook sin intervención humana.
¿Qué pasa si el cliente paga el link de Mercado Pago y cierra WhatsApp sin avisar ni mandar el comprobante?
No se pierde ninguna venta ni hace falta reclamar el comprobante: la preferencia de pago lleva configurado el parámetro notification_url apuntando al webhook de tu servidor. Apenas Mercado Pago aprueba la transacción, notifica a tu servidor en ~2 segundos, el sistema concilia la orden automáticamente, envía la comanda de preparación al depósito (y/o alerta al WhatsApp interno de tu equipo) y le escribe proactivamente al cliente confirmando que su pedido ya está en preparación.
¿Cómo sabe el sistema cuándo escribirle a cada cliente para ofrecerle reponer stock o recomprar?
En la ficha de cada perfil de WhatsApp se registra la fecha de su última compra (ultima_compra_at) y su ciclo estimado de reposición en días (ciclo_recompra_dias, que puede ser fijo o calculado según el promedio entre sus últimos 3 pedidos). Una tarea diaria revisa qué clientes alcanzaron su fecha de reposición y les envía un mensaje personalizado vía API Oficial de WhatsApp con su canasta habitual lista para confirmar o editar.
¿Cuándo conviene usar Web Hosting NVMe y cuándo una Cloud VPS o MIA para este sistema?
Si tus webhooks de WhatsApp y Mercado Pago están escritos en PHP 8.2 / 8.4 + MySQL (o integrados a WordPress/WooCommerce), un plan de Web Hosting NVMe te alcanza sobradamente y se da de alta en 60 segundos. En cambio, si querés correr procesos demonios persistentes en Python (Gunicorn/FastAPI), Node.js, colas de trabajo o contenedores Docker —o si preferís que nuestro equipo junto con MIA programe y mantenga toda la solución a medida—, la opción ideal es MIA o un servidor Cloud VPS.
Guías Técnicas Relacionadas
Integrar Factura Electrónica ARCA (ex AFIP) WSFEv1 con MIA o PHP 8.4
Emití Factura A, B o C con CAE y QR oficial automáticamente cada vez que el webhook de Mercado Pago concilia una venta.
Cómo integrar Mercado Pago en tu sitio web o tienda online
Configuración de credenciales de producción, Checkout Pro, Webhooks y acreditación instantánea en pesos.
Automatizar el correo corporativo con IA, CRM Kanban y Servidor MCP
Conectá tus ventas de WhatsApp con el tablero Kanban y calendario de Mesi Mail mediante sus 22 herramientas MCP.
MIA