WhatsApp

Answer on WhatsApp within a minute

The client leaves a phone number in your form. The response comes to you — with a ready button in it. One tap and the chat with them is open.

Three steps, nothing to set up

  1. 1The client fills in your form and leaves a phone number. They press no buttons.
  2. 2The response reaches you in Telegram or by email — with a “Reply on WhatsApp” line.
  3. 3You tap it — the chat with that exact person opens. You write from your own number.
Telegramjust now
🔔 New response: Booking💬 Reply on WhatsAppName: AnnaPhone: +61 400 000 000
WhatsAppAnna
The chat is open — just type.
Message

How this actually works

The response arrives in Telegram or by email. WhatsApp is only for replying.

You write, from your own number. So it costs nothing: no subscription, no per-message fee.

The button appears if the number has a country code: +44 7… . Without one WhatsApp cannot open it.

Make a page with a formFree. Nothing to connect, nowhere to register.
How to connect

Step by step, no surprises

Below is the whole path: from adding a Form block to a response landing in your chat or CRM. Plus an honest list of where it can fail.

First — a form on the page

There are no channels until there is something to collect. Open the page editor, press «Add a new block» and pick «Form». Describe what you ask — name, phone, a convenient time. All delivery settings live in that same block, at the bottom, under «Where else the response goes»: the address belongs to the form, so two different forms can lead to two different places.

Telegram — three taps

The fastest way, and the only one that needs no technical knowledge at all. The message arrives in your personal chat with the landee bot — with every answer in it, so you can call back straight from the message.

  1. 1In the «Form» block find «Where else the response goes» and press «Connect Telegram».
  2. 2Telegram opens with the landee bot. Press Start — that is the confirmation that the chat is yours.
  3. 3Come back to the landee tab. It will already say «Connected — responses arrive in the chat».
  4. 4Publish the page. From that moment every response from this form arrives in the chat the same second.

The link is one-time and lives 15 minutes — if you missed it, press «New link». One chat per form: to move the responses to another chat, press «Disconnect» first.

Google Sheet — one click

The closest thing to «nothing to set up». Press «Connect Google Sheet», sign in to your Google — that is it: we create the sheet ourselves, name it after the form and write a header row from your questions. Every response becomes a new row. The link to the sheet appears right there in the editor.

We ask for access only to files we created ourselves — the rest of your Google Drive we neither see nor can see. The flip side is honest: we cannot write into a sheet you already have either. If it has to be that one, that is a case for the webhook below.

A copy to another email — one field

landee always emails the owner, at the account address. If someone else has to see the response — an admin, an accountant, a second specialist — type their address into «Copy to another email» and press «Save». That is all: no services, no keys. The letter is the same one the owner gets.

Webhook — if responses must land in your own system

A webhook is simply an address we send the response to the moment it arrives. You do not have to write a system: ready-made services hand you the address, and they put the response into a sheet, a CRM or a messenger themselves.

  1. 1Get the address from your service (how exactly — below) and copy it.
  2. 2Paste the address into the field under «Webhook — for a CRM or a sheet» and press «Save».
  3. 3A signing key appears next to it. Copy it if you want to verify on your side that the request really came from landee.

Where to get the address

  • Zapier: create a Zap, trigger «Webhooks by Zapier» → «Catch Hook». Zapier shows the address right away — that is the one. Then pick, as the second step, where the response should go: Google Sheets, a CRM, email.
  • Make (formerly Integromat): a new scenario, module «Webhooks» → «Custom webhook» → «Add». The «Copy address to clipboard» button gives you the address.
  • Your own app: any route that accepts a POST with a JSON body and answers with a 2xx code will do.

What exactly we send

A POST with a JSON body. The answers field repeats the order of your form's fields, and label is how the question is written on the page.

{
  "event": "form_submission",
  "site": "lesia",
  "form_name": "Запис",
  "page_url": "/",
  "submitted_at": "2026-09-03T15:42:11.000Z",
  "answers": [
    { "id": "name",  "label": "Імʼя",    "value": "Оля" },
    { "id": "phone", "label": "Телефон", "value": "+380 50 111 22 33" }
  ]
}

How to verify the request is ours

Every request carries a signature header: HMAC-SHA256 of the verbatim body, keyed with the same string shown in the form editor. Compute the signature on your side and compare. It is optional, but without it anyone who knows your address can write to it.

X-Landee-Signature: sha256=9f2c… (HMAC-SHA256 тіла запиту вашим ключем)

Where it can fail

  • The address must be public, http or https. Local and internal addresses (localhost, 10.x, 192.168.x) are rejected right away, with an explanation — this keeps your webhook from being used to knock on someone else's network.
  • We wait 5 seconds for an answer and do not follow redirects. The address must be the final one — the one that accepts the data, not one that forwards somewhere.
  • There are no retries: if your service happened to be down, this response will not reach it. But it is not lost — it stays in «Responses» and arrives by email.
  • Up to 30 deliveries per hour from one form. More than that is not responses but a flood, and we mute it so your chat does not drown.
  • The last error is visible right in the form editor, under the channel. If a channel goes quiet, the reason is written there, not somewhere in the logs.