Workflow n8n

Automatisation Google Sheets avec n8n : création de comptes Salesforce

Ce workflow n8n a pour objectif d'automatiser la création de comptes Salesforce à partir de données présentes dans Google Sheets. Dans un contexte où les entreprises cherchent à optimiser leur gestion des contacts et à réduire les erreurs manuelles, ce processus permet de gagner un temps précieux tout en améliorant la précision des données. Les cas d'usage incluent la synchronisation des informations clients et la mise à jour des comptes existants sans doublons.

  • Étape 1 : Le flux débute par un déclencheur manuel, permettant à l'utilisateur d'exécuter le workflow à la demande.
  • Étape 2 : Les données sont ensuite lues depuis une feuille Google Sheets, où les informations des nouvelles entreprises sont stockées.
  • Étape 3 : Le workflow recherche les comptes existants dans Salesforce pour éviter les doublons.
  • Étape 4 : Si un compte est trouvé, les données sont fusionnées avec les informations existantes.
  • Étape 5 : Si aucun compte n'est trouvé, un nouveau compte est créé dans Salesforce, suivi de la création des contacts associés. Ce workflow offre des bénéfices significatifs pour les équipes commerciales en automatisant la gestion des données clients, réduisant ainsi les risques d'erreurs et améliorant l'efficacité opérationnelle.
Tags clés :automatisationGoogle SheetsSalesforceworkflown8n
Catégorie: Manual · Tags: automatisation, Google Sheets, Salesforce, workflow, n8n0

Workflow n8n Google Sheets, Salesforce : vue d'ensemble

Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.

Workflow n8n Google Sheets, Salesforce : détail des nœuds

  • On clicking 'execute'

    Déclenche le workflow manuellement lorsque l'utilisateur clique sur 'exécuter'.

  • Read Google Sheet

    Lit les données d'une feuille Google Sheets spécifiée.

  • Search Salesforce accounts

    Recherche des comptes dans Salesforce selon une requête donnée.

  • Keep new companies

    Fusionne les nouvelles entreprises en conservant les données uniques.

  • Merge existing account data

    Fusionne les données des comptes existants en fonction de critères spécifiés.

  • Account found?

    Vérifie si un compte a été trouvé selon les conditions définies.

  • Remove duplicate companies

    Supprime les entreprises en double en comparant les champs spécifiés.

  • Set Account ID for existing accounts

    Renomme les clés pour définir l'ID de compte pour les comptes existants.

  • Retrieve new company contacts

    Récupère les contacts des nouvelles entreprises à partir des données fusionnées.

  • Set new account name

    Définit le nom du nouveau compte avec les valeurs spécifiées.

  • Create Salesforce account

    Crée un nouveau compte dans Salesforce avec les informations fournies.

  • Create Salesforce contact

    Crée un nouveau contact dans Salesforce avec les détails spécifiés.

Inscris-toi pour voir l'intégralité du workflow

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "nodes": [
    {
      "id": "29451054-fcd6-4054-b072-a87c716f6c67",
      "name": "On clicking 'execute'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        240,
        240
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "995ae9b0-130c-4989-8e94-81a14b7743c4",
      "name": "Read Google Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        460,
        240
      ],
      "parameters": {
        "options": {},
        "sheetId": "1cz-4tVi7Nn3j1gh147hROq9l6S4ta06sMfhm2AAI6js"
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "19",
          "name": "Tom's Google Sheets account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "2c1ed019-85f1-4b0f-bcf5-ce59ff13ea49",
      "name": "Search Salesforce accounts",
      "type": "n8n-nodes-base.salesforce",
      "position": [
        680,
        240
      ],
      "parameters": {
        "query": "=SELECT id, Name FROM Account WHERE Name = '{{$json[\"Company Name\"].replace(/'/g, '\\\\\\'')}}'",
        "resource": "search"
      },
      "credentials": {
        "salesforceOAuth2Api": {
          "id": "40",
          "name": "Salesforce account"
        }
      },
      "typeVersion": 1,
      "alwaysOutputData": false
    },
    {
      "id": "c6978a27-3cdc-44a2-a961-94557b2aed88",
      "name": "Keep new companies",
      "type": "n8n-nodes-base.merge",
      "position": [
        900,
        40
      ],
      "parameters": {
        "mode": "removeKeyMatches",
        "propertyName1": "Company Name",
        "propertyName2": "Name"
      },
      "typeVersion": 1
    },
    {
      "id": "7b5df5cf-7019-415b-9758-7f62c4fb13c8",
      "name": "Merge existing account data",
      "type": "n8n-nodes-base.merge",
      "position": [
        900,
        440
      ],
      "parameters": {
        "mode": "mergeByKey",
        "propertyName1": "Company Name",
        "propertyName2": "Name"
      },
      "typeVersion": 1
    },
    {
      "id": "7da1de2f-2b37-4e33-b8d4-d1dc59e94bbe",
      "name": "Account found?",
      "type": "n8n-nodes-base.if",
      "position": [
        1120,
        440
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{ $json[\"Id\"] }}",
              "operation": "isNotEmpty"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "80890a2a-f6d3-4efd-92b1-6465f98f512b",
      "name": "Remove duplicate companies",
      "type": "n8n-nodes-base.itemLists",
      "position": [
        1120,
        140
      ],
      "parameters": {
        "compare": "selectedFields",
        "options": {},
        "operation": "removeDuplicates",
        "fieldsToCompare": {
          "fields": [
            {
              "fieldName": "Company Name"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ea9afa15-77be-4d7a-a287-35d4c1c6e6c1",
      "name": "Set Account ID for existing accounts",
      "type": "n8n-nodes-base.renameKeys",
      "position": [
        1340,
        440
      ],
      "parameters": {
        "keys": {
          "key": [
            {
              "newKey": "Account ID",
              "currentKey": "Id"
            }
          ]
        },
        "additionalOptions": {}
      },
      "typeVersion": 1
    },
    {
      "id": "61cfdf30-9135-40bf-929d-317fca0ad474",
      "name": "Retrieve new company contacts",
      "type": "n8n-nodes-base.merge",
      "position": [
        1780,
        40
      ],
      "parameters": {
        "mode": "mergeByKey",
        "propertyName1": "Company Name",
        "propertyName2": "Name"
      },
      "typeVersion": 1
    },
    {
      "id": "c10dea7c-96b0-4f3b-b859-af094ced51cc",
      "name": "Set new account name",
      "type": "n8n-nodes-base.set",
      "position": [
        1560,
        140
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "id",
              "value": "={{ $json[\"id\"] }}"
            },
            {
              "name": "Name",
              "value": "={{ $node[\"Remove duplicate companies\"].json[\"Company Name\"] }}"
            }
          ]
        },
        "options": {},
        "keepOnlySet": true
      },
      "typeVersion": 1
    },
    {
      "id": "a4a2be2a-7bd9-4a70-b4d9-0df53834bdda",
      "name": "Create Salesforce account",
      "type": "n8n-nodes-base.salesforce",
      "position": [
        1340,
        140
      ],
      "parameters": {
        "name": "={{ $json[\"Company Name\"] }}",
        "resource": "account",
        "additionalFields": {}
      },
      "credentials": {
        "salesforceOAuth2Api": {
          "id": "40",
          "name": "Salesforce account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "89f49e6f-62be-403f-9a4c-cd56e28141f3",
      "name": "Create Salesforce contact",
      "type": "n8n-nodes-base.salesforce",
      "position": [
        2000,
        240
      ],
      "parameters": {
        "lastname": "={{ $json[\"Last Name\"] }}",
        "resource": "contact",
        "operation": "upsert",
        "externalId": "Email",
        "externalIdValue": "={{ $json[\"Email\"] }}",
        "additionalFields": {
          "email": "={{ $json[\"Email\"] }}",
          "firstName": "={{ $json[\"First Name\"] }}",
          "acconuntId": "={{ $json[\"Account ID\"] }}"
        }
      },
      "credentials": {
        "salesforceOAuth2Api": {
          "id": "40",
          "name": "Salesforce account"
        }
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Account found?": {
      "main": [
        [
          {
            "node": "Set Account ID for existing accounts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Google Sheet": {
      "main": [
        [
          {
            "node": "Search Salesforce accounts",
            "type": "main",
            "index": 0
          },
          {
            "node": "Keep new companies",
            "type": "main",
            "index": 0
          },
          {
            "node": "Merge existing account data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Keep new companies": {
      "main": [
        [
          {
            "node": "Remove duplicate companies",
            "type": "main",
            "index": 0
          },
          {
            "node": "Retrieve new company contacts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set new account name": {
      "main": [
        [
          {
            "node": "Retrieve new company contacts",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "On clicking 'execute'": {
      "main": [
        [
          {
            "node": "Read Google Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Salesforce account": {
      "main": [
        [
          {
            "node": "Set new account name",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Remove duplicate companies": {
      "main": [
        [
          {
            "node": "Create Salesforce account",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search Salesforce accounts": {
      "main": [
        [
          {
            "node": "Keep new companies",
            "type": "main",
            "index": 1
          },
          {
            "node": "Merge existing account data",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Merge existing account data": {
      "main": [
        [
          {
            "node": "Account found?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve new company contacts": {
      "main": [
        [
          {
            "node": "Create Salesforce contact",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Account ID for existing accounts": {
      "main": [
        [
          {
            "node": "Create Salesforce contact",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Google Sheets, Salesforce : pour qui est ce workflow ?

Ce workflow s'adresse principalement aux équipes commerciales et marketing des PME et grandes entreprises qui utilisent Salesforce et Google Sheets pour gérer leurs données clients. Un niveau technique intermédiaire est recommandé pour une personnalisation efficace du flux.

Workflow n8n Google Sheets, Salesforce : problème résolu

Ce workflow résout le problème de la gestion manuelle des données clients, qui peut entraîner des erreurs et des doublons dans Salesforce. En automatisant ce processus, les utilisateurs gagnent du temps et améliorent la qualité des données, ce qui se traduit par une meilleure efficacité commerciale. Les équipes peuvent ainsi se concentrer sur des tâches à plus forte valeur ajoutée, tout en s'assurant que leurs informations clients sont à jour et précises.

Workflow n8n Google Sheets, Salesforce : étapes du workflow

Étape 1 : L'utilisateur déclenche le workflow manuellement.

  • Étape 1 : Les données sont lues depuis Google Sheets.
  • Étape 2 : Une recherche est effectuée dans Salesforce pour vérifier l'existence de comptes.
  • Étape 3 : Si un compte est trouvé, les données sont fusionnées.
  • Étape 4 : Si aucun compte n'est trouvé, un nouveau compte est créé dans Salesforce.
  • Étape 5 : Les contacts associés sont également créés dans Salesforce, garantissant une gestion complète des nouvelles entreprises.

Workflow n8n Google Sheets, Salesforce : guide de personnalisation

Pour personnaliser ce workflow, commencez par modifier l'ID de la feuille Google Sheets dans le nœud 'Read Google Sheet'. Assurez-vous que les colonnes correspondent aux données attendues par Salesforce. Vous pouvez également ajuster les critères de recherche dans le nœud 'Search Salesforce accounts' pour affiner la détection des doublons. Si vous souhaitez ajouter d'autres outils, envisagez d'intégrer des notifications via des plateformes comme Slack ou des suivis par email. Enfin, pour sécuriser le flux, vérifiez les autorisations d'accès aux API de Google Sheets et Salesforce.