Using webhooks

Use webhooks to be notified about events that happen in a Flipdish account.

A webhook is a HTTP callback which occurs when something happens. This can be useful to allow you to automate processes based on events coming from the Flipdish platform.
Typical usecases would include

  • notify you of an order so that you can automatically enter it into your POS
  • notify your delivery fleet platform of an order so they can dispatch a driver
  • notify you that a customer signed up so you can add them to your mailing list
  • notify you that a customer has changed their marketing preferences so you can remove them from your mailing list
  • notify you that your menu was updated so that you can make a corresponding change on your POS system.

Configuring your webhook settings

Learn how to set up webhooks here

Responding to a webhook

To acknowledge receipt of a webhook your endpoint should return a 2xx HTTP status code. Any other information returned is ignored. All response codes outside this range, including 3xx codes, will indicate to Flipdish that you did not receive the webhook. This means that a URL redirection or a "Not Modified" response will be treated as a failure.

If a webhook is not successfully received, Flipdish will continue trying to send the webhook for 24 hours.

When viewing a webhook information through the Dashboard you can check how many times we've attempted to send an event to an endpoint in Webhook details section. This will show you the latest response we received from your endpoint, along with a list of all attempted webhooks and the respective HTTP status codes we received.

Best practices

Flipdish will wait a maximum of 10 seconds for a response to a webhook. If your webhook script performs a slow task, such as making a network call, it's possible the webhook would timeout before Flipdish sees its complete execution. For that reason, you may want to have your webhook endpoint immediately acknowledge receipt by returning a 2xx HTTP status code, and then perform the rest of its duties.

Webhook endpoints may occasionally receive the same event more than once. We advise you to guard against duplicated event receipts by making your event processing idempotent. This could be achieved by logging the webhooks you've processed, and then not processing already-logged webhooks.

We also recommend verifying webhook signatures to confirm that received events are being sent from Flipdish.

Failed webhooks

When over 50% of webhooks receive a non-2xx response over a 72 hour period, your webhook will be disabled and you will need to re-enable it via the portal or via our API.

πŸ“˜

Create your first webhook today

Check out our creating webhooks article