caret

Creating a Webhook


To create a webhook for your app you need to visit the My Apps section of developer.xero.com.

All you need to do is select your app and tell us two things:

  • The categories of events you’re interested in, and
  • The url for us to deliver to
Screenshot of Webhooks Form

Note: Your URL must be HTTPS

Click save and your webhook is created. You’ll need to take note of the Webhook Key which is used when doing an intent to receive validation.

When your webhook is first created the status will be 'Intent to receive' required.

Screenshot of Webhooks Form Showing Status

The Webhooks Status

'Intent to receive' required Your webhook subscription has just been created and events won’t be delivered until the intent to receive validation is started. Updating your delivery url and re-enabling a disabled subscription will also place you in this status.
'Intent to receive' in progress Intent to receive validation is in progress. This can take up to 30 seconds to complete. If it fails, the status will go back to 'Intent to receive' required and you will have to click the Validate 'Intent to receive' button to retry.
OK Webhooks are being delivered successfully.
Retry We haven’t received a successful response on the most recent delivery attempt and will retry sending with decreasing frequency for an overall period of 24 hours.
Disabled We haven’t received a successful response after retrying for 24 hours and the webhook is now disabled. Click the Re-enable webhooks button to re-activate your subscription.