FAQ – B2B Contact-to-Account Relationships in SAP Marketing Cloud

You find questions and answers to the topic B2B Contact-to-Account Relationships and SOAP-based Integration:

How do I switch on B2B Relationship functionality?

You will find the “contact projection” switch in the Set Up Your Marketing Solution app in the scenario Contacts and Profiles under Contact Projections for B2B Relationships.

Can we turn off the B2B Switch again or it is irreversible?

Switching back to the state without contact relationships is only possible in the Q-system. In the P-system you must request this from SAP via a service ticket.

Does the migration of the old ODATA to the new SOAP-based integration impact existing data?

Yes, you must run a migration program after you have switched from the old to the new version of integration.  You need to submit a service ticket to request this migration. The details are described in the migration guide, which is part of the integration and setup guide

What happens with Contacts that have been merged before upgrading to the SOAP-based Integration?

It’s important to understand the design principles of the SOAP-based integration with regard to this point. For each business partner in Sales Cloud, a corresponding local business partner record is created in SAP Marketing Cloud. The subsequent extraction creates separate interaction contacts for the persons and accounts. No merge is performed because the business partner in marketing would prevent this since it is the primary data provider for the interaction contact via the ID Origin SAP_MKT_BUPA.  As a result of the migration program, which is executed for the SOAP-based integration, the ID Origin SAP_C4C_BUPA becomes an additional ID, which provides the reference to interactions loaded from the Sales Cloud.

If you have already merged business partners into one interaction contact with the ODATA-based Integration, it’s difficult to migrate to the SOAP integration. One option could be to delete merged interaction contacts in SAP Marketing Cloud before you start to migrate to SOAP.

However, currently we do not provide a solution that splits merged interaction contacts, because it is simply not possible to provide an adequate solution in the standard.

How do we handle Marketing Permissions regarding Marketing Area assignments?

According to the SetUp Guide you have to activate marketing areas for campaign execution in order to be able to use Contact-to-Account Relationships.

However, it is sufficient to use one single marketing area, e.g. GLOBAL, if, during campaign execution, you use the BAdI CUAN_MKT_EXEC_MARKETING_AREA to set this single Marketing Area to perform a proper permission check.

How can you set the marketing area for permissions and subscriptions?

  • If implicit permissions are used, you are fine, because they are created with marketing area in any case, i.e. if the use of marketing area for campaign execution is switched off.
  • Subscriptions have a marketing area assigned as well.

So, it is critical and tricky for explicit permissions:

  • If you are just starting with your implementation, you must fill the proper Marketing Area, when loading permissions initially for the contacts.
  • If you are already running marketing cloud productively, it’s more difficult. One approach could be to extract the marketing permissions for the relevant contacts and reload them into SAP Marketing Cloud, using the API API_MKT_CONTACT.

Do we have to assign a Marketing Area when loading Interactions?

Yes, when loading interactions, for example from a first-party website or business documents like opportunities from sales cloud, or sales orders from S/4HANA, you must pass on a value for the marketing area, e.g. using the BADI Revise Interaction Data before Data Import, refer to the following documentation.

This is especially important if you want to further use interactions for trigger-based campaigns.

Is there Integration for SAP CRM available that supports B2B relationships?

Currently there is no standard integration for SAP CRM that supports this feature set. However, we plan to provide a CX works best practice article, which will guide you with regard to changing integration towards the SOAP-based Business Partner replication. Stay tuned it will be available soon!

Can B2B contact-to-account relationships be enabled for multiple Marketing Areas?

Yes, the Marketing Area plays an important role in this feature set. For contacts with multiple assignments to marketing areas, every relationship to the related account will be available in the corresponding marketing area. For example, if a contact is related to Marketing Area A and B, and the corresponding account is also available in marketing area A and B, the system provides the cartesian product for the relationships, i.e. in total 4 relationship best records will be created.

Why is the attribute COMPANY_NAME not available anymore in API_MKT_CONTACTS?

Thanks for this valuable feedback. Your requirement is absolutely valid. We will look into this issue.

Are relationships between two accounts supported?

Currently only contact-to-account relationships are possible. This is a conscious decision as marketing engagements are primarily executed for contacts.

You can add these relationships by means of a CBO, which captures the relationship records between accounts, e.g. to use this in segmentation.

Is there a new API for Interactions that supports Account and Contacts?

Yes, there is a new sub-node on the interaction, which allows you to assign additional contact or accounts. Note, the interaction does not differentiate between accounts and contacts.

How do we handle existing Custom Fields after Upgrade to SOAP-based Integration?

Existing custom fields can continue to be used after you have migrated integration to SOAP-technology. To do so you have to:

  • Create another custom attribute in the local business partner (business context “master data: business partner”)
  • Use the available BADI to map the values of the new attribute from the business partner to the existing attribute of the interaction contact.
  • Afterwards reload data from C4C as described in the migration guide

Alternatively, you can create a new attribute for the business context “master data: business partner” and apply the scenario-based integration. In this case the new attribute will be created also in the interaction contact. This has the consequence that segmentation content for the new attribute needs to be adjusted and data needs to be loaded from additional data sources as well.