Documentation menu

Shopify

Conecta una tienda Shopify para sincronizar sus clientes en una lista de contactos de MailInApp, disparar recorridos a partir de eventos reales de la tienda, y ver cómo los ingresos se atribuyen a una campaña o variante.

Conecta tu tienda

Las tiendas de Shopify se conectan desde el lado de Shopify, no desde MailInApp: en tu administrador de Shopify, instala MailInApp desde la Shopify App Store (o, si ya está instalada, ábrela desde Aplicaciones) y aprueba el acceso en la propia pantalla de OAuth de Shopify. MailInApp solicita read_customers, read_orders y read_products (todos de solo lectura), además de write_discounts para poder generar los códigos de descuento de un solo uso descritos abajo — nunca pide acceso de escritura a los productos, pedidos o clientes de tu tienda. Al aprobar, MailInApp crea una lista de contactos dedicada para la tienda y comienza un backfill inicial de clientes en segundo plano, con un tope de 5,000 clientes por conexión. Una tienda con más clientes que eso sigue haciendo crecer su lista a partir de ahí mediante los propios webhooks de Shopify, solo que sin un backfill de una sola vez más allá del tope.

Luego Shopify te lleva a MailInApp para iniciar sesión en tu cuenta existente o crear una gratis — la tienda se conecta a la cuenta con la que inicies sesión, y vuelves a la app de MailInApp dentro de tu administrador de Shopify. En el propio panel de MailInApp no hay un formulario para ingresar tu dominio myshopify.com: Configuración → Integraciones muestra la tienda conectada, su estado de sincronización y Desconectar.

Conectar Shopify es gratis en todos los planes, incluido Free. Tu plan de MailInApp se gestiona y se factura íntegramente a través de Shopify, desde la app de MailInApp dentro de tu administrador de Shopify — no pasas por el pago con tarjeta o PayPal propio de MailInApp.

Qué hace

  • Sincronización de clientes — los clientes de Shopify llegan a una lista de contactos ligada a esta integración, mantenida al día después mediante los propios webhooks de Shopify (customers/create, además de checkouts/create y orders/paid para los disparadores de abajo) en lugar de un sondeo periódico.
  • Disparadores de recorrido — una tienda conectada puede disparar el disparador carrito abandonado de un recorrido (un checkout iniciado pero no completado) y su disparador compra (un pedido pagado), así una automatización de serie de bienvenida o carrito abandonado puede ejecutarse a partir de actividad real de Shopify en lugar de solo el pago del bloque de producto propio de MailInApp. Mira Recorridos.
  • Atribución de ingresos — la campaña/variante propia de un pedido, cuando es identificable, se suma a los mismos números de ingresos de respuesta y de prueba A/B que ya produce un pedido de checkout nativo.
  • Segmentos de historial de compras y ofertas de descuento — los artículos de línea de los pedidos se sincronizan junto con los clientes, así un filtro de audiencia puede coincidir con "compró el producto X entre la fecha A y B" (mira Historial de compras), y un proyecto puede generar un código de descuento de Shopify de un solo uso por destinatario coincidente, canjeado en el checkout de tu propia tienda (mira Oferta de descuento). Los pedidos en curso se sincronizan automáticamente desde el webhook orders/paid; una tienda conectada antes de que esto se lanzara, o con historial más antiguo, necesita una extracción única de Backfill de historial de pedidos desde Configuración → Integraciones — limitada a aproximadamente los últimos 60 días a menos que Shopify haya aprobado por separado esta app para el historial de pedidos completo de tu tienda. Un bloque de Producto importado de tu catálogo puede generar independientemente su propio Descuento por producto — restringido solo a ese artículo, sin necesidad de filtro de audiencia — mira Descuentos nativos de tienda y Códigos de descuento de producto de Shopify.
  • Catálogo de productos para el estudio — los propios listados activos de tu tienda también se sincronizan en MailInApp, actualizados automáticamente con la misma frecuencia que los clientes (sin botón separado). El selector Importar desde la tienda del bloque de Producto busca en este catálogo sincronizado y completa el nombre, descripción, imagen y precio de un bloque a partir de un producto real — una copia de una sola vez, no un enlace en vivo, así nada de un correo enviado puede desviarse de lo que revisaste. También sincroniza la página propia de cada producto (a partir de su handle de Shopify) y, cuando está disponible, configura el bloque a Enlazar al checkout externo de la tienda apuntando directamente a ella — así un producto importado está listo para venderse en tu tienda Shopify sin nada más que configurar; vuelve a cambiarlo a Checkout de MailInApp manualmente si prefieres cobrar a través de tu cuenta de Stripe conectada en su lugar. Una tienda conectada antes de que esto se lanzara necesita un rápido Desconectar en Configuración → Integraciones y volver a abrir MailInApp desde tu administrador de Shopify para otorgar el nuevo permiso read_products que Shopify requiere — el selector simplemente no muestra nada hasta entonces.

Estado de la conexión y reconexión

Shopify le otorga a MailInApp un token de acceso de corta duración (válido durante aproximadamente una hora) junto con un token de actualización (refresh token) rotativo, y MailInApp renueva ese par automáticamente en segundo plano — la sincronización de clientes, los disparadores de recorrido y la generación de descuentos siguen funcionando sin que tengas que hacer nada en el uso normal.

Si alguna vez Shopify revoca o invalida ese token de actualización — por ejemplo, porque la app se desinstaló y volvió a instalar fuera de MailInApp, el acceso se revocó manualmente desde tu panel de administración de Shopify, o el token simplemente expiró por inactividad prolongada —, MailInApp se detiene deliberadamente en lugar de seguir intentándolo en silencio con credenciales obsoletas, y Configuración → Integraciones muestra el estado de la tienda como Reconexión requerida. Esto es una medida de seguridad, no un error: MailInApp nunca vuelve a autenticarse en tu nombre sin que tú apruebes una nueva autorización OAuth a través de la propia pantalla de Shopify.

Si ves ese estado, haz clic en Desconectar en Configuración → Integraciones, luego vuelve a abrir MailInApp desde tu administrador de Shopify y aprueba la pantalla de Shopify para obtener un par de tokens limpio. Esto toma solo unos segundos, no cuesta nada y no afecta a los contactos ni pedidos ya sincronizados — la sincronización simplemente se reanuda en cuanto se aprueba la nueva conexión.

Desconexión

Desconectar en Configuración detiene la sincronización y cualquier procesamiento adicional de webhooks de inmediato. Los clientes ya sincronizados permanecen en su lista de contactos — desconectar una integración nunca elimina contactos, ya que pueden ser ya una audiencia de envío para otros proyectos. Desinstalar la app desde el lado de Shopify funciona igual al principio. Unas 48 horas después, una vez que se dispara el propio webhook de eliminación de datos de Shopify, borra por completo también los contactos y registros de carrito sincronizados — el período de gracia estándar que toda app de Shopify debe respetar.