Account, Contact, and Lead Search Workflow
browse
Overview
This article outlines the complete logic and system behavior for Track’s automated workflow when attempting to locate and populate Current Contact, Lead, and Account fields in the LeadIQ custom object based on job change signals such as departure, title changes, or employment transitions.
Use Case
Triggered by signals such as:
- Departure
- Title Change
- Job Change
The system attempts to match and populate the following fields in the custom object within Salesforce:
- Current Contact
- Current Lead
- Current Account
Step-by-Step Logic Flow
1. Start
- Triggered by a signal tied to a person (departure, title change, job change).
2. Determine Entity Type
- Using the Salesforce Row ID prefix obtained from the input Salesforce Report, the system infers whether the row pertains to a:
- Contact
- Lead
- Contact
This is a crucial step for determining which object to query and populate.
3. Perform Contact/Lead Search
Depending on signal type:
- Departure
- No impact on Current Account, Contact or Lead fields
- Title Change
- Since the submitted Contact or Lead is changing itself, the record itself is populated in Current Contact and/or Lead
- Job Change:
- The system will attempt to match the new contact or lead that the Person has moved to
- First, it will attempt to use the new Email to match and if that fails
- It will attempt match using First Name, Last Name and Company Name
- The system will attempt to match the new contact or lead that the Person has moved to
Match Scenarios:
- If a Contact match is found, populate Current Contact
- If a Lead match is found, populate Current Lead
- If both are found:
- System populates both Current Contact first and if found, will populate Current Lead
- System populates both Current Contact first and if found, will populate Current Lead
4. Account Matching Logic
If Account Relationship for Contact Exists in Salesforce:
- Use it directly to populate Current Account
If No Account Relationship:
- Use a backend search to find Account based on:
- Account Name (Fuzzy Match) AND Domain (Exact Match)
Match Outcomes:
- If match found → populate Current Account
- If no match found → leave Current Account field blank
Decision Flow Summary
| Signal Type | Search Type | Match Outcome | Action |
| Departure | None | None | None |
| Title Change |
Person - None Company - Salesforce Relationship or Account Name / Domain Matching |
Contact and/or Lead match Account Match |
Populate either Contact or Lead depending on record submitted For Account, if Contact, use linked Salesforce Account If Lead, Account Name/Domain Search |
| Job Change | Person - Email or Name/Company Matching Company - Salesforce Relationship or Account Name / Domain Matching |
Contact and/or Lead match Account match |
Populate Contact first, if Lead found also populate Lead For Account, if Contact, use linked Salesforce Account If Lead, Account Name/Domain Search |
End States
- Current Contact, Current Lead, and Current Account are populated as appropriate
- If none found → fields remain blank for manual review as no records matched