We have the following scenario for our SAP_HYBRIS_CONSUMER contacts in the SAP Marketing Cloud:
Customer has email A
Opt-in for email A
Requirements:
- The customer can change his email address from A to B. If the customer then changes the email address back to the old one from B to A (which may happen), then there should not be the old opt-in but an opt-out.
- Furthermore, it may be that the customer has a different origin OTHER_SYSTEM which has a lower priority than SAP_HYBRIS_CONSUMER and may contain an old email address. Therefore, always the email address from SAP_HYBRIS_CONSUMER should be considered for campaign execution. However, just because the email address from SAP_HYBRIS_CONSUMER is part of the golden record, this does not mean that it is considered for the email address sendout. Because we have activated marketing areas for campaign execution, it would choose the email address from OTHER_SYSTEM if there was an opt-in for this email address and an opt-out for the email address from SAP_HYBRIS_CONSUMER. This scenario should be avoided.
The requirements may be independant but all in all we thought that only the following API flow would avoid unwished behaviors (executed in case of email address changes only):
- Opt-out the old email address A
- Update the contact data with new email address B
The new email address should be opt-out implicitly if it is a new email address that was never used before. If it is the old email address A, it should also always be opt-out due to the explicit opt-out of the first API call (Opt-out the old email address A).
In regards to the second requirement, this should also be fine since the email address maintained for OTHER_SYSTEM is usually the old email address from SAP_HYBRIS_CONSUMER and should therefore also be opted-out when an email change gets handled from SAP Commerce Cloud.
Additionally, we also implemented BadI "Update Interaction Contact (best record)" to always write the email address from SAP_HYBRIS_CONSUMER to the best record.
This may be a very specific topic we have here, but...
- Does someone maybe had similar cases (marketing areas executed for campaign execution, multiple email addresses) and can share his experience?
- Do you see any issues/improvements?
- Is there maybe also another BadI available (e.g. to ignore email addresses from other origins that SAP_HYBRIS_CONSUMER for processing)?
Thank you very much! And feel free to ask questions if my description is not clear (hard to sum up all influencing factors)...