OskarMast / B2B-SaaS-Lead-Management

1 stars 0 forks source link

Please refer this. This is client's message #4

Open OskarMast opened 4 weeks ago

OskarMast commented 4 weeks ago

There's no need for cards when uploading leads. We will be dealing with millions of leads, so there's no need to edit them individually.

I also noticed that the fields don't each have a date corresponding to them. Like in email, it shouldn't be jMf@jmartinbusiness.com for example, it should be <jMf@jmartinbusiness.com, 2019>

Here's the logic you should follow:

A lead is complete if it has all of these fields filled: LinkedIn Profile, First Name, Last Name, Company ID

And these fields are optional fields for the lead, meaning that if they're not present, the lead can still be in the Live Leads table: Email, Personal Phone, Title, Job title, Seniority, Departments, Work Phone, Other Phone, City, State, Country, Facebook URL, Twitter URL, Past companies

Now I'll tell you a good way to manage the uploading workflow. Admins must select at least one identifier field when uploading leads, meaning that they can't only upload "First Name". They must select one or more of the identifier fields.

Consider these "Identifier fields" for leads: LinkedIn Profile, Email, Personal Phone

As for the company: Required Company Fields: Company Name, LinkedIn, Company ID Optional Company Fields: Company Address, Website, Corporate Phone, Number of Employees, Number of Retail Locations, Industry, Keywords, Facebook URL, Twitter URL, City, State, Country, SEO Description, Technologies, Annual Revenue, Total Funding, Latest Funding, Latest Funding Amount, Last Raised At

Identifier Fields: LinkedIn, Website

Now, when an admin uploads data, there's one of two scenarios:

1- The data matches one or more identifier fields from the database (the uploaded email/phone/linkedin match another lead). In this case, it will check if the new entry is more recent from the date. If it's more recent, it will update it. If not, it won't

2- If there are no matches to identifier fields, it will create a new record.

OskarMast commented 4 weeks ago

Above message is client's reply. So I sent message like this.

Now I'll tell you a good way to manage the uploading workflow. Admins must select at least one identifier field when uploading leads, meaning that they can't only upload "First Name". They must select one or more of the identifier fields.

Okay. Then I have some questions about above thing:

I don't understand action flow. Could you explain action flow more clearly? For example, If admin click which button, which action will occur and then if admin click which button or select, which action will occur? Like this, I want action flow from scratch to end... I can understand action flow with image or description you provide.

OskarMast commented 4 weeks ago

Action Flow for Uploading and Updating Data

  1. Upload CSV File Action: Admin clicks the "Upload CSV" button. Result: The system prompts the admin to select and upload a CSV file from their local system.

  2. Display CSV Columns Action: After the CSV file is uploaded, the system reads the columns from the CSV. Result: The system displays dropdown menus for each required and optional field in the lead and company records. Each dropdown menu contains the columns from the uploaded CSV file.

  3. Match CSV Columns to Database Fields Action: Admin selects the appropriate CSV columns from the dropdown menus to match each required and optional field in the database. The admin must select at least one identifier field (email/phone/linked) for leads, (companyid/linked) for companies. Example: For the "First Name" field in the database, the admin selects the corresponding column from the CSV that contains first names. Result: The system now knows which CSV columns correspond to which database fields.

  4. Confirm and Process Data Action: Admin clicks a "Confirm" or "Process Data" button after matching all necessary fields. Result: The system processes the CSV data: It checks each row against the identifier fields. If a match is found, it updates the existing record if the new data has a higher trust score or a more recent date. If no match is found, it creates a new record in the database.

  5. Feedback to Admin Action: The system provides feedback on the upload process, such as the number of records created, updated, or any errors encountered. Result: Admin can review the feedback to ensure the data upload was successful.

Detailed Step-by-Step Example

  1. Step 1: Upload CSV Admin clicks "Upload CSV". System opens a file selection dialog. Admin selects leads_data.csv and clicks "Open".

  2. Step 2: Display CSV Columns System reads columns from leads_data.csv: Columns: **First Name, Last Name, Email, Phone, Company ID, LinkedIn, etc.** System displays dropdowns for each database field:

    **Database Field: First Name -> Dropdown: [First Name, Last Name, Email, Phone, ...]
    Database Field: Last Name -> Dropdown: [First Name, Last Name, Email, Phone, ...]**
    ...
  3. Step 3: Match CSV Columns to Database Fields Admin selects:

    **First Name: First Name
    Last Name: Last Name
    Email: Email
    Phone: Phone
    LinkedIn Profile: LinkedIn
    Company ID: Company ID**

    System maps these selections internally. This works because for leads, there's at least 1 Identifier Field selected (email, phone, LinkedIn)

  4. Step 5: Confirm and Process Data Admin clicks "Confirm" or "Process Data". System processes each row:

Row 1:
Checks LinkedIn and Email against existing records.
Updates or creates a record based on trust scores and dates.
Row 2:
...

This process continues for all rows in the CSV.

  1. Step 6: Feedback to Admin System provides a summary:
    Records Created: 500,000
    Records Updated: 1,500,000
    Errors: 0

    Admin reviews the summary.