> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payments.bob.company/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks

> Entenda por que os eventos assíncronos são a fonte de verdade da integração.

Webhooks são requisições HTTP enviadas pela Bob quando um evento acontece no seu projeto. Eles informam mudanças de estado sem exigir consultas contínuas à API.

## Por que usar

O comprador pode fechar a página antes do retorno. Uma confirmação também pode acontecer depois da resposta inicial da API. Por isso, o seu backend deve confirmar o resultado pelo webhook assinado.

## Fluxo de entrega

<Steps>
  <Step title="A Bob cria o evento">
    Uma mudança relevante acontece, como a confirmação de uma transação.
  </Step>

  <Step title="Seu endpoint recebe a requisição">
    A Bob envia o payload para a URL HTTPS configurada no projeto.
  </Step>

  <Step title="Sua aplicação valida a assinatura">
    Verifique a autenticidade da mensagem usando o corpo bruto da requisição.
  </Step>

  <Step title="Sua aplicação processa o evento">
    Atualize o pedido de forma idempotente e responda com sucesso.
  </Step>
</Steps>

<Note>
  A Bob pode repetir uma entrega. Use o identificador da transação para impedir que o mesmo evento libere um pedido mais de uma vez.
</Note>

## Próximos passos

<CardGroup cols={2}>
  <Card title="Configurar webhooks" icon="gear" href="/pages/webhooks">
    Eventos, versões de payload, assinatura e exemplos de implementação.
  </Card>

  <Card title="Transações" icon="arrow-right-arrow-left" href="/pages/concepts/transactions">
    Entenda os estados que os eventos comunicam.
  </Card>
</CardGroup>
