Un panel para todo el delivery: cómo integramos Uber Eats, Rappi y PedidosYa
Un restaurante mediano opera hoy con tres tablets: una por agregador. Tres sonidos distintos, tres flujos de aceptación, tres menús que actualizar a mano. Cuando diseñamos Comandia, la promesa central fue una sola: un pedido es un pedido, venga de donde venga.
El problema no es hablar con tres APIs. Es que cada plataforma tiene un modelo mental distinto de qué es un pedido, cuándo se confirma, cómo se cancela y quién tiene la última palabra. Integrar no es traducir campos: es diseñar el modelo que absorbe esas diferencias sin que la cocina las note.
Un modelo de pedido canónico
Todo lo que entra — del salón, del QR o de un agregador — se normaliza a un mismo contrato antes de tocar la lógica de negocio. La cocina nunca ve "un pedido de Rappi": ve un pedido.
interface Order {
id: string;
channel: 'ubereats' | 'rappi' | 'pedidosya' | 'local';
externalId?: string;
items: OrderItem[];
status: 'received' | 'accepted' | 'preparing'
| 'ready' | 'dispatched';
notes?: string;
totals: { subtotal: Money; fees: Money; payout: Money };
}La clave está en totals.payout: cada canal descuenta comisiones distintas, y el reporte que le importa al dueño es cuánto le queda, no cuánto vendió.
Webhooks, colas y reintentos
Los agregadores fallan, y fallan distinto. Nuestra regla: ningún pedido depende de que una petición HTTP salga bien a la primera.
- Cada webhook se persiste crudo antes de procesarse — si el parser falla, el pedido no se pierde.
- La aceptación corre en una cola con reintentos exponenciales y alerta a partir del tercer fallo.
- Un platillo agotado se propaga a todos los canales desde un solo lugar, con confirmación por canal.
El mejor sistema de integraciones es el que el equipo de cocina nunca nota que existe.
Lo que cambió en la cocina del cliente
El primer sistema que corrió con este diseño no fue Comandia: fue un encargo a la medida para una cocina urbana con tres agregadores. Ahí se apagó el muro de tablets — los pedidos de los tres canales entran a la misma pantalla de cocina que las comandas del salón, con el mismo flujo de estados, y el corte de caja incluye las comisiones por canal, que antes eran una hoja de cálculo del lunes.
Queda camino: la conciliación automática de pagos y los menús con fotos por canal son la fase dos de ese encargo, y arrancan cuando el cliente los pida. Comandia recoge lo que aprendimos ahí, y todavía la estamos construyendo: no se vende ni tiene fecha. Si tienes un restaurante y este problema te suena, conoce Comandia.