Salesforce : créer ou mettre à jour un enregistrement
Utilisez Salesforce : créer ou mettre à jour un enregistrement pour effectuer un upsert d’un enregistrement Salesforce à partir d’une étape de journey, en le faisant correspondre à un champ d’ID externe : il met à jour l’enregistrement lorsque la valeur existe déjà et le crée lorsqu’elle n’existe pas. Salesforce n’a pas de jeton d’API statique, donc ce point s’authentifie via une application connectée enregistrée une seule fois pour l’ensemble du compte. Il n’y a pas de champ de jeton sur le point lui-même.
Utilisations typiques :
- Maintenir Salesforce synchronisé : créez ou mettez à jour un Contact ou un Lead au fur et à mesure que le voyageur progresse dans le journey, afin que l’équipe commerciale voie les données actuelles.
- Synchroniser l’activité du journey dans le CRM : définissez un champ lorsqu’un voyageur atteint une étape clé, afin que l’équipe commerciale puisse filtrer ou créer des rapports dessus.
- Éviter les enregistrements en double : la correspondance par ID externe signifie qu’un voyageur qui passe à nouveau par ce point met à jour le même enregistrement au lieu d’en créer un nouveau.
Avant de commencer
Anchor link toCréez une application connectée dans votre organisation Salesforce et connectez-la sous Paramètres > Intégrations tierces > Salesforce :
- Dans Salesforce, créez une Application cliente externe (ou une application connectée classique) avec OAuth activé et la portée Gérer les données utilisateur via les API (api).
- Activez le Flux d’informations d’identification client dessus et choisissez l’utilisateur d’exécution. Le point écrit en tant que cet utilisateur, donc son profil décide quels objets et champs il peut toucher.
- Dans Pushwoosh, dans Hôte Mon domaine, entrez l’hôte de votre organisation sans
https://, par exempleacme.my.salesforce.com. - Dans Clé consommateur et Secret consommateur, collez les informations d’identification de l’application. Le secret est stocké en écriture seule : Pushwoosh ne l’affichera plus jamais, donc collez-en un nouveau pour le remplacer.
- Cliquez sur Connecter Salesforce.

Après avoir connecté Salesforce, installez l’intégration pour que le point apparaisse dans le constructeur de journey.
Deux choses doivent également être en place du côté de Salesforce :
- Le champ sur lequel vous effectuez la correspondance doit être marqué comme ID externe sur cet objet. Un champ de texte brut, même
Email, n’est pas suffisant — Salesforce refuse la requête avecNOT_FOUNDlorsque le champ n’est pas un ID externe. - L’utilisateur d’exécution de l’application connectée a besoin d’un accès au niveau du champ pour ce champ. Un champ créé via la Configuration ou l’API n’accorde rien par lui-même, et sans l’autorisation, Salesforce répond avec le même
NOT_FOUND: Field name provided ... does not match an External ID— le champ est invisible pour cet utilisateur, donc du point de vue de l’API, il n’existe pas. Ajoutez-le à un ensemble d’autorisations attribué à l’utilisateur d’exécution.
Configurer le point
Anchor link to- Faites glisser Salesforce : créer ou mettre à jour un enregistrement de la section Intégrations du panneau de gauche sur le canevas.
- Double-cliquez sur le point et entrez un Nom d’étape.
- Dans Hôte Mon domaine, entrez le même hôte sur lequel se trouve l’application connectée.

- Dans Objet, entrez le nom d’API de l’objet —
Contact,Lead, ou un objet personnalisé se terminant par__c.

- Dans Champ ID externe, entrez le nom d’API du champ marqué comme ID externe.

- Dans Valeur ID externe, entrez la valeur sur laquelle effectuer la correspondance, généralement une macro comme
{{device:hwid}}.

- Dans Champs, ajoutez une ligne par champ Salesforce à définir. Entrez le nom d’API du champ et la valeur. Les noms ne doivent pas être vides et doivent être uniques. Les champs obligatoires de l’objet doivent en faire partie, sinon Salesforce refusera de créer un nouvel enregistrement. Une valeur peut être un texte fixe ou une macro de voyageur telle que
{{device:hwid}}, les mêmes macros que dans le corps d’un Webhook. Ou cliquez sur Insérer une valeur dynamique pour choisir un attribut produit par une étape antérieure de ce journey, par exemple une réponse de LLM ou une valeur de Webhook mappée.

- Cliquez sur Enregistrer.
Réponse
Anchor link toLe voyageur continue vers l’étape que vous connectez ensuite sur le canevas.
Attributs après l’exécution de l’étape
Anchor link to| Attribut | Ce qu’il contient |
|---|---|
salesforce_record_id | L’ID de l’enregistrement |
Comment l’utiliser dans les étapes ultérieures
Anchor link toLe voyageur a déjà continué à l’étape suivante indépendamment de cet attribut. Enregistrez-le dans un Tag avec Mettre à jour le profil utilisateur si vous avez besoin de référencer cet enregistrement spécifique plus tard, par exemple via l’API propre à Salesforce.
Échecs et réponses inattendues
Anchor link toOuvrez le Journal des appels dans le tiroir du point et vérifiez la réponse :
- 401 — les informations d’identification de l’application connectée sont incorrectes, ou le flux d’informations d’identification client n’est pas activé dessus.
- NOT_FOUND dans le corps — le nom de l’objet, ou le champ d’ID externe, ne correspond à rien sur cette organisation. Vérifiez que le champ est bien marqué comme ID externe.
- REQUIRED_FIELD_MISSING dans le corps — la création d’un nouvel enregistrement nécessite un champ que le point n’envoie pas. Ajoutez-le dans Champs.
- INVALID_FIELD dans le corps — un nom dans Champs n’est pas un nom d’API sur cet objet. Le nom d’API d’un champ personnalisé se termine par
__c.
Une requête échouée fait sortir le voyageur du journey. Voir Erreurs et requêtes échouées.
Exemple de scénario : acheminer une demande de conseil in-app vers l’équipe commerciale
Anchor link toUne application de bien-être permet aux utilisateurs d’appuyer sur Parler à un conseiller dans l’application. L’équipe souhaite que cette demande devienne un Contact Salesforce sur lequel un représentant peut effectuer un suivi.
- Ajoutez un élément Entrée basée sur un déclencheur et configurez-le pour qu’il se déclenche sur un événement
AdvisorCallRequested. - Ajoutez Salesforce : créer ou mettre à jour un enregistrement juste après. Définissez Objet sur
Contact, Champ ID externe surPushwoosh_HWID__c, et Valeur ID externe sur{{device:hwid}}. Dans Champs, définissezEmailsur{{tag:Email}}. - Cliquez sur Enregistrer.
Une fois que cela est exécuté, chaque demande de conseiller in-app atterrit dans Salesforce en tant que Contact, mis en correspondance par appareil afin qu’un appui répété mette à jour le même Contact au lieu d’en créer un en double.