ERP Integration
ImLate can integrate with iSAMS (a school management system) to automatically synchronize student records and update attendance data.
INFO
ERP integration is optional. It can be enabled or disabled via configuration. When disabled, ImLate works as a standalone sign-in/sign-out system.
What Gets Synchronized
Student Sync
The system periodically pulls student data from iSAMS:
| Data | Direction | Description |
|---|---|---|
| Student records | iSAMS → ImLate | Name, surname, year group, school ID |
| Student photos | iSAMS → ImLate | Profile photos for display on the terminal |
| Registration codes | iSAMS → ImLate | Presence/absence code dictionaries |
- Students are matched by their iSAMS ID.
- A sync hash (CRC64) is calculated from student fields to detect changes — only changed records are updated.
- New students found in iSAMS are created in ImLate automatically.
Attendance Updates
When a student signs in, ImLate pushes attendance data to iSAMS:
| Data | Direction | Description |
|---|---|---|
| Main registration | ImLate → iSAMS | Mark student as present or late in the main period |
| Lesson attendance | ImLate → iSAMS | Mark student as present in the current lesson period |
| Absence marking | ImLate → iSAMS | Mark students as absent if not registered by deadline |
Sync Schedule
Synchronization runs on automatic schedules (cron jobs):
| Task | Schedule | Description |
|---|---|---|
| Student sync | Every 2 hours, 7 AM – 5 PM, weekdays | Pull updated student records from iSAMS |
| Photo sync | 5:00 AM, weekdays | Download student profile photos |
| Registration codes sync | Every hour, 7 AM – 5 PM, weekdays | Update presence/absence code dictionaries |
| Automatic absence marking | Every hour, 8:10 AM – 12:10 PM, weekdays | Mark unregistered students as absent |
Authentication
ImLate connects to iSAMS using OAuth 2.0:
- A client ID and client secret are configured in the system.
- The system obtains access tokens automatically.
- No user interaction is required for the sync process.
Timezone Handling
The system handles two timezones:
| Setting | Purpose |
|---|---|
| App Local Timezone | Used for determining the current time in the application |
| ERP Local Timezone | Used when communicating with iSAMS |
This is important for accurate late detection and attendance period matching.
