Pourquoi les ID de SFMC et de SFDC peuvent être différents ?

Un petit article inspiré d’un cas que j’ai récemment eu sur Salesforce Marketing Cloud en m’amusant avec des extensions de données synchronisées. Parlons un peu des différents sujets que nous pouvons avoir sur les ID Salesforce de 15 et 18 caractères qui naviguent entre SFDC et SFMC.

Vite ! Un préambule !

Chaque enregistrement dans SFDC est caractérisé par un ID.
Exemple sur l’objet Contact : l’ID commence par 003.

Jusque là, rien de trop inconnu pour vous, les experts de Salesforce 🙂

Le nombre de caractères de cet ID, excepté en cas de développement spécifique, dépend de la version de SFDC.

Si je conserve pour exemple l’ID d’un contact, cela donne :
Salesforce classic = 15 caractères = 300000018kD8cur
Salesforce lightning = 18 caractères = 300000018kD8curAKa

Il existe deux cas très vite identifiés de cohabitation entre SFMC et SFDC.

SFMC & SFDC lightning

Dans ce cas, aucun problème, SFMC récupère dans les data extensions synchronisées, l’ID en 18 caractères qui est présent dans les objets de Salesforce Lightning.

SFMC & SFDC classique

C’est dans cette configuration que les problèmes arrivent. En effet, le connecteur Marketing Cloud va synchroniser les données via une API dédiée. Cette API a un fonctionnement délicat. Elle va procéder à une transformation de l’ID des enregistrements de chaque objet et le transformer d’un ID de 15 caractères à un ID de 18 caractères.
Dans ce cadre, et pour une fois, SFMC va être très intelligent, peut être même trop intelligent. Ainsi, dans le cas où l’ID de 15 caractères serait la subscriber key, SFMC va bloquer l’envoi. SFMC autorisera seulement les ID Salesforce en 18 caractères à être subscriber key.
Bien entendu, il n’y aura aucun message d’erreur exploitable (là on retrouve notre bon vieux SFMC).

Dans cette configuration il est donc impossible d’exporter manuellement des données de SFDC et de les utiliser dans SFMC. Le plus simple est de pousser l’usage des rapports SFDC via SFMC (ou même mieux, de campagnes via Journey Builder, trop peu utilisé à mon goût).

Pour conclure, deux informations bonus.

L‘id Salesforce est case-sensitive.

300000018kD8curAKa et 300000018kD8curAka … ce n’est pas pareil !

Rechercher un enregistrement dans SFMC avec un ID en 15 caractères ce n’est pas possible ! Puisque ce sont des ID en 18 dans SFMC. #CQFD
Si nous recherchons un ID de 18 avec l’ID de 15, il est possible d’avoir plusieurs résultats (vu que la recherche dans Contact Builder n’est pas case sensitive en plus..) .. aie aie aie.

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s