Saltar al contenido principal
Para Quick Service Restaurants

Lanza cambios en menús y promos en tu fecha de salida

Sube la capa web de tu app de pedidos desde tu CI cuando la promo esté activa. Dirígela por mercado o marca con canales, inicia con un piloto y haz un rollback si algo falla.

Por qué los equipos de restaurantes usan live update

Menús y promociones cambian más rápido que los lanzamientos

Un bug el día del lanzamiento en el flujo de la tienda

Un artículo por tiempo limitado sale en una fecha fija. La mañana del lanzamiento, QA descubre que no aparece en el menú de la app.

El fix está en la capa web, pero un proceso exclusivo de la store implica un nuevo binario y revisión, que suele tardar de 24 a 48 horas, o incluso más.

Incluso tras la aprobación, los clientes deben instalar la actualización, y los kioscos en tienda necesitan su propio flujo de actualización.

Las promociones tienen fechas fijas

Una oferta limitada comienza con la campaña. Un fix en la capa web no debería depender de un release en la store.

Diversas marcas y mercados

Cada app de marca y cada mercado pueden requerir distintos menús, promociones y textos legales desde el mismo codebase.

Los cambios requieren un piloto previo

Un nuevo flujo de pedidos debe probarse en un mercado o en unos pocos dispositivos antes de desplegarse en todos lados.

En horas pico no hay margen de error

Si la pantalla de pedidos falla durante el almuerzo, necesitas una forma de solucionarlo sin depender de un nuevo Native Build.

Casos de uso

Donde las apps de restaurantes usan Live Update

Pedidos y checkout

Corrige pantallas de pedido y checkout en la capa web y lanza cambios en el menú sin un nuevo binario.

Lealtad y recompensas

Actualiza pantallas de premios, visualización de puntos y flujos de canje. Los valores de puntos de tu backend cambian ahí.

Localizador de tiendas y pickup

Actualiza pantallas de info de tiendas, instrucciones de pickup y opciones curbside en la capa web.

Promociones

Lanza banners, páginas de ofertas y puntos de entrada de campañas en tu fecha. Pruébalos primero en un canal.

Kioscos en tienda

Las apps de kioscos pueden estar abiertas todo el día. Aplica updates en chequeos periódicos o al volver a la pantalla idle.

Apps multimarca

Mantén cada app de marca en una organización Capgo, cada una con su propio app ID, canales e historial de lanzamientos.

Lo que Capgo ofrece a los equipos de restauración

Lanza según tu calendario, por mercado y marca

Sube desde tu CI cuando tú decidas

Capgo no tiene un programador de lanzamientos. Tu CI dispara el upload: al hacer merge, en una ejecución manual o con un cron que definas para el lanzamiento.

  • Guías para GitHub Actions, GitLab CI, Bitbucket y Azure DevOps
  • Mantén la clave API de Capgo en tus secretos de CI
  • Haz un rollback desde la consola o CLI si el lanzamiento sale mal
# .github/workflows/capgo-launch.yml
on:
  workflow_dispatch:
  schedule:
    - cron: '0 6 15 11 *' # 06:00 UTC on 15 Nov, your launch time

jobs:
  upload:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - run: npm ci && npm run build
      - run: npx @capgo/cli@latest bundle upload --channel production --delta
        env:
          CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
# one app ID per brand, same web codebase
npx @capgo/cli@latest bundle upload com.yourgroup.brand-a --channel production
npx @capgo/cli@latest bundle upload com.yourgroup.brand-b --channel production

Varias marcas desde una sola cuenta

Cada app de marca es una app independiente en Capgo, con sus propios canales e historial de lanzamientos. Gestiona todas en una organización con roles para cada miembro del equipo.

  • Una organización para cada app de marca
  • Canales y el historial separados por app ID
  • Roles de acceso para organización, app y canal

Canales para mercados y grupos piloto

Crea un canal para cada mercado, región o grupo piloto. La app se une mediante setChannel() en canales que permiten la autoasignación, y tu equipo puede fijar un dispositivo con un override.

  • Canales para mercados, regiones o tiendas piloto
  • Dispositivos se unen con setChannel() u overrides
  • Despliegue progresivo dentro de cada canal
// in the app, after the user or kiosk picks a market
import { CapacitorUpdater } from '@capgo/capacitor-updater'

await CapacitorUpdater.setChannel({ channel: 'market-uk' })
actualizaciones de kiosco
// capacitor.config.ts
CapacitorUpdater: { autoUpdate: 'onlyDownload' }

// kiosk app
let next
CapacitorUpdater.addListener('updateAvailable', ({ bundle }) => {
  next = bundle
})

// when the kiosk is back on its idle screen
if (next) await CapacitorUpdater.set({ id: next.id })

Kioscos operativos todo el día

El modo por defecto aplica updates cuando la app pasa a background, algo que un kiosco rara vez hace. Descarga updates automáticamente y aplícalos cuando el kiosco esté inactivo.

  • el modo onlyDownload emite updateAvailable cuando un bundle está listo
  • Llama a set() en tu pantalla inactiva para aplicarlo
  • Plugin de modo kiosco para Android para bloquear el dispositivo en tu app
Actualizaciones entregadas al mes
1B+
Latencia típica de API
~50ms
Dispositivos alcanzados
90M+
Apps usando Capgo
4.7K+

Cómo funciona

Cómo los equipos de restaurantes lanzan cambios de menú con Capgo

Un flujo típico para una promoción que inicia en un mercado. Cada comando proviene de la documentación de Capgo CLI.

  1. Crea un canal por mercado o piloto

    Permite la auto-asignación para que la app se una al canal del mercado donde esté el usuario o el kiosco.

    npx @capgo/cli@latest channel add market-uk --self-assign
    Docs de Channels
  2. Sube la promo a una parte del mercado

    Ejecuta esto desde tu CI al lanzar. El rollout envía el bundle a una parte de los dispositivos del canal mientras el resto se mantiene en stable.

    npx @capgo/cli@latest bundle upload --channel market-uk --delta --rollout 10
    Docs de rollouts progresivos
  3. Promociona cuando los pedidos se completan

    Cuando los pedidos funcionan como se espera, promociona el bundle a todos los dispositivos del canal.

    npx @capgo/cli@latest channel set market-uk --rollout-promote
    Docs de rollouts progresivos
  4. Haz un rollback en horas pico

    Si los pedidos fallan, regresa el rollout a estable o elige el bundle anterior desde el historial del canal en la consola.

    npx @capgo/cli@latest channel set market-uk --rollout-rollback
    Docs de rollbacks

Apps creadas con Capacitor

Las apps de restaurantes cambian menús y campañas constantemente

Las apps de QSR pueden actualizar promociones, contenido del localizador, avisos de pedidos y campañas regionales sin esperar la aprobación de la tienda.

Icono de la app BURGER KING® APLICACIÓN

BURGER KING®

App de restaurante con vouchers, localizador y campañas.

Instalaciones en Google Play
14.3M
Calificación en la tienda
3.9
Jack in the Box® - Icono de la app Order Food Comida y bebida

Jack in the Box® - Pide comida

Apps de pedidos donde el menú, las recompensas y el checkout pueden cambiar rápidamente.

Instalaciones en Google Play
2,7M
Calificación en la tienda
2.5
Icono de la app de Denny's COMIDA Y BEBIDA

Denny's

App de restaurante con flujos de fidelización y pedidos que requieren ajustes frecuentes.

Instalaciones en Google Play
1.7M
Calificación en la tienda
4.7

Testimonios de clientes

Lo que dicen los equipos que publican con Capgo

5.0/5 valorado por equipos de desarrollo 9,400+ equipos Leer reseñas

Kapil

Fundador de NuTriQ

“Poder lanzar actualizaciones OTA a producción al instante, sin esperar los ciclos completos de revisión de la App Store, ha sido una ventaja operativa enorme.”

Retrato de Sergiu S

Sergiu S

Desarrollador principal, drivolino GmbH

“El plugin Capgo Capacitor Updater transformó por completo cómo lanzamos actualizaciones. Lo que antes tardaba días ahora tarda solo minutos.”

no-tone @ Webincode

Desarrollador, Webincode

“Poder añadir Device IDs a grupos concretos y enviar los cambios solo a esos grupos es un salvavidas.”

FAQ

Dudas comunes de equipos de restauración

Tiempos, quioscos, mercados y lo que un live update puede cambiar.

¿Podemos programar el lanzamiento de un menú?

Capgo no tiene un programador de lanzamientos. Dispara el upload desde tu CI en el momento que elijas, por ejemplo con un workflow de GitHub Actions programado o una ejecución manual la mañana del lanzamiento. Si la nueva UI debe permanecer oculta hasta una fecha, gestiónalo desde tu app o backend.

Guía de GitHub Actions

¿Cómo reciben actualizaciones los quioscos si la app nunca se cierra?

En modo por defecto, las actualizaciones se aplican al pasar la app a segundo plano, algo que un quiosco rara vez hace. Configura autoUpdate en 'always' para aplicar actualizaciones durante el chequeo periódico (cada 10 minutos por defecto), o en 'onlyDownload' y llama a set() cuando el quiosco vuelva a su pantalla de reposo.

Docs de comportamiento de las actualizaciones

¿Puede cada mercado o marca ejecutar una versión distinta?

Sí. Asigna a cada marca su propio app ID en Capgo y dale a cada mercado o grupo piloto su propio channel. Los dispositivos se unen a un channel con setChannel() si se permite la autoasignación, o mediante un device override.

Docs de Channels

¿Qué pasa si un lanzamiento promocional rompe los pedidos?

Haz un rollback del despliegue progresivo o elige el bundle anterior desde el historial del channel. Si el nuevo bundle falla al iniciar y nunca llama a notifyAppReady(), el dispositivo volverá automáticamente al último bundle funcional.

Docs de rollbacks

¿Puede un live update cambiar los precios del menú?

Los precios suelen venir de tu backend o integración con el POS, así que cámbialos ahí. Un live update cambia las pantallas web que muestran el menú y los precios. Los plugins nativos, SDKs de pago y actualizaciones de Capacitor requieren un release en la store.

Docs de compatibilidad nativa

¿Listo para lanzar a tu ritmo?

Configura canales de mercado y un CI upload en tu propia app durante el trial.