Heroku - 17 Heroku Connect

Bienvenue dans cette partie pratique sur Heroku Connect. Le programme est le suivant : (1) avoir un compte Salesforce valide, (2) configurer Heroku Connect pour le lier à votre org Salesforce, (3) synchroniser les premières tables entre Heroku Postgres et Salesforce (ici l'objet Accounts), (4) créer une nouvelle entrée Account dans Salesforce et vérifier qu'elle arrive dans Heroku, (5) modifier une donnée côté Heroku et vérifier qu'elle remonte dans Salesforce.

Setup pas-à-pas

Côté Salesforce, allez sur developer.salesforce.com, cliquez sur Sign Up et remplissez le formulaire pour obtenir une sandbox Developer Edition gratuite. Sur cette org, on ouvre l'objet Accounts qui sera notre table de référence pour la synchronisation. Créons un nouvel Account « 123 rue Victor Hugo » pour avoir une donnée à observer plus tard.

  • Add-on Heroku Postgres (prérequis)
  • Add-on Heroku Connect (synchronisation Salesforce)
  • Authentification OAuth vers Salesforce
  • Mapping de l'objet Accounts vers une table Postgres
  • Synchronisation bidirectionnelle (Read & Write) cochée

Côté Heroku, créez une nouvelle application vide. Ajoutez les deux add-ons nécessaires : Heroku Postgres (indispensable car Heroku Connect ne peut pas fonctionner sans) puis Heroku Connect. Dans la configuration de Heroku Connect, on choisit la connexion à la base Postgres existante, puis on lance l'authentification avec Salesforce qui demande vos identifiants. Une icône de validation confirme la liaison.

On clique ensuite sur « Create Mapping » et on choisit l'objet Account. Un écran présente la configuration : fréquence de synchronisation (10 min en gratuit), synchronisation accélérée (uniquement payante) et surtout l'option « Write to Salesforce » à cocher pour que les changements Postgres remontent vers Salesforce. Un avertissement apparaît : Postgres ne peut pas générer d'IDs uniques compatibles Salesforce, il faut ajouter un champ comme BillingStreet à notre mapping (en plus des champs par défaut). Sauvegardez, et le mapping s'active.

Ouvrez ensuite pgAdmin pour vérifier la synchronisation (créez la connexion via les credentials disponibles dans Heroku > Settings > Database Credentials). Dans le schéma Salesforce, vous trouvez la table account avec 14 entrées correspondant à celles vues dans Heroku Connect ; à la 14e position se trouve le compte créé précédemment avec son adresse. Modifiez la billing_street dans Postgres et sauvegardez : le statut « in progress » s'affiche dans Heroku Connect, puis la donnée est poussée vers Salesforce. De retour dans Salesforce, le champ Billing Address affiche bien la nouvelle valeur « 456 rue Victor Hugo ». La synchronisation bidirectionnelle est confirmée. À bientôt pour la prochaine vidéo.