Presença indica que um sistema está recebendo e processando eventos para um merchant. Pode ser um servidor, uma página web ou um aplicativo. Cada método de entrega de eventos (polling ou webhook) mostra presença de forma diferente.Presença garante que o merchant está apto a receber pedidos em tempo real. O sistema considera um merchant online quando detecta que ele está recebendo eventos. Isso reduz cancelamentos por falta de resposta e melhora a experiência do usuário. Para aparecer como aberto no app, o merchant deve cumprir critérios como horário de funcionamento, cardápio publicado e presença ativa na plataforma.Hoje, consideramos o merchant online quando:
O sistema faz polling de eventos para ele, ou
O servidor recebe eventos via webhook com sucesso.
A presença equivale ao status “online” em aplicativos de mensagens.Essa página se propõe a explicar um pouco do conceito de presença no iFood e como presença está relacionada com a entrega de eventos no iFood.
Heartbeat
Usamos heartbeats para mecanismos de entrega sem conexão persistente (polling ou webhook). Heartbeats são mensagens periódicas que confirmam a presença ativa do sistema na escuta de eventos.No polling, cada requisição gera um heartbeat para os merchants autorizados no token ou no header x-polling-merchants.No webhook, enviamos requisições periódicas para checar o status do servidor e garantir a presença ativa por merchant.
Saiba mais aqui sobre como funciona o conceito de presença no webhook.