Step by step
- In n8n, start a workflow with a Webhook node and set the method to POST. Copy the production URL, not the test URL.
- In , on your product's page under “Webhooks”, add an endpoint: destination “Your own server”, paste the address from n8n and pick “confirmed” as the event.
- In the endpoint's delivery log, press “Send test event”. Then n8n knows the fields of an event.
- In n8n, add the next step, for example a new row in Google Sheets, and map the fields. The address is in data.entry.email.
- Turn the flow on in n8n. From now on every confirmed sign-up arrives there.
What an event looks like
These are the fields you can map in n8n. An example with a made-up address.
{
"id": "evt_5f0c2a9e41b7d3c8a6e2f104",
"type": "entry.confirmed",
"createdAt": "2026-10-15T09:30:00.000Z",
"mode": "live",
"productId": "cmexampleproduct0000000001",
"data": {
"entry": {
"id": "cmexampleentry00000000001",
"email": "mira@example.com",
"state": "confirmed",
"createdAt": "2026-10-15T09:28:00.000Z",
"confirmedAt": "2026-10-15T09:30:00.000Z",
"invitedAt": null,
"redeemedAt": null,
"referralCode": "k3x9q2m7wa",
"referrals": 0
}
}
}Good to know
- The workflow has to be active, or the production URL takes nothing. A self-hosted n8n must be reachable at a public https address.
- Pick “confirmed” as the event. Then only addresses that confirmed their inbox arrive.
- Addresses belong in a newsletter only if people agreed to it. Signing up for the waitlist alone is usually not enough.
- n8n usually cannot check the signature of the calls. Treat the webhook address like a password.
- If n8n does not answer, tries again up to five times, spread over a little more than ten hours.
Your waitlist can go live today.
Sign in with a mail link, add your product, try it in test mode.