Por qué tu tienda en línea se cae en el Buen Fin (y cómo evitarlo): la guía técnica de 2026

Foto de Marco Orta | 17 min de lectura
Una fila de carritos de compra en miniatura se amontona frente a un embudo junto a una laptop con una tienda en línea, y un servidor con la aguja del medidor en rojo
Tabla de Contenidos

    El Buen Fin 2026 va del viernes 13 al martes 17 de noviembre, y casi todo lo que se publica sobre cómo preparar tu tienda en línea habla de banners, cupones y correos. Esta guía es de la otra mitad: qué se rompe técnicamente cuando llegan de golpe los visitantes que pagaste por atraer, y qué hacer antes. Casi todo lo que sigue está escrito en la documentación de tu hosting, tu pasarela de pagos y tu plataforma, y casi nadie lo lee hasta que la tienda ya está caída.

    Los números de 2025 explican por qué vale la pena. Según la Secretaría de Economía, la edición pasada vendió 219,200 millones de pesos, y el comercio digital fue el 21 % del total, con un crecimiento anual del 31 %. El reporte público de la AMVO midió 1,686 millones de páginas visitadas en sitios de comercio electrónico y un tráfico 56 % mayor que el año anterior (el Buen Fin pasó de cuatro a cinco días). La ANTAD reporta que el último día concentró el 26.1 % de las ventas en línea. El pico no se reparte: llega, y llega junto.

    He construido tiendas en WooCommerce con catálogos de miles de productos, pagos con Mercado Pago y cobro por WhatsApp. Lo que sigue es lo que reviso en cada una antes de una fecha así, con la fuente de cada límite.

    Lo que pasa en esos cinco días

    Dato del Buen Fin 2025CifraFuente
    Ventas totales219,200 millones de pesosSecretaría de Economía
    Ventas en línea21 % del total, +31 % anual (45,900 millones según AMVO)SE / AMVO
    Tráfico a tiendas en línea+56 % en los 5 días, +24 % en días comparablesAMVO (datos de Similarweb)
    Ticket promedio$1,063 en línea contra $780 en generalABM, citada por la SE
    Cómo pagaron en líneaCrédito 48 %, débito 43 %, departamental 17 %, pago a plazos sin tarjeta 12 %, efectivo en tiendas 12 %AMVO
    Quejas ante Profeco220 inconformidades, 205 conciliadas; predominan incumplimiento de precios y negativa de entregaProfeco

    Dos datos de esa tabla importan para lo técnico. Uno de cada ocho compradores en línea pagó en efectivo en cadenas comerciales (OXXO y similares), y eso tiene una consecuencia sobre tu inventario que explico abajo. Y el 37 % de los consumidores, según la encuesta de la AIMX que cita la SE, teme que se filtren sus datos: un aviso de certificado vencido o una página de pago que se ve rara el día que más visitas tienes cuesta ventas aunque el sitio no se caiga.

    Tampoco todo lo que falla es tuyo. En el Buen Fin 2024 usuarios de Santander y BBVA reportaron fallas para pagar con tarjeta; en el Hot Sale de mayo de 2026 BBVA confirmó en X que sus sistemas estaban fallando, y Downdetector marcó más de cinco horas de reportes. Y el 18 de noviembre de 2025, un día después de que terminara el Buen Fin, Cloudflare tuvo una caída global de más de tres horas. No puedes evitar que el banco de tu cliente se caiga. Sí puedes tener un segundo método de pago listo para cuando pase.

    1. Tu hosting compartido tiene un techo, y está escrito

    El plan de hosting compartido que cuesta unos cientos de pesos al año no es «lento»: tiene límites exactos, y cuando los tocas no se pone lento, devuelve error. Hostinger publica los suyos en su página de parámetros y dice que alcanzarlos produce un «503 – Service temporarily unavailable»:

    Plan de HostingerCPURAMProcesos PHP simultáneosConexiones a MySQL
    Web Single11 GB2025
    Web Premium12 GB4050
    Unlimited (antes Business)23 GB6075

    HostGator México lo dice de otra forma en su centro de ayuda: un límite del 25 % de CPU sostenido por 90 segundos o más, y 25 procesos simultáneos por cPanel.

    Para ver lo que significa, haz la cuenta con tu propia tienda. Una página de producto de WooCommerce que nadie ha guardado en caché ocupa un proceso PHP mientras se arma. Si tarda un segundo y tienes 20 procesos, tu techo es de unas 20 páginas por segundo; el visitante 21 no espera en una fila, recibe un error. Por eso la caché del siguiente punto no es una optimización, es lo que decide si esos límites te alcanzan o no.

    2. La caché: qué se puede guardar y qué no

    La idea es sencilla: que la mayoría de los visitantes, los que solo miran, reciban una copia ya armada de la página y no le cuesten nada a tu servidor. Solo el carrito, el pago y la cuenta del cliente tienen que llegar al servidor cada vez.

    Lo que casi nadie sabe es que Cloudflare no guarda el HTML por defecto, ni en el plan gratuito ni en los de pago. Su documentación es explícita: «The Cloudflare CDN does not cache HTML or JSON by default». Si pusiste tu tienda detrás de Cloudflare y no configuraste nada más, se guardan las imágenes, el CSS y el JavaScript, pero cada página sigue llegando a tu hosting. En el plan gratuito tienes hasta 10 Cache Rules, y con una basta. Esta es la expresión para una tienda WooCommerce en español (ajusta las rutas a las tuyas):

    (http.host eq "tutienda.mx"
     and not starts_with(http.request.uri.path, "/wp-admin")
     and not http.request.uri.path contains "/carrito"
     and not http.request.uri.path contains "/finalizar-compra"
     and not http.request.uri.path contains "/mi-cuenta"
     and not http.cookie contains "woocommerce_items_in_cart"
     and not http.cookie contains "wordpress_logged_in")
    

    Con la acción «Eligible for cache» y un tiempo en el borde corto (5 a 10 minutos), quien solo mira recibe la copia guardada, y quien ya tiene algo en el carrito o inició sesión pasa directo a tu servidor. Dos avisos:

    • Purga la caché cuando cambies los precios. Si tus descuentos arrancan a la medianoche del 13, una copia guardada a las 11:58 sigue mostrando el precio viejo, y «el precio no era el anunciado» es de las quejas que más recibe Profeco. Purga al activar las ofertas.
    • Una cookie en cada página rompe todo. Cloudflare no guarda una respuesta que trae Set-Cookie, y algunos plugins (conversores de moneda, geolocalización, popups) la mandan en cada visita. Compruébalo así:
    curl -sI https://tutienda.mx/producto/tu-mas-vendido/ | grep -iE "set-cookie|cf-cache-status"
    

    Lo que quieres ver, a partir de la segunda petición, es cf-cache-status: HIT y ningún set-cookie. Si ves DYNAMIC o BYPASS, esa página sigue llegando a tu servidor.

    Dos cosas que parecen red de seguridad y no lo son. Always Online está en todos los planes, pero solo se activa con errores 52x, sirve copias del Internet Archive y no puede servir contenido dinámico: nadie compra en una copia de archivo. Y la sala de espera de Cloudflare (Waiting Room), la fila virtual que usan las grandes tiendas, solo existe en los planes Business y Enterprise.

    Si tu tienda es WooCommerce, revisa también los cart fragments: el script que actualiza el contador del carrito haciendo una petición al servidor en cada página. WooCommerce reconoce que en tiendas con mucho tráfico «puede afectar severamente la carga del servidor», y desde la versión 7.8 ya no se carga en todas las páginas, pero muchos temas y plugins lo vuelven a activar. Abre una página de producto con las herramientas de desarrollo del navegador y busca una petición a ?wc-ajax=get_refreshed_fragments. Si aparece en páginas sin mini carrito, es una petición al servidor por visita que la caché no te quita.

    Y aligera las fotos de producto: son la mayor parte del peso de una tienda, y en celular, que es donde compra casi todo el mundo, cada megabyte se nota.

    3. Tu pasarela de pagos también tiene límite

    El servidor no es lo único que puede decir «ya no». Stripe publica sus límites: 100 peticiones por segundo en modo real, y la mayoría de sus endpoints por separado a 25. Y lo dice sin rodeos: «un aumento repentino en el volumen de cobros, como una venta flash, puede provocar limitación». Si esperas un pico, su recomendación es escribirle a soporte antes. Mercado Pago no publica una cifra, pero su API de órdenes responde 429 Too Many Requests con un encabezado Retry-After cuando la pasas.

    Para una PyME, 100 cobros por segundo sobran. El problema aparece cuando la integración hace varias llamadas por compra (crear cliente, crear intento de pago, consultar estado) o reintenta sin esperar: un error 429 mal manejado se convierte en un «no se pudo procesar tu pago» para un cliente que sí tenía fondos.

    Y el pago con verificación del banco (3-D Secure, la pantalla de «confirma en tu app») cambia el flujo. En México no es obligatorio por regulación, pero Mercado Pago recomienda activarlo en modo opcional, y cuando el banco pide el desafío el pago queda en estado pending con detalle pending_challenge. Si tu integración trata «pendiente» como «rechazado», estás cancelando compras buenas. La AMVO pone el «rechazo del método de pago» entre las barreras para comprar en línea.

    4. El problema que nadie te cuenta: el pago en OXXO aparta tu inventario

    Esto es lo que más me preocupa de una tienda con inventario limitado, y no lo vi en ninguna de las guías del Buen Fin que revisé. Cuando alguien elige pagar en efectivo, la pasarela genera una ficha con fecha de vencimiento, y mientras no pague, la pieza queda en el limbo:

    PasarelaVigencia de la fichaQué pasa si paga tarde
    Stripe (OXXO)5 días por defecto, configurable de 1 a 7; la confirmación llega al siguiente día hábilLa ficha vence (docs)
    Mercado Pago (OXXO, Paycash)Configurable de 1 a 30 días; recomiendan 3. La acreditación tarda hasta 2 horas hábiles«El valor será devuelto» (docs)
    ConektaLa fija tu integración con expires_at; avisa con el webhook order.expiredDepende de tu integración (docs)

    Ahora el lado de WooCommerce. Su opción «Retener inventario» aparta la pieza de los pedidos pendientes de pago durante el tiempo que configures (60 minutos es el valor recomendado) y luego los cancela, según su guía. Pero la misma guía dice que los métodos de pago diferido dejan el pedido en espera (On hold), y ahí esa cancelación automática no aplica. Si el plugin de tu pasarela no cancela el pedido cuando vence la ficha, la pieza queda apartada días por alguien que quizá nunca va a pagar, mientras le dices «agotado» a quien sí traía la tarjeta en la mano.

    Qué hacer antes del 13:

    1. Acorta la vigencia de la ficha durante la campaña. Uno o dos días en lugar de cinco o treinta.
    2. Comprueba que tu plugin cancela el pedido al vencer. Haz una compra de prueba en efectivo con la vigencia mínima, no la pagues y revisa al día siguiente que el pedido pasó a cancelado y el inventario volvió.
    3. Si vendes por WhatsApp con links de cobro, dales vencimiento corto. Clip, por ejemplo, permite que el link venza el mismo día.

    5. Sobreventa: dos personas compran la última pieza

    WooCommerce tiene desde la versión 4.3 una reserva de inventario para evitar que dos compras simultáneas se lleven la misma pieza (PR #26395). Aun así, el issue #44273, donde el equipo confirma que «una condición de carrera como esta es posible», sigue abierto hoy. En días normales casi nunca pasa. En el Buen Fin, con cientos de personas sobre tu producto estrella, es cuando pasa.

    Para los productos con pocas piezas: deja un margen (publica 18 si tienes 20), limita la cantidad por cliente y decide antes qué haces si ocurre, con un mensaje de disculpa y un reembolso rápido. La «negativa de entrega» fue de las quejas que predominaron ante Profeco en 2025. Shopify, en su guía para ventas flash, recomienda por lo mismo cambiar a captura manual de pagos, para cobrar solo lo que de verdad puedes entregar.

    6. Lo que trabaja en segundo plano

    Los correos de confirmación, los webhooks de pago y la actualización de inventario en WooCommerce pasan por Action Scheduler, que por defecto procesa lotes de 25 tareas durante 30 segundos, disparado por WP-Cron. Y WP-Cron solo se ejecuta cuando alguien visita el sitio. Con la caché bien puesta, casi nadie llega al servidor, y las tareas pueden acumularse. El resultado: clientes que pagaron y no reciben su confirmación, y te escriben preguntando si su compra entró.

    La solución es un cron real del servidor en lugar del de visitas: define DISABLE_WP_CRON en wp-config.php y programa una llamada a wp-cron.php cada minuto desde el panel de tu hosting. Casi todos los hostings compartidos lo permiten.

    7. Pruébalo antes con tráfico falso

    Todo lo anterior se puede comprobar sin esperar al día 13. Una prueba de carga simula a muchos visitantes a la vez y te dice en qué punto empiezan los errores. Dos herramientas gratuitas:

    Un guion mínimo de k6 que visita la portada y tu producto más vendido:

    import http from 'k6/http';
    import { check, sleep } from 'k6';
    
    export const options = {
      stages: [
        { duration: '2m', target: 50 }, // sube a 50 visitantes simultáneos
        { duration: '5m', target: 50 }, // se sostiene
        { duration: '1m', target: 0 },
      ],
      thresholds: {
        http_req_failed: ['rate<0.01'],     // menos del 1 % de errores
        http_req_duration: ['p(95)<2000'],  // el 95 % en menos de 2 segundos
      },
    };
    
    export default function () {
      check(http.get('https://tutienda.mx/'), { portada: (r) => r.status === 200 });
      sleep(3);
      check(http.get('https://tutienda.mx/producto/tu-mas-vendido/'), { producto: (r) => r.status === 200 });
      sleep(5);
    }
    

    Se corre con k6 run prueba.js. Tres reglas: prueba contra páginas, nunca contra tu pasarela de pagos; si estás en hosting compartido, avisa antes a tu proveedor, porque una prueba de carga se parece mucho a un ataque; y apunta a tres a cinco veces tu hora pico normal. No hay una cifra pública de cuánto sube el tráfico de una tienda chica en el Buen Fin frente a un día cualquiera; si tu analítica guarda el del año pasado, usa ese. Si la prueba falla con 50 visitantes, ya sabes lo que hay que arreglar, y tienes siete semanas para hacerlo.

    Si tu tienda está en Shopify o Tiendanube

    La infraestructura no es tu problema: Shopify atendió 489 millones de peticiones por minuto en su borde durante el Black Friday y el Cyber Monday de 2025, y su guía dice que la preparación especial solo hace falta si esperas «decenas de miles de clientes» empezando a pagar en pocos minutos. Lo tuyo son las otras cuatro secciones: el peso del tema y las apps que cargas en cada página, la pasarela y sus estados pendientes, la vigencia de las fichas en efectivo y el margen de inventario.

    La lista para dos semanas antes

    QuéCómo lo compruebas
    Caché de HTML activa para visitantescf-cache-status: HIT en la segunda petición a una página de producto
    Ninguna página manda Set-Cookie a visitantesEl mismo curl -sI de arriba
    Carrito, pago y cuenta excluidos de la cachéAgrega algo al carrito en otra ventana y verifica que el contador se actualiza
    Precios nuevos visiblesPurga la caché al activar las ofertas y revisa en modo incógnito
    Fichas de efectivo con vigencia cortaCompra de prueba en OXXO que no pagas: al vencer, pedido cancelado e inventario de vuelta
    Pagos «pendientes» tratados como pendientesCompra de prueba con 3-D Secure que no completas
    Cron real del servidorDISABLE_WP_CRON en wp-config.php y tarea programada cada minuto
    Margen en productos estrellaInventario publicado por debajo del real
    Certificado SSL vigente más allá del 17 de noviembreConsulta SSL
    Prueba de carga pasadak6 o Loader.io sin errores a tres veces tu pico
    Plan B de cobroLink de pago y WhatsApp listos si la pasarela o el banco fallan

    Si todavía no tienes tienda o sitio y quieres llegar al Buen Fin con algo que aguante, el último arranque para mi paquete de sitio para negocio con entrega antes del 13 de noviembre es el 20 de octubre. Y si lo que necesitas es cobrar y responder por WhatsApp sin que tu equipo conteste mensaje por mensaje, está el agente de WhatsApp para negocios.

    Preguntas frecuentes

    ¿Cuándo es el Buen Fin 2026?

    Del viernes 13 al martes 17 de noviembre de 2026. Es la edición 16 y dura cinco días porque incluye el lunes 16 de noviembre, día de descanso por el aniversario de la Revolución. El registro de negocios es gratuito en elbuenfin.org, del 8 de septiembre al 12 de noviembre.

    ¿Por qué se cae una tienda en línea en el Buen Fin?

    Casi siempre porque cada visita llega al servidor sin caché y se agotan los procesos que permite el hosting. Un plan compartido tiene límites fijos (en Hostinger, 20 procesos PHP en el plan más básico; en HostGator México, 25 procesos por cPanel) y al pasarlos devuelve error 503. También fallan la pasarela de pagos cuando limita peticiones, o el banco del cliente, que no depende de ti.

    ¿Cloudflare gratis protege mi tienda del tráfico del Buen Fin?

    Ayuda, pero no solo con activarlo. Cloudflare no guarda el HTML por defecto, así que sin una Cache Rule cada página sigue llegando a tu hosting. En el plan gratuito puedes crear hasta 10 reglas y con una basta para guardar las páginas de visitantes excluyendo carrito, pago y cuenta. La sala de espera virtual (Waiting Room) solo existe en los planes Business y Enterprise.

    ¿Un pago en OXXO pendiente aparta mi inventario?

    Puede hacerlo por días. La ficha de Stripe vence en 5 días por defecto (configurable de 1 a 7) y la de Mercado Pago entre 1 y 30. En WooCommerce, los pedidos de pago diferido quedan en espera y la retención de inventario de 60 minutos solo cancela los pendientes de pago, así que la pieza queda apartada hasta que el plugin de la pasarela cancele el pedido al vencer la ficha. Acorta la vigencia durante la campaña y pruébalo con una compra que no pagues.

    ¿Cómo hago una prueba de carga de mi tienda en línea?

    Con k6, gratuito y de código abierto, o con Loader.io, cuyo plan gratuito lanza hasta 10,000 clientes en una prueba de un minuto. Simula visitantes sobre la portada y tus productos más vendidos, nunca sobre la pasarela de pagos, apunta a tres a cinco veces tu hora pico y avisa antes a tu proveedor de hosting compartido, porque una prueba de carga se parece a un ataque.

    ¿Qué pasa si se cae el banco de mi cliente durante el Buen Fin?

    Tu tienda funciona pero el cobro falla, y no puedes evitarlo: en el Buen Fin 2024 hubo reportes de fallas de Santander y BBVA, y en el Hot Sale 2026 BBVA confirmó una falla de varias horas. Lo que sí puedes hacer es ofrecer más de un método de pago (tarjeta, transferencia, efectivo en tiendas) y tener listo un link de cobro para mandar por WhatsApp.

    ¿Te sirvió? Compártelo

    ¿Te sirvió? Recibe la próxima por correo

    Una vez por semana: qué se rompe al actualizar, IA para desarrolladores y lo que estoy construyendo, con fuentes. Sin spam.

    Al suscribirte aceptas nuestro aviso de privacidad.

    Buscar

    Etiquetas

    Migración PHP IA Laravel JavaScript Tutorial Desarrollo Web Upgrade Buenas Prácticas Seguridad OpenAI SEO Backend Claude Laravel 13