This article covers how to diagnose and resolve the most common webhook issues in Tripleseat. For information on setting up webhooks and a full list of trigger types, see the API | Webhooks article.
Issue 1: Webhooks Are Not Firing at All
If no webhooks are reaching your endpoint, check the following:
1. Confirm the correct trigger is enabled Navigate to Settings > Tripleseat API & Webhooks and review your webhook endpoint configuration. Confirm that the specific trigger action you're expecting (e.g. PAYMENT_PAID, UPDATE_EVENT, CREATE_BOOKING_DOCUMENT) is checked. It's easy to miss individual triggers, especially for documents and payments which have multiple sub-types.
2. Verify the webhook endpoint URL Confirm the target URL is entered correctly in your webhook configuration — including the correct protocol (https://), no extra spaces, and the exact path your server expects. A single character difference will cause all deliveries to fail.
3. Confirm the endpoint is enabled A webhook endpoint can be disabled manually or automatically after repeated failures. Check that your endpoint is not disabled in Settings > Tripleseat API & Webhooks. If it was auto-disabled, re-enable it there or via the API using the /enable endpoint.
4. Check whether the action actually occurred at the data model level Webhooks are evaluated at the data model level, not the UI action level. If a field was edited in the UI but the underlying database value did not change (e.g. saving a record without actually modifying any fields), no webhook will fire. Confirm a real change was persisted before assuming the webhook failed.
If you have worked through all of the above and webhooks are still not reaching your endpoint, contact Tripleseat Support for further investigation.
Issue 2: Webhooks Are Not Scoped to a Specific Location
Webhook endpoints in Tripleseat are configured at the site (account) level, not the location level. This means a webhook endpoint will fire for actions across all locations within that site — there is currently no way to limit webhook delivery to a specific location.
If your integration only needs to act on events from certain locations, you will need to filter by location on your end using the location data included in the webhook payload.
Issue 3: Payment Data Is Missing from Webhook Payloads
If you are receiving webhooks but payment information is not included in the payload, confirm that the Include Event Financials option is enabled on your webhook endpoint in Settings > Tripleseat API & Webhooks. This setting must be explicitly toggled on — it is not enabled by default.
Issue 4: Signature Verification Is Failing
If your endpoint is rejecting webhooks because the signature does not match, check the following:
- Confirm you are using the correct signing secret associated with your webhook endpoint.
- Verify you are computing the HMAC SHA256 hash against the raw request body, not a parsed or reformatted version of it.
- Ensure you are extracting both the timestamp (t=) and the signature (v1=) from the X-Signature header and constructing the signed payload correctly before hashing.
- Check that your server's clock is not significantly out of sync, as timestamps are part of the signed payload.
If you are still unable to resolve the issue, contact Tripleseat Support.
Contacting Support
If you have worked through the steps above and are still experiencing issues, contact Tripleseat Support with the following information to help speed up the investigation:
- The webhook endpoint ID or target URL
- The specific trigger action(s) affected
- Example event, booking, or record IDs where the issue occurred
- Approximate timestamps of when the issue was observed
- Any error messages or HTTP response codes from your server logs