GENIE
Feature Spotlight โ€” Enterprise Automation

An Onboarding Machine
That Never Sleeps.

The exact millisecond a student's matriculation number is validated against your institutional database, GENIE fires an encrypted Welcome Email and a WhatsApp onboarding sequence โ€” simultaneously, automatically, without a single manual action from your Admissions or Registry staff.

<100msTrigger-to-dispatch
10,000+Concurrent validations
99.9%Delivery uptime SLA
24 / 7 / 365No office hours
IT DirectorsRegistrarsAdmissions OfficersAcademic Secretaries

trigger_event :: onboarding.validate()

One Validation Event.
An Entire Pipeline Fires.

The trigger is surgical. The moment a student's matriculation number is cross-referenced against your institutional database โ€” whether via a bulk CSV import processed at 3am, a Registrar manually confirming a record in the Web Portal, or an API call from your existing student information system โ€” a Django signal fires synchronously, and the entire onboarding pipeline initialises in the same database transaction.

No polling. No cron job checking for new records every five minutes. No manual "send welcome emails" button your Admissions staff clicks before going home. The validation event is the pipeline trigger. They are the same action.

By the time the Registrar's browser has finished loading the confirmation screen, the student's Welcome Email has already left the queue and their WhatsApp onboarding sequence is live.

# Two triggers. Same pipeline.
BULK_IMPORT โ†’ CSV upload โ†’ batch validator โ†’ pipeline ร— N
MANUAL_CONFIRM โ†’ Web UI click โ†’ single validator โ†’ pipeline ร— 1

genie.onboarding โ€” live event stream

T+0ms

matric_validate(ND/2024/0142)

cross-ref: institutional_db โ†’ MATCH

T+4ms

signal: post_validation_fired

handler: onboarding.pipeline.init()

T+11ms

student_profile.create(stub)

fields: matric, phone_hash, institution_id

T+23ms

celery.task.enqueue(send_welcome_email)

priority: HIGH | queue: notifications

T+31ms

celery.task.enqueue(whatsapp_sequence)

template: ONBOARDING_V2 | lang: en

T+47ms

welcome_email.dispatch()

encrypted TLS โ†’ SMTP relay โ†’ inbox

T+89ms

whatsapp.session.open()

Meta Business API โ†’ message_1_of_3

T+112ms

activation_token.generate()

TTL: 72h | type: JWT_ONBOARDING

T+134ms

activation_link.embed(email + wa)

deep_link: genie.ng/activate/{token}

T+210ms

parent_notify.queue_check()

no parent linked yet โ†’ deferred

T+244ms

pipeline.complete()

status: SUCCESS | student_id: 0142 | duration: 244ms

progressive_profiling.pipeline()

Minimum Data In.
Complete Profile Out.

GENIE does not demand a complete data set before it starts working. It accepts a matric number and a phone number โ€” and enriches the student profile automatically through six automated stages, each triggered by the student's own actions.

Stage 0

Identity Stub

Active

trigger: matric_validate() โ†’ MATCH

Encrypted profile stub created in DB
Welcome Email dispatched (TLS-encrypted relay)
WhatsApp onboarding sequence initiated (3-message chain)
Activation token minted (72-hour TTL)

Stage 1

Account Activation

Queued

trigger: activation_link.click() โ†’ token_verify()

Role confirmed and stored
Password set, bcrypt-hashed at rest
Phone OTP issued and verified
Account status upgraded: STUB โ†’ ACTIVE
Device fingerprint registration initiated

Stage 2

Device & GPS Binding

Queued

trigger: app.first_login() โ†’ device_register()

Hardware fingerprint bound to student account
Campus geofence profile initialised
Anti-proxy baseline established
Push notification token registered
Offline TSDA key set pre-provisioned

Stage 3

First Check-In

Queued

trigger: attendance.submit_code() โ†’ validate()

GPS profile calibrated against campus boundary
Attendance record created (timestamped, signed)
Course attendance percentage initialised
Parent alert triggered if ward linked
Eligibility threshold monitoring activated

Stage 4

Family Network

Queued

trigger: parent.link_ward(student_id)

Parent-student relationship record created
Parent WhatsApp confirmation message sent
Retroactive attendance summary dispatched
Alert subscription initialised at parent tier
Parent dashboard populated with existing data

Stage 5

Full Academic Profile

Queued

trigger: semester_data.complete() โ†’ profile_enrich()

CA scores ingested from lecturer grade submissions
Exam eligibility status calculated and published
Semester transcript record initialised
Academic standing flags evaluated
Full profile: identity + device + attendance + grades

The system never waits for a human to advance the pipeline.

Each stage is triggered by an event the student generates through natural platform use. No Admissions Officer nudges them to the next step. No Registry staff chases up incomplete profiles. The pipeline is event-driven end-to-end โ€” from identity stub at Stage 0 to a complete, academically active profile at Stage 5.

automation.stack โ€” production components

The Stack Behind
the Milliseconds.

Every component in GENIE's onboarding pipeline was selected for reliability under the specific load conditions of Nigerian tertiary enrollment cycles โ€” including the 48-hour registration surge when a new academic session opens.

Django Signals

sync | post_save | validated

Synchronous pipeline initiator

post_validation signal fires within the same DB transaction as the matric confirmation write. Guaranteed atomicity โ€” no validation without pipeline.

Celery + Redis Broker

async tasks | priority queues

Asynchronous delivery engine

HIGH-priority queue for Welcome Email + WhatsApp. FAIR queue for weekly digests and reports. Automatic retry with exponential backoff on delivery failure.

TLS-Encrypted SMTP Relay

TLS 1.3 | DKIM | SPF | DMARC

Welcome email dispatch

All outbound email is signed (DKIM) and dispatched over TLS 1.3. SPF and DMARC records enforce deliverability and prevent spoofing of your domain.

Meta WhatsApp Business API

Cloud API | template messages

WhatsApp onboarding sequence

3-message onboarding chain using pre-approved Message Templates. Handles delivery receipts, read status, and session expiry automatically.

JWT Activation Tokens

HS256 | 72h TTL | single-use

Secure account activation

Each activation link embeds a single-use JWT. Token is invalidated on first use. Expired tokens prompt automatic resend via /resend-activation/.

Threshold Alert Engine

real-time | per-course | per-user

Parent & student alert dispatch

Attendance percentage recalculated on every check-in event. 80% and 75% threshold crossings enqueue parent alerts within the same Celery task chain.

Email Delivery

99.2%

Inbox delivery rate across major Nigerian email providers (Gmail, Yahoo, Outlook, institutional .edu.ng domains).

WhatsApp Delivery

99.7%

Meta Business API delivery rate for template messages to verified phone numbers across Nigeria, Africa, and the Global South.

Retry Policy

3ร— / 24h

Failed deliveries are retried up to three times at exponentially increasing intervals over 24 hours before escalating to the Admin Portal notification tray.

validation.mode โ€” two paths, one pipeline

Bulk Import or One-by-One.
The Pipeline Does Not Care.

Whether you are onboarding 8,000 students from a CSV on Day 1 of session or manually confirming a late-registered student on a Friday afternoon, the identical automated pipeline fires both times.

Mode A โ€” Bulk Import

Upload Once. Onboard All.

Export your student roster from your existing SIS in Excel or CSV format. Upload it through the Admin Portal's Student Import screen. GENIE validates every matric number in the file concurrently โ€” using Celery's parallel task execution โ€” and fires the onboarding pipeline for each validated record independently.

# bulk import benchmark โ€” 5,000 students

validation_time: ~4.2 seconds

emails_dispatched: 5,000 (async)

wa_sequences_queued: 5,000 (async)

failed_validations: flagged in Portal

staff_actions_required: 0

  • Duplicate matric numbers automatically flagged for review
  • Partial imports resume without re-processing valid records
  • Import progress visible live in the Admin Portal
  • Failure report downloadable as CSV after completion

Mode B โ€” Manual Web UI Validation

Single Click. Instant Onboarding.

For late registrants, transfer students, or records requiring manual review, the Registrar confirms the student record through the Web Portal's Students management screen. A single click on "Confirm & Activate" fires the complete pipeline for that individual student โ€” email and WhatsApp delivered before the Registrar's screen finishes reloading.

# manual confirm benchmark โ€” 1 student

pipeline_trigger: click โ†’ 0ms

email_dispatch: ~47ms

whatsapp_open: ~89ms

activation_link_live: ~134ms

registrar_action_end: 1 click

  • Works at any hour โ€” no staff present required after click
  • Identical pipeline to bulk import โ€” no second-class treatment
  • Confirmation visible in Portal audit log with timestamp
  • Resend activation available if student reports non-receipt

Mode C โ€” API Trigger (Advanced)

POST /api/v1/users/students/validate/ โ€” direct pipeline trigger from your existing SIS

Institutions with existing Student Information Systems, ERPs, or custom admissions portals can trigger the GENIE onboarding pipeline directly via API. A single authenticated POST request with the student's matric number and phone number fires the complete pipeline without requiring any Registrar interaction with the GENIE portal.

POST /api/v1/users/students/validate/

Authorization: Bearer <institution_api_key>

{

"matric_number": "ND/2024/0142",

"phone": "+2348100000000",

"programme": "HND_COMPUTER_SCIENCE"

}

โ†’ 201 Created | pipeline: INITIATED | eta_email: 47ms

Role-Specific Capabilities

Every Role. Every View.
Nothing Manual.

IT Directors

API-First Integration Architecture

Every onboarding pipeline event is accessible via the GENIE REST API. Integrate validation triggers directly from your existing SIS, ERP, or admissions portal โ€” GENIE becomes an automation layer on top of infrastructure you already own.

  • REST API with JWT authentication for pipeline triggers
  • Webhook callbacks for validation events (success, failure, duplicate)
  • Real-time onboarding metrics via /api/v1/analytics/onboarding/
  • IP allowlisting for API endpoints at the institutional level
  • On-premise deployment option for data sovereignty requirements
  • Full event log exportable for institutional IT audit trails

Registrars

Live Onboarding Oversight Dashboard

The Admin Portal gives Registrars a real-time view of every onboarding event in progress โ€” active validations, queued deliveries, failed imports, and pending manual confirmations โ€” in one screen.

  • Live counter: validated / pending / failed per import batch
  • Per-student pipeline status: email sent, WhatsApp opened, activated
  • One-click resend activation for non-responding students
  • Batch failure CSV download for follow-up with Admissions
  • Onboarding completion rate by department and programme
  • Audit log: who validated what, and when, with IP address

Admissions Officers

Self-Service Onboarding Token Generation

Admissions Officers can generate institutional setup links and onboarding tokens for specific cohorts, departments, or individual late registrants โ€” without IT involvement and without access to sensitive system credentials.

  • Generate scoped onboarding tokens per department or cohort
  • Set token expiry windows aligned to registration deadlines
  • Monitor token usage: claimed vs unclaimed at any time
  • Revoke compromised or expired tokens instantly from the Portal
  • Bulk resend to all unclaimed token holders with one action
  • Token activity log accessible to Registrar oversight

Before & After

What This Replaces.

The Manual Process

Before GENIE

Day 1Admissions exports student list to Excel
Day 2โ€“3IT manually creates student accounts in portal
Day 3โ€“5Registrar manually emails welcome letters (or doesn't)
Day 5โ€“7Students who received emails begin registering
Week 2Follow-up emails sent to non-responders manually
Week 3+Admissions chases students not yet activated
OngoingLate registrants handled ad hoc โ€” no standard process

Total time: 2โ€“3 weeks ยท Staff hours: 40โ€“120 per cohort ยท Completion rate: 60โ€“80%

The Automated Process

With GENIE

T+0msRegistrar uploads CSV or clicks Confirm in Web UI
T+47msEncrypted Welcome Email dispatched to student inbox
T+89msWhatsApp onboarding sequence initiated
T+134msActivation link live โ€” 72-hour TTL
T+24hAutomated resend to unclaimed tokens
T+48hSecond resend for persistent non-activations
OngoingAll activity visible in Registrar portal โ€” no manual tracking

Total time: <1 second to dispatch ยท Staff hours: 0 after upload ยท Completion rate: tracked live, targeted follow-up automated

onboarding.machine.status โ€” ALWAYS_RUNNING

Your Next Enrollment Cycle
Should Take Seconds.
Not Weeks.

GENIE's progressive profiling pipeline handles 10,000-student enrollment surges, 3am bulk imports, and individual late registrants with the same automated precision. Your Registrar uploads a file. GENIE handles everything that comes after.

<100ms

Email + WhatsApp dispatch

10K+

Concurrent validations

3ร—

Auto-retry on failure

0

Manual steps after upload