πŸ‡΅πŸ‡°
Compliance setup β€” this guide covers statutory, payroll, privacy, and regulatory requirements. Octal HR is configurable for different countries, regions, and organizational policies.

Switching to Octal HR from an existing HR system, spreadsheet, payroll solution, or another HR platform? This guide walks you through planning and executing your data migration to ensure a smooth transition and complete data transfer.

Migration planning checklist

Before you start importing data, complete these setup steps in Octal HR:

Create all departments (must exist before importing employees)
Create all designations
Configure your fiscal year and currency (PKR)
Add public holidays for the current year
Set up leave types and leave balances
Configure salary components (BASIC, HRA, TA, EOBI, etc.)

Supported import formats

Octal HR's built-in imports all use Excel (.xlsx) templates, downloaded from the relevant import screen:

  • Employees β€” under HR > Employees > Import (also covers work history, education, skills, dependants, certifications, distinctions, and biometric IDs)
  • Attendance β€” under HR > Attendance > Import
  • Public holidays β€” under the Holidays screen
  • Payroll β€” under Payroll > Import, for loading the current period's payroll input
  • Assisted migration β€” For a large workforce or complex data, contact our migration team via support.

Importing employee records

Follow the steps in How to add employees via bulk import for the full walkthrough.

Key tips for migration imports:

  • Use the employee's existing employee code (from your old system) in the Employee Code column to preserve it. Codes must be unique.
  • Import all employees first, then set salary structures. Don't try to do everything in one go.
  • Set the Join Date to the employee's actual original joining date β€” not today's date. This is used for service-tenure calculations.

Troubleshooting common migration issues

  • Dates in the wrong format β€” Use YYYY-MM-DD. The importer also reads Excel's own date cells, but a plain YYYY-MM-DD string is safest.
  • Duplicate email errors β€” Each employee's email must be unique. A row whose email already belongs to another employee is skipped.
  • Department or designation not found β€” Create the department or designation first so the imported name matches an existing record.
  • Code already exists β€” Rows with a code that already exists are skipped unless you turn on the Override toggle to update those employees.
Need help? Our support team offers free 30-minute migration calls for any plan. Email info@octalhr.com with your current system name and number of employees, and we'll schedule a call.