Origin is lost when each channel creates a different record and the journey identifier doesn't follow the opportunity.
Define a common reference
The submission should create a non-enumerable public identifier, persist attribution and use idempotency keys across integrations.
Separate awareness and consent
Policy awareness, commercial consent and analytics preferences serve different purposes and shouldn't be represented by a single checkbox.
Close the loop in the CRM
The CRM needs to send back relevant changes — qualification, opportunity, proposal and win — idempotently and without PII in analytics.
