Monday, September 28, 2026

Customer Onboarding Pack

Download these CSV templates, fill them in with your customer's data, then import them into the app.

📋 How to use this pack:

  1. Download and complete the templates in order (1 → 5).
  2. Send completed templates back to be imported into the app.
  3. Invite app users (managers, HR, ops) via User Management.
  4. Import Teams and Team Members via Teams and Team Members pages.
  5. Set up Alert Rules via the Alert Rules page.
  6. Optionally import historical attendance via Import Attendance.
1. Teams Setup
Required First
Define your organisational structure, team names, and reporting lines.

Instructions

  • •Fill in one row per team.
  • •team_name must be unique.
  • •manager_email must match a user who will be invited to the app with the 'team_manager' role.
  • •operations_manager_email and hr_email are optional but recommended for notifications.

CSV Columns

team_namemanager_emailoperations_manager_emailhr_emaildescription
2. Team Members
Required Second
List all employees, their roles, and which team they belong to.

Instructions

  • •team_name must exactly match a team from the Teams Setup template.
  • •user_email is the employee's work email address.
  • •direct_manager_email is usually the same as the team manager email.
  • •hr_email is the HR contact for this specific employee.
  • •status should be: active, inactive, or leaver.
  • •employee_id and position are optional but useful for reporting.

CSV Columns

full_nameuser_emailteam_namedirect_manager_emailhr_emailemployee_idpositionphonestatus
3. App Users (Managers & HR)
Required
List of people who will log into the app to manage attendance and view reports.

Instructions

  • •These are the people who will have login access to the app (not regular employees).
  • •role must be one of: admin, super_user, human_resources, operations_manager, team_manager.
  • •full_name is optional — it can be set by the user after they log in.
  • •These users will receive an email invitation to join the app.

CSV Columns

emailfull_namerole
4. Alert Rules Configuration
Recommended
Define the disciplinary policies and thresholds that trigger automated alerts.

Instructions

  • •Each row defines one alert rule.
  • •trigger_type must be one of the valid values listed in the notes below.
  • •threshold is the number of occurrences before the alert fires (e.g. 3 for 3 consecutive absences).
  • •time_period must be one of: daily, weekly, monthly, 8_week_cycle, 30_days, 60_days, 90_days, yearly.
  • •notify_hierarchy: TRUE means the team manager and ops manager are notified automatically.
  • •applies_to_teams: leave blank for all teams, or enter comma-separated team names.
  • •email_subject and email_body can include placeholders like {member_name} and {team_name}.

Valid Values

Valid trigger_type values:

consecutive_absences | late_count | absence_threshold | weekly_absence | monthly_absence

late_duty_1st_offence | late_duty_2nd_offence | late_duty_3rd_offence

absence_without_valid_reason | unauthorised_absence_2_days | unauthorised_absence_3_days

ncns_1st_instance | sick_leave_abuse | awol_more_than_3_days | awol_letter_1 | awol_letter_2

CSV Columns

rule_namedescriptiontrigger_typethresholdtime_periodnotify_hierarchyapplies_to_teamsadditional_email_recipientsemail_subjectemail_bodyis_active
5. Historical Attendance (Optional)
Optional
Import past attendance data if migrating from another system.

Instructions

  • •Only needed if you want to import historical attendance records.
  • •team_member_email must match a member from the Team Members template.
  • •date format must be YYYY-MM-DD (e.g. 2025-01-15).
  • •status must be one of the valid values listed in the notes below.
  • •check_in_time and check_out_time format: HH:MM (24hr, e.g. 08:30).
  • •reason and notes are optional free-text fields.

Valid Values

Valid status values:

present | absent | late | half_day | leave | annual_leave | unpaid_leave | paid_suspension | rest_day_off

CSV Columns

team_member_emaildatestatuscheck_in_timecheck_out_timereasonnotes