Add participants one at a time or from a CSV or Excel file
Admins add participants under Participants → Upload, one at a time or from a CSV or Excel file of up to 500 rows and 5 MB. First name, last name and exit date are required. Adding someone doesn't email them; you send their invitation as a separate step.
In FirstSourceTeam you add participants yourself from the employer portal, one at a time or from a CSV export of your HR system, with no account manager or statement of work in between. Go to Participants → Upload and choose Add Individual or Add Multiple. A file can have up to 500 rows and be up to 5 MB, and each row needs a first name, last name and exit date. Each new participant starts as Scheduled. Nobody is emailed when you add them: you send their invitations once they've been told about their exit.
You need the admin role. Viewers don't see Upload in the sidebar, and the upload page tells them only admins can add participants.
Add one participant
-
Go to Participants → Upload (or select Add Participants on the Participants page).
-
Choose Add Individual.
-
Fill in the form:
Field Required Notes First name Yes Up to 100 characters Last name Yes Up to 100 characters Personal email No Where their invitation will go. Use an address they'll keep after leaving. Without one, FirstSourceTeam reaches out by phone Phone No Up to 30 characters Exit date Yes Their last day Service start date No Filled in from your service start offset; you can change it Previous role No Their job title, up to 200 characters Service tier Yes The plan you assign: Essentials, Professional, Leader or Executive. Starts on your organization's default plan; if none is set, choose one Launch group No A label to group people, for example 2026-05 reduction. Up to 100 characters -
Select Add Participant. The portal confirms the person was added and says no email has been sent yet.
-
To email them now, select Send invitation. Otherwise choose Add another or Done.
Add participants from a CSV or Excel file
- Go to Participants → Upload and choose Add Multiple.
- Optional: select Download Template for a CSV with the columns the portal uses and two example rows.
- Drop your file on the upload area, or select Browse files. The portal reads
.csv,.tsv,.txt,.xlsxand.xlsfiles up to 5 MB and 500 rows. - Map Columns. Each column of your file is listed under Your column with a sample value, and the field it Imports as. Columns the portal is sure about are matched automatically. Columns it is less sure about are shown as suggestions with a Confirm button; confirm or change each one before you continue. Use the menu to change a match, or choose Skip this column. You can't continue until First Name, Last Name and Exit Date are matched.
- On the same screen, choose:
- Tier for rows without one: the plan for rows that leave it blank. It starts on your organization's default plan; if none is set, choose one before you import.
- Service start date: either your organization's setting (the exit date plus your offset), or The same date for everyone in this file.
- Launch group: a label for everyone in this file. It defaults to the start date, or today.
- Select Review.
- Review & Edit. Each row shows its row number from your file. Problems appear under the cell, or in the Other problems column. Click a cell to fix it, or use the bin icon to remove the row. The count at the top shows how many rows are ready and how many have problems.
- Select Import N participants. Rows with problems are left out.
- The result screen shows how many participants were added, which rows were skipped because the person is already in your organization, which rows were left out, and how many people have no email. Select Download problem report for a list by row number.
- Select Send invitations to N people to email them now, or send them later from the Participants list. See Send invitations.
The import is recorded once in the audit log as Bulk import, with the file name, the number of rows sent, added and skipped, the default plan, the start date and the launch group.
The CSV template
Download Template saves fst_participant_template.csv with these headers:
first_name,last_name,personal_email,phone,exit_date,job_title,tier,department,location,employee_idIt includes two example rows (Jane Smith and Bob Johnson). Delete them before uploading. You don't have to use the template: the portal also reads exports from HR systems such as Workday, ADP and BambooHR, and finds the header row even if there are title lines above it.
How columns are matched
The portal compares each header in your file to each field's name and its accepted header names,
ignoring capital letters, spaces, hyphens and underscores. So First Name, first_name,
first-name and FIRSTNAME all match First Name. An exact match is mapped automatically. A close
match (a typo, or similar wording) is offered as a suggestion that you confirm. Each field is matched
to one column at most.
| Field | Required | Accepted header names | Saved as |
|---|---|---|---|
| First Name | Yes | first_name, firstname, first name, fname, given_name, givenname, employee_first_name, legal_first_name, preferred_first_name | Participant record |
| Last Name | Yes | last_name, lastname, last name, lname, surname, family_name, familyname, employee_last_name, legal_last_name | Participant record |
| Exit Date | Yes | exit_date, exitdate, termination_date, terminationdate, term_date, separation_date, last_day, last_day_worked, layoff_date, last_working_day | Participant record |
| No | email, email_address, emailaddress, work_email, workemail, employee_email, e_mail, business_email, primary_email | Participant record | |
| Personal Email | No | personal_email, personalemail, home_email, private_email, alternate_email, alt_email, personal_email_address, home_email_address | Participant record (see below) |
| Phone | No | phone, phone_number, phonenumber, mobile, mobile_phone, mobile_number, cell, cell_phone, cellphone, home_phone, personal_phone, telephone | Participant record |
| Job Title | No | job_title, jobtitle, position, position_title, business_title, previous_role, previousrole, job_name | Participant record |
| Level | No | level, job_level, management_level, employee_level, career_level | Participant record |
| Service Tier (the plan) | No | tier, service_level, servicelevel, program_tier, service_tier, outplacement_level, outplacement_tier, package | Participant record |
| Employee ID | No | employee_id, employeeid, emp_id, empid, associate_id, worker_id, file_number, badge_number, employee_number, personnel_number | Additional details |
| Department | No | department, dept, division, business_unit, org_unit, department_name | Additional details |
| Location | No | location, office, office_location, work_location, work_site, facility | Additional details |
| Hire Date | No | hire_date, hiredate, date_of_hire, original_hire_date, employment_date, join_date | Additional details |
| Notification Date | No | notification_date, notificationdate, notice_date, warn_date, informed_date, notified_date | Additional details |
| Manager Name | No | manager, supervisor, manager_name, managername, supervisor_name, reports_to, direct_manager, manager_full_name | Additional details |
| Manager Email | No | manager_email, manageremail, supervisor_email | Additional details |
| Job Group | No | job_group, jobgroup, job_family, job_category | Additional details |
| Cost Center | No | cost_center, costcenter, cost_centre, charge_code | Additional details |
| Reason Code | No | reason_code, reasoncode, termination_reason, term_reason, separation_reason, rif_reason, layoff_reason | Additional details |
| Preferred Language | No | preferred_language, language, primary_language | Additional details |
| Notes | No | notes, comments, remarks, additional_notes | Additional details |
Additional details are shown on the participant's page in the portal.
Personal and work email. If a row has both a personal email and a work email, the personal email becomes the participant's email (where their invitation goes), and the work email is kept as an additional detail. People are contacted after they leave, so a personal address is better.
Data the portal doesn't import
The portal has no field for date of birth, EEO category, race, gender, disability, veteran status, Social Security or national ID numbers, salary or other pay data, or health information. Columns whose names look like any of these show Not imported (sensitive data) in the mapping step, their sample values are hidden, and they're never saved. You can leave them in your file, but it's better to remove them before uploading.
Required fields and accepted values
| Field | Rule |
|---|---|
| First Name, Last Name | Required in every row. Up to 100 characters |
| Exit Date | Required in every row. Accepted: YYYY-MM-DD (2026-05-01), M/D/YYYY (5/1/2026), M-D-YYYY (5-1-2026), and Excel date cells. Two-digit years and day-first dates (31/12/2026) aren't accepted. The date must exist (2/30/2026 is rejected) |
| Hire Date, Notification Date | Optional. Same formats as Exit Date |
| Email, Personal Email, Manager Email | Optional. Must be a valid address. The same participant email can appear only once in a file |
| Phone | Optional. Up to 30 characters |
| Job Title | Optional. Up to 200 characters |
| Level | Optional. One of IC, Manager, Director, VP, C-Suite. Capitals don't matter, and Individual Contributor, Vice President, Executive and C-Level are also recognized |
| Service Tier | Optional. One of essentials, professional, leader, executive. Capitals don't matter. Leave it empty to use Tier for rows without one. The retired plans extended and enterprise aren't accepted for new participants |
| Department, Location, Job Group | Optional. Up to 200 characters |
| Employee ID, Cost Center, Reason Code | Optional. Up to 100 characters |
| Preferred Language | Optional. Up to 50 characters |
| Notes | Optional. Up to 1,000 characters |
Problems and how to fix them
Problems appear in the Review & Edit step, and in the problem report, with the row number from your file. A row with a problem isn't imported.
| Message | How to fix it |
|---|---|
| First name is required / Last name is required | Type the name in the cell, or remove the row |
| Exit date is required | Enter the exit date, or go back and check that your exit-date column is matched to Exit Date |
| Could not read this date. Use YYYY-MM-DD or M/D/YYYY. | Rewrite the date, for example 2026-05-01 |
| Email: not a valid email address (also Personal email, Manager email) | Correct the address, or clear the cell |
| Same email as row N | Two rows share an email. Remove the duplicate or correct the address |
| Level must be one of: IC, Manager, Director, VP, C-Suite | Use one of those values, or clear the cell |
| Package must be one of: essentials, professional, leader, executive | Use one of those values, or clear the cell to use the default |
| (Field): at most N characters | Shorten the value |
Not enough seats. If your organization buys seats in the portal (see Plans and seats), each new participant uses one open seat of their plan. When a plan doesn't have enough open seats, nothing is added and the portal says how many more seats of which plan you need.
Already in your organization. If a row's email matches a participant already in your organization, that row is skipped, not treated as a problem. The result screen lists the skipped rows. This means you can upload an updated file and only the new people are added. Rows without an email can't be checked this way.
Plans and seats
Every participant gets one of four plans:
| Plan | For | 1:1 coaching | Length |
|---|---|---|---|
| Essentials | Hourly and entry-level employees | 3 hours, plus group sessions | 3 months |
| Professional | Individual contributors | 6 hours | 3 months |
| Leader | Managers and senior professionals | 10 hours | 6 months |
| Executive | Directors and above | 15 hours | 12 months |
The plan sets the participant's service end date: the service start date plus the plan's length. Settings → Packages shows each plan's price per participant and how many participants are on it. Participants added before these plans may show Extended (legacy) or Enterprise (legacy); they keep their program, and new participants can't be given those plans.
Seats. If FirstSourceTeam has set up your organization to buy seats in the portal, each participant you add (one at a time or from a file) uses one seat of their plan, and you can't add someone without an open seat. Admins buy seats in Settings → Billing under Buy seats: choose the plan and the number of seats, check the total, and confirm. The same screen shows, for each plan, how many seats were bought, used and are still open. Seats paid by card or invoice can be used right away; a bank (ACH) payment's seats can be used once it clears. Organizations whose program is billed under an agreement with FirstSourceTeam add participants without seats.
File limits
| Limit | Value | What happens |
|---|---|---|
| Rows | 500 per file | A larger file is refused with a message. Split it into files of 500 rows or fewer |
| Size | 5 MB | A larger file is refused. Remove unused columns or split the file |
| File types | .csv, .tsv, .txt, .xlsx, .xls | Other types are refused |
| Excel | First sheet only | Date cells are read as dates and number cells as text |
Blank rows are ignored, and row numbers in messages still match your file.
What gets saved
Each new participant:
- has the status Scheduled (see Participant statuses);
- has a service start date: the date you entered, or the batch date, or the exit date plus your organization's offset;
- has a service end date that the portal calculates from the service start date and the plan;
- gets a first entry in their activity history, recorded under your name;
- is recorded in the audit log: Participant added for a single add, or one Bulk import entry for a file.
Nothing is emailed until you send invitations.
Last updated on