Skip to main content
Tera sends submission status change events to your registered HTTPS endpoint whenever a supplier submission’s status changes. Webhooks are the primary status channel. Use them to stay in sync with Tera and trigger downstream actions (e.g. update your system, notify the customer, fetch the full Application state).
Status polling is a fallback for resync or recovery only — not a real-time channel.

Event envelope

Every webhook request is a POST to your endpoint with a JSON body matching this shape:

Headers

Every webhook request includes:

Verify signatures

  1. Retrieve your Webhook Secret from your supplier settings (format: whsec_...).
  2. Extract the Tera-Webhook-Timestamp and Tera-Webhook-Signature headers from the incoming request.
  3. Compute the signed payload:
    where body_bytes is the raw request body (not parsed JSON).
  4. Sign with HMAC-SHA256 using your secret as the key:
  5. Compare the computed signature with the one in the header (after the v1= prefix). If they match, the webhook is authentic.
  6. Check that Tera-Webhook-Timestamp is within the last 300 seconds to reject replay attacks.

Example verification (Node.js)

Response handling

Accept any HTTP 2xx response as successful. Tera waits up to 10 seconds for your endpoint to respond. If your endpoint:
  • Returns any 2xx status: delivery is considered successful
  • Returns 3xx, 4xx, or 5xx: delivery fails and will retry
  • Times out (>10 seconds): delivery fails and will retry
  • Redirects: redirects are not followed; treat 3xx as failed
Retry policy: Failed deliveries retry with exponential backoff (up to 72 hours). A single successful response ends retries for that event.

Event lifecycle

  1. Event created — submission status changes in Pre-Underwriting or shortly after.
  2. Tera sends webhook — POST to your endpoint with signature.
  3. Your endpoint responds — any 2xx is treated as success.
  4. Delivery completes — or enters retry loop on failure.
Each event (id) is sent at most once per unique state. If the same status is already delivered, Tera will not re-emit.

See also