Sending Invoice Emails to Parents

Last Updated: 2026-05-27 | Applies to: IK v1.2+

Email Sending System

InstitutionKit uses a batched email system to avoid server overload:

For 10 or fewer invoices:

  • All emails sent immediately
  • Shows: "✅ X of Y emails sent successfully!"

For more than 10 invoices:

  • First 10 sent immediately
  • Remaining queued for cron job
  • Shows: "✅ First batch: 10 emails sent. 📋 50 remaining queued for cron (10 every 4 minutes)"

How to Send Invoice Emails

  1. Go to 💰 Fee Management → 🧾 Invoices
  2. Select a class from dropdown
  3. Click "📧 Send Invoice Emails"
  4. Confirm the prompt
  5. System processes and shows results

Email Queue System

How the queue works:

Step 1: User clicks "Send Invoice Emails"Step 2: First 10 invoices → Sent immediatelyStep 3: Remaining invoices → Stored in wp_options as 'ik_pending_invoice_emails'Step 4: Cron job runs every 4 minutes → Sends next 10Step 5: Repeats until queue is empty

Checking Email Status

Click "📊 Check Status" button to see:

┌─────────────────────────────────────────────┐│  📊 Email Queue Status                      │├─────────────────────────────────────────────┤│  📧 INVOICE EMAILS                          ││  Pending: 45 | Sent Today: 25               ││  Processing at 10 emails every 4 minutes    │├─────────────────────────────────────────────┤│  🔔 PAYMENT REMINDERS                       ││  Pending: 12 | Sent Today: 8                ││  Processing at 10 reminders every 4 minutes │├─────────────────────────────────────────────┤│  📋 RECENT SENT EMAILS                      ││  Type      │ Recipient       │ Student │ Time││  📧 Invoice│ [email protected] │ John Doe│ 9:30││  🔔 Remind │ [email protected]    │ Jane S. │ 9:34│└─────────────────────────────────────────────┘

Email Logging

All sent emails are logged in institutionkit_email_log:

ColumnDescription
email_typeinvoice_email or payment_reminder
recipient_emailParent's email address
student_idLinked student
invoice_idLinked invoice (for invoice emails)
subjectEmail subject line
statussent or failed
sent_atTimestamp

Parent Email Lookup Order

The system checks multiple sources for parent email:

  1. Student meta: _ik_email
  2. Student meta: _ik_guardian_email
  3. Student meta: _ik_parent_email
  4. Linked parent user account email

Important Notes

⚠️ DO NOT click "Send" multiple times for the same class. The cron job handles the queue. Multiple clicks create duplicate queue entries.

⚠️ Large classes (100+ students) will take time. The system processes 10 emails every 4 minutes. A class of 100 students takes ~40 minutes to complete.

Quick Apprentice Addition Guide

Now paste into your Thrive Apprentice course:

Chapter: Fee & Invoice System

  • Lesson 3: "Generating Invoices - Automatic & Manual Methods" (Article 19) ✓ NEW
  • Lesson 4: "Recording Payments and Managing Transactions" (Article 20) ✓ NEW
  • Lesson 5: "Generating Professional PDF Invoices" (Article 21) ✓ NEW
  • Lesson 6: "Sending Invoice Emails to Parents" (Article 22) ✓ NEW

Your Complete Fee Module Documentation:

Lesson #TitleStatus
Fee Lesson 1Setting Up Fee Types✅ Complete
Fee Lesson 2Creating Fee Structures✅ Complete (Article 18)
Fee Lesson 3Generating Invoices✅ NEW (Article 19)
Fee Lesson 4Recording Payments✅ NEW (Article 20)
Fee Lesson 5PDF Invoice Generation✅ NEW (Article 21)
Fee Lesson 6Email Invoice System✅ NEW (Article 22)

Complete Knowledgebase Progress:

ChapterLessonsStatus
Getting Started3 lessons✅ Complete
Installation & License2 lessons✅ Complete
Multi-Campus Management3 lessons✅ Complete
Fee & Invoice System6 lessons✅ Complete
Communication1 lesson🚧 In Progress
Student Management4 lessons✅ Complete
Payroll & Expenses0 lessons⏳ Pending
Exams0 lessons⏳ Pending

Comments are closed.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
💬 Ask Me Anything!