Registration Webhook

A secure webhook that triggers when a funnel visitor provides their email and clicks the Registration button, delivering form answers to your system in real-time.

Overview

The Registration Webhook is triggered immediately when a visitor completes the registration step in your funnel — providing their email address and clicking the "Registration" button. This webhook delivers the visitor's email along with all their quiz/form answers, enabling you to:

  • Capture leads in real-time — Send data to your CRM, email marketing platform, or database instantly

  • Personalize follow-up flows — Use quiz answers to trigger customized email sequences or experiences

  • Sync with external systems — Update customer profiles, assign tags, or route leads based on their responses

circle-info

Registration happens before payment. This webhook fires when the visitor submits their email, not when they complete a purchase. Use it for lead capture and pre-qualification.

Configuration

To enable the Registration Webhook, configure it in your Zellify dashboard:

  1. Click on button with label Configure

  2. Enter your Registration Webhook URL (the endpoint that will receive the payload)

  3. Save Configuration and make sure to securely save webhook secret.

How It Works

  1. Visitor completes registration They provide their email and click the "Registration" button in your funnel

  2. Zellify sends webhook A POST request is immediately sent to your configured endpoint

  3. Your system processes data Verify the signature, then store the lead, trigger automations, or sync to other platforms

  4. Visitor continues funnel The funnel proceeds to the next step (typically payment or confirmation)

Payload Structure

Example:

Explanation:

email: email that funnel visitor provided before clicking on "Registration" button.

context:

funnelId: id of funnel that user completed registration on

campaignId: id of campaign link that user went through to view funnel

experimentId: id of A/B testing experiment that above mentioned campaign targets (only provided if A/B testing feature is used)

organizationId: id of organization where this funnel exists and where this webhook url was configured/set

pageLocation: path of page where registration event took place

ip: ipv4 or ipv6 address of visitor

userAgent: visitor's user agent

answers: A map of question identifiers → user responses collected in the funnel.

Each key is a question ID. Each value is an object with a value property holding the user’s answer.

  • value can be:

    • string

      • string[]

circle-info

To better understand structure of answers we recommend you to export "Variables Schema" from funnel that you own. --- 1. Go to: https://dash.zellify.app/funnelsarrow-up-right 2. Click on "Edit Funnel" on desired funnel 3. Open Variables tab from right sidebar 4. Click on Copy Variables Schema button:

Example:

Explanation:

Each entry defines:

  • how the value should be interpreted (questionType)

  • what was shown to the user (questionText)

  • where it was asked (pageSlug)

  • how to resolve option IDs to human-readable labels (options)

In other words:

  • answers = raw user input

  • Variables Schema = metadata needed to interpret that input


questionType reference

  • email Raw type: string Semantic type: email address Notes: validated as email, serialized as plain string.

  • text Raw type: string Notes: free-form user input (text field, textarea, etc.).

  • number Raw type: number Notes: may be integer or float.

  • singleselect Raw type: string Value: option id selected by the user Source of truth: options[].

  • multiselect Raw type: string[] Value: array of option ids selected by the user Source of truth: options[].

  • slider Raw type: string Value semantics: identical to singleselect Notes: UI differs, data model does not.

  • range Raw type: string Format: "from-to" Constraints:

    • from and to are valid numbers

    • separator is a single hyphen (-) Notes: serialized numeric range, not a numeric type.

circle-info

Validation note

All values in answers are user input.

Client-side validation exists but is not authoritative and can be bypassed. Do not assume values are present, non-empty, or valid.

Security & Verification

HTTP Request Details

  • Method: POST

  • Content-Type: application/json

  • Headers:

    • X-Webhook-Signature: HMAC-SHA256 signature of the request body

Signature Verification

Every request is signed using your Registration Webhook Secret. The signature is computed as:

triangle-exclamation

Last updated