Track embedded forms and checkouts
What you'll build: submissions from a form or checkout hosted in an iframe (or by another vendor) recorded in Usermaven, and joined to the visitor's browsing session, so attribution stays intact. Time: 15–30 minutes. You'll need: a developer (or your vendor's help) to pass one value through the form, plus permission to create integrations in Usermaven.
When your booking form, payment page, or signup flow lives inside an iframe, your pixel can see the visitor around the form but not what happens inside it. This guide solves both halves of the problem: recording the submission, and connecting it to the visitor who was just browsing your site.
How the handoff works
The trick is one value: the visitor's Usermaven anonymous ID. Your page already has it; the form just needs to carry it along.
Capture the anonymous ID on the parent page (the page embedding the iframe).
Pass it into the form, through a hidden field your form tool supports, or a narrowly scoped
postMessageexchange with the iframe.Store it with the submission in the external system.
When the submission completes, the external system (or your server) POSTs the event to your Event Source webhook with the anonymous ID, the email if collected, and a stable submission or order ID.
Because the anonymous ID travels with the submission, the conversion lands on the same person who was browsing, with their session, campaign, and first-touch history intact.
Security note: the webhook URL is a credential. Send the event from the external service or your own server, never from public JavaScript in the browser, where anyone could read the URL from your page source.
Step 1: Create the source
In Usermaven, go to Events → Event sources and click New event source.
Pick Embedded form / checkout from the catalog.
Name the source and click Create webhook URL.
Usermaven generates a private webhook URL and immediately starts listening for a test event. Test events are used only for field mapping and are never added to your analytics.
Step 2: Wire up the submission
Have your developer or vendor configure the completion callback to POST JSON to the webhook URL:
{
"event_name": "booking_completed",
"anonymous_id": "the value captured from the parent page",
"email": "visitor@example.com",
"external_id": "submission_1234",
"occurred_at": "2026-07-01T12:30:00Z"
}
After generating the webhook URL, Usermaven automatically listens for the first incoming test event. Submit your form once, and the sample payload will appear for mapping.
Step 3: Map, review, and activate
Map Anonymous ID, Email (if collected), and External ID.
Add any fields worth reporting on, form name, plan selected, appointment type, as custom attributes.
Click Preview event to review how the incoming payload will be transformed into a Usermaven event before saving the source.
Review the mapped event to confirm the event name, identifiers, revenue, timestamp, and custom attributes before saving the source.
After saving the source, review the final connection details and click Activate and open source to begin accepting live events.
Verify it's working
Submit the form as a real visitor would: browse a page or two first, then complete the form. In Events activity, the event should appear on a person whose history includes that browsing, that's the handoff working.
One nuance worth knowing: if the submitted email happens to match multiple people in Usermaven, the event is marked Identity unresolved, but because you supplied the anonymous ID independently, the visitor's campaign and session attribution can still be preserved. This is exactly why the anonymous ID handoff is worth the setup effort.
If something goes wrong
Events arrive but aren't connected to the visitor's session, the anonymous ID isn't making it through the handoff. Check that the parent page captures it before the form loads and that the form actually stores it.
No usable identity found, the submission had neither an anonymous ID nor an email. At least one must be present and mapped.
More outcomes and fixes: Event Sources Troubleshooting.
Related guides
Was this article helpful?