Create Parent Portal User
Create Parent Portal User
Time Required: 3 minutes Module:
openeducat_parentUser Role: Parent Manager
Overview
Create a portal user account for parents so they can log in and monitor their children’s academic progress. The parent portal provides access to grades, attendance, fees, and notifications.
Prerequisites
- Parent record exists with linked students
- Parent has valid email address
- Students have portal users (optional but recommended)
Step-by-Step Instructions
Step 1: Open Parent Record
- Navigate to OpenEduCat > Parents > Parents
- Open the parent record that needs portal access
Step 2: Verify Email
Ensure the parent has a valid email address:
- Check Email field on parent record, OR
- Check Email field on linked contact (res.partner)
The email will be used as the login username.
Step 3: Create Portal User
- Click the Create Parent User button
- System automatically creates user account
What Happens Behind the Scenes
# System creates:user = res.users.create({ 'name': parent_contact.name, 'partner_id': parent_contact.id, 'login': parent_email, 'is_parent': True, 'group_ids': portal_groups, 'child_ids': student_user_ids # Links to student accounts})Key actions:
- Creates
res.usersrecord with portal group - Sets
is_parent = Trueflag - Links parent user to student users via
child_ids - Uses email as login credential
- Sends welcome email with login instructions
Step 4: Verify User Creation
After clicking the button:
- User field on parent form now shows linked user
- Portal user appears in Settings > Users
- Parent can log in at
/web/login
Field Changes After User Creation
| Field | Before | After |
|---|---|---|
| User | Empty | Shows linked user |
| Button | ”Create Parent User” visible | Button hidden |
Parent Portal Access
Once portal user is created, parents can:
| Feature | Community | Enterprise |
|---|---|---|
| View student profile | Yes | Yes |
| View enrolled courses | Yes | Yes |
| View attendance | No | Yes |
| View grades | No | Yes |
| View fee status | No | Yes |
| Receive notifications | No | Yes |
Portal Login Process
- Parent navigates to institution website
- Clicks Login or goes to
/web/login - Enters email (username) and password
- Accesses parent portal dashboard
Access Rules
Parents can only see:
Students where:- user_id = current_user.id, OR- user_id in current_user.child_idsThis ensures parents see:
- Their own record (if they’re also a student)
- Any student linked via child_ids
Troubleshooting
Button Not Visible
Problem: “Create Parent User” button doesn’t appear.
Solution:
- Check if
user_idalready has a value (user exists) - Verify you have Parent Manager permissions
- Ensure parent record is saved
”Login Already Exists” Error
Problem: Cannot create user - login already taken.
Solution:
- Check if parent already has a user account
- If using same email for multiple parents, they must share one account
- Change email to unique address
Parent Cannot See Student Data
Problem: After login, parent sees empty dashboard.
Solution:
- Verify students have portal users created
- Check
child_idson parent user includes student users - Re-save parent record to trigger child_ids sync
Welcome Email Not Received
Problem: Parent didn’t get login credentials.
Solution:
- Check spam/junk folder
- Verify email address is correct
- Manually reset password via Settings > Users
- Send credentials manually
Example: Create Portal User for Father
Scenario: Enable portal access for Robert Smith (father).
Before:
Parent: Robert SmithEmail: robert.smith@email.comUser: (empty)Students: John Smith, Jane SmithSteps:
- Open parent record “Robert Smith”
- Verify email is set
- Click Create Parent User
After:
Parent: Robert SmithEmail: robert.smith@email.comUser: robert.smith@email.com (portal)Students: John Smith, Jane SmithResult: Robert can now log in and view John and Jane’s academic information.
Child Account Synchronization
When students are updated on parent record:
# On parent.write() with student_ids changes:student_user_ids = [s.user_id.id for s in parent.student_ids if s.user_id]parent_user.child_ids = [(6, 0, student_user_ids)]This keeps parent-student portal links synchronized.
Security Permissions
| Action | Required Group |
|---|---|
| Create portal user | Parent Manager |
| View parent records | Parent Manager |
| Login to portal | Portal User |
| View own data | base.group_portal |
Related Topics
- Create Parent Record - Setting up parents
- Configure Access - Portal permissions
- Student Portal - Student portal setup