v2 Review — Stakeholder Ramblings (Lejla, raw input)
Okay, now I want you to document all of my narrations about what I need to have in the backend. I'll be sending it out in portions, and you just keep track of everything. Then, when I'm done, compile it into one MD file.
So let's go. What I was requested to do is capture everything that I need to be present in the backend so the dev team can work on it and make it come to life. Now the Quran Flow backend is being used by multiple people. The main one we need to focus on is the admin, so the person who is running operations. There are also other people who will be using the backend, namely CS staff and our head of academics, but having them have full access is not an issue. Let's start in the Quran Flow backend. There are several things that I need to be able to manage:
- Manage students individually and as groups
- Manage semester settings
- Manage content that is available for students for that semester
- Scheduling of live classes and one-to-one appointments
- Manage teachers, billing, and payment
- Have a reporting system and a reporting section
- Have admin and system settings
- Communication management
- Bug reports
So let's start with student management. There needs to be a separate section in the navigation that's solely for student management. I need to be able to access a full student list and have the options of choosing which semester I want to look for, or if I want to take all semesters into consideration. I need to be able to also filter out by semester, filter out by students' enrollment course (meaning their level or their mastery course that they're taking). Another thing I would like to be able to do is filter students by different criteria, such as gender, them being active or inactive, and having all the relevant student information at a glance in that student list. The student information that I would like displayed in the list are:
- Their name
- Their email
- Their assigned teacher (if they have one)
- Their level or mastery course
- Other gender
- The semester they are currently in
- The number of submissions they have submitted for the active semester
- For mastery course students, the number of meetings and number one-to-one appointments they had scheduled up until that point also, it would be good to have their status if they are an active student or an inactive student. I would need, for the list, the filtered list or the entire list to be able for me to select the list that I'm seeing and then export it with all the information.
I also need to be able to add a student account manually.
Now, as far as individual student management is concerned, when I click on a student, I want to be able to have the following data: All of the student enrollment and personal data needs to be editable by admin
- Their name
- Their age
- Their time zone
- Their email
- Their phone
- The device type
- Their gender
- The country they're from That's their personal information. For their semester information and enrollment, I need to know:
- Their level or mastery course that they are taking
- If they are assigned a TA and which TA that is
- What their current semester is (I guess some type of enrollment ID or identification)
- Their enrollment status (so are they active or inactive) That's what their student profile should have. Let me see if we're missing anything. I would like for there to be a notes tab for a personal account where the admins can keep any notes or links to tickets that make it easy to manage whatever special case that student might have. The second tab under their profile should be submissions if they are a recitation essentials student.And it should be an appointments tab in case it's a mastery student. Under submissions, I want to be able to see there are submissions in the current semester, in the active semester. Ideally, we would want access to the previous semesters as well and an option to have the entire semester for all semesters, so have a list of all semesters for the submissions. I need to see:
- the submission week
- what submission it is
- the level of the submission
- the status of the submission
- a grade
- reviewed by date
- date submitted
- review date
- and rejection reason (in case it's possible) I also need to be able to access the recordings of both the submission and the feedback, and to be able to copy and send links for the student in case they need it. I also need to be able to download it if needed. Moving forward, I also need to be able to, as admin, delete one of these submissions manually or select all of them and delete all of them and also sep, so that's deleting the recording. Separately, I need to be able to reject a submission that's under review so that it doesn't count towards the submission that the student has already made, so it doesn't count towards the two submissions per week limit.
We have a two submissions per seven days limit that we give to our students. In the submissions tab for a particular student, I want to be able to add a desired number of submissions per week as an exception. Let's say that student needs to submit three submissions to catch up. I can add one additional submission exception to their personal account and have that student submit it in addition to what they already have as a baseline limit, so make this on a week-by-week basis.
I also need payment options. For the payment overview for the student, I need to see:
- what the plan is
- what period is covered by the payment
- if for recurring payments, what the next billing date is
- what their status is
The status for payments can be; we'll have to discuss what the status for payments needs to be. Stripe, let's say, subscription ID, that's also good. I need to know the entire payment history and all the transactions for that student. I also need the special cases, like:
- scholarships
- family plan
- deferment on family plan
I need to have a good overview of who is on that plan, their payment method, and also their card information. I need a cancel subscription button. I need a Cancel and deactivate now, and then cancel and deactivate at a certain date. What happens is that sometimes the student will cancel their subscription, but their payment still covers a few days or a few weeks of subscription. We want to have them regain access. We want to have them be able to access the account for as long as their subscription is active or the payment allows, and we want their account to be deactivated automatically once their subscription runs out.Now, pause billing would also be good, but to have a date for unpausing also. Send payment link would also be good for the cases of a bounced payment, so that would be good: if the payment fails, then send the payment link as an email; that would be good.
For students who are Mastery Core students, they would have the appointments tab, a list of upcoming and past appointments, both upcoming and past appointments. Ideally, this would also allow for viewing appointments in the previous semesters as well, so that would be good.
When it comes to appointments, I need to know:
- what time it is EST
- what the TA is
- the status of the appointment (upcoming, completed, or cancelled)
- who cancelled it in case it's cancelled
I need to be, as an admin, able to:
- reschedule the appointment manually
- cancel the appointment manually
- schedule an appointment for this person
For semester history, there should be a tab called Semester History which shows all of the semesters that this student was a part of. It should give the option to show all semesters. It should show:
- what level they were in that semester
- what your status was for that semester (were they enrolled? Did they cancel, defer? Did they drop out essentially? We want to know if they completed, so a status of the semester could be completed, failed, cancelled, or something like that, and then the fourth one would be deferred)
I need to know:
- what level it was, or if it was a Mastery course, which course it was
- what TA was assigned to them
- how many submissions they have
- what the average grade was for that semester
Another tab that I need is the Actions tab, which allows me to do some academic and account actions.
- I need to be able to graduate a student manually. Graduating a student means that they are being promoted to the next level in the upcoming registration semester, and I need that graduate button to then turn to undo graduation.
- I need to be able to reset lesson progress. I need a reset button that clears the student's information for the current semester, and I need to be able to reset to level zero, so the first assessment.
- I need to have a button to be able to do that.
- Although the deactivate account and cancel subscription, just as we had in the payment section, would be good to have it here as well.
- A set and send a temporary password would also be good to have.
- Resend registration email is also needed.
One other thing that's needed in the actions tab is to enroll in a mastery course that would allow us to manually enroll a student in a mastery course.
Now let's see what else.And there needs to be a separate tab for admin notes where the admin or CS team will leave all of the needed context to better understand the student situation.
Now, when it comes to student management, because we had several migrations over the past semesters, what I would like to do is to be able to enter students' semester history and payment history manually to their account and Also to be able to import it from our previous databases
Now, the second subsection I need under student management would be something like a new semester registration tracker. This subsection would essentially serve only for the registration period of the new semester, where it would show a list of students who are enrolling in the registration semester.It would display both the old students who are joining the semester and the new students who are joining this semester. You could suggest what the name of that would be, but essentially the list would show:
- students' name
- email
- current level
- previous level
- registration semester,
- semester enrollment date,
- And for level zero students, an indication of whether their first assessment was sent in or not
- and then it would show one of several different statuses for that student. It would be either:
- graduate
- repeat
- new student
I would need to be able to filter this list by semester to select which semesters I'm interested in. It would default to showing the current registration semester, but you could choose which semester you want to look at, or if we want all semesters. Of course, for mastery students, it would also show your mastery course they're currently enrolled in, and it would allow an export function.
Now, one important feature that I would need in this section is to be able to filter out level zero students who haven't submitted their first assessment and select all of them and promote them to level two, which is how we handle students who have signed up but haven't been placed in a level
And the third subsection under the student management section would be failed sign-ups. Failed sign-ups need to be explored, but essentially those are the students whose student account isn't created for whatever reason, like internal failure, or they went through the checkout process but their student information wasn't created or updated on the backend. All this information is needed:
- their name
- their email
- their registration date
- their status as a failed sign-up
- device
- phone
It would allow us. I would need a few buttons for each of the students:
- to resend them their registration
- to resend them their credentials
- to delete the account
- I would need to be able to manually activate their account so to change your status from failed to active.
The fourth subsection under student management that I would like to have is submissions management.
Submissions will have two views:
1. The view of the assessments: the title of the assessment, the description, the level, the semester, the total submission count for that assessment, and how many of those are still under review. If I were to click under, I know how many submissions are still pending. I could filter this out by semester and by level, because only levels 1 to 4 have submissions.
2. A submissions view that shows each individual student who made a submission. I need their name, their assessment (the name of the assessment), the week, what level they are, what the status of their submission is, who reviewed it, the date when the submission was uploaded, and when the feedback was received. I need to be able to access the audio files for these submissions and the feedback. For any submission that's under review, I need to be able to assign that submission to another teacher. I need to be able to click on the submission, but I have a button that allows me to reassign the submission to somebody else for that particular person. I need the student's gender also in that list. Also, for submissions which are under review, I need all of those who haven't been responded to in 48 hours on work days to be flagged as a late response. And for an automatic reminder be sent to the teacher to respond to that submission
For this submissions view, I need to be able to access them by:
- semester
- level
- status (either reviewed or under review)
I also need to filter it out by the teacher as well. I also need a search field so I can search for the student.
Also, in these submissions, when I open that sub-section, there needs to be a button for closing submissions in case I want to close submissions manually at a certain date. There also needs to be a display of when the submissions are closing based on the automatic semester dates list, and for me to be able to change that. Let's just say I do not have a close submissions button, but have a date selection option where you can select the date when these submissions will close, after which the students will not have access to these submissions.
Now, moving on to semester management. In semester management, I need a semester, main semester, subsection where I can see all of these semesters that we've had ever. I need to be able to view:
- the name of the semester
- the start and end date
- registration status (if it's closed or open)
- the semester status (is it completed, active, or draft)
- how many students were enrolled
- enrollment progress
Also, here I need to be able to create a semester that has this relevant information available. For each of the semesters, I need to be able to edit it or delete it. These semester main information would be:
- start date
- end date
- registration start date
- registration end date
- content availability date
- Submission close date (we’re not intaking submissions any more)
I need status controls for:
- registration opens
- semester is active
I also need the auto transition button that will start semester, end semester, close and open registration as per the available dates, so the one that does it automatically.
The second tab in the semester setup should be the Semester start checklist. This portion should have the following under configuration:
- Semester holidays
- Teacher assignment criteria
- Live session schedule
- One-to-one schedules
This should be more of a checklist for the admin, and it should not be tied to other parts of the backend, so it serves more of the checklist. Each one of these options should lead to a configure page. When you click, there should be a configure button. When you click on it, it should lead you to a configuration page. There should also be a button that allows you to add a note under each one of these. There should also be an option for you to add a setup checklist item for that semester in particular. If there's anything else that needs to be added to the checklist, just add it there.
The third tab in the semester set up should be a semester end checklist. The default items on this checklist need to be discussed, but it should also have an option to add custom checklist items.
The fourth: the semester management also needs to have an onboarding support tab where all of the resources and helpful elements of the app experience are for the students. There need to be:
1. A Telegram group link where you can add a Telegram group or a WhatsApp group link and then define which students have access to that.
2. A section for welcome videos where a video can be added to the home screen so new students can see the tutorial upon opening their app.
3. A countdown timer which can be activated or deactivated, showing the start of the next semester for new students who are onboarding to kind of have a better understanding of when the semester is starting.
Now moving on to the content section. This will include all of the content and resources the student has access to. There is a subsection that's Video lessons. Those are all the video lessons for all the levels and mastery courses. I need to be able to add a video lesson manually by adding several videos, specifying the week number, and adding the video links. Also, I need to be able to add descriptions and titles to these video lessons and add several videos per lesson. What I would need is to be able to add these lessons once and then for them to be used and repurposed for these semesters to come. Ideally, I would like to be able to have a copy of this initial list for each semester that I can tweak if needed, but I do need a master list that I can just upload once and then have that be our source for video lessons.
For the video lessons, I need to be able to filter it out by semester and by level/Mastery course.
And of course I need a button to add the video lessons. And of course I need to be able to delete each one of the videos that was uploaded on both the semester copy and our master list.
Second subsection that I would need is Assignments. Here I could upload the submission assignments for students. What would need to happen is for me to be able to add a new assignment with a title and a short description, and then I would need to be able to add the text that I would be using, both the instructional one and the Arabic reading assignment. I would need to be able to create to insert instruction plus the assignment in such a way that I could specify what I want to be displayed on each screen. If the assignment has multiple screens, I want to be able to break it up in a way that I feel it should be done as we currently have, so I want to be able to specify multiple screens for the assignment.And as for the video lessons as well, what I want for this assignment subsection is to have an overview of the list of all the assignments for:
- what week it is
- what level it is
- when it was created
I also need to be able to delete individual assignments, either for the general set up or for that semester set up. Ideally, we would have a global assignment base, and then we would have a separate semester copy that can be tweaked for that semester only. I need to also be able to filter assignments by which semester we are talking about and which level we are talking about. And of course I need the button to add the assignments.
Now moving on to resources. The third subsection of the content is resources. Resources are all the additional helpful resources that we have for the students. This could be like PDF documents, class notes, helpful videos, or websites. What I would like is to be able to add resources like videos and video lessons and weekly assignments. I would like to be able to add a resource to show the title, the file type, and for me to be able to add documents like PDF documents and links and video links, and also to show what level it is. I want to make it so that I can add multiple levels and courses to one resource that then becomes available to the entire, for everybody who is selected. Also, the size and the created date. Ideally, this would also have a delete button, but this also needs semester filtering and level/mastery course filtering, and for us to search by title. Ideally, we would again, as with the previous, have a semester copy, and then there would be a master list, so ideally that would be the case you
Now, moving on to recordings. For every live class that we have, there is a recording automatically generated and uploaded to our Zoom cloud. Ideally, we would want to automatically upload all of those recordings to the backend and make them available or tag them to the appropriate levels and genders. Where classes are gender-specific, we would want to automate this process, because before we had a person who was doing the uploading in the recording section.
Of course, we need to be able to add a recording manually, but it would just be listing out all the recordings, the name. Ideally, it's in the format of:
- week number
- class name
- is it a lesson class or a QRC
- the date of the live class
- the host
- the time of the class
It kind of covers everything so the student can see if that's the exact class that they are looking for. In this particular subsection, I would need to be able to delete individual recordings and also to search and filter out by semester and by level/mastery course.
Now, moving on to the next section, which is scheduling. We have two types of live sessions that need scheduling:
- Live classes
- One-to-one appointments
Those are the ones that we need for scheduling live sessions. Now, as far as live classes are concerned, we have generally three types of live classes:
1. QRCs (Qur'an Reading Circles)
2. Lesson classes (a weekly class for each level/mastery course where that week's lesson is being taught)
3. Office hours
Now our sessions are usually recurring, so they recur at the same time and day each week. I need to have a "Create Session" button that will add a session and the ability to signal that it's recurring. When adding a new session, I need to be able to specify:
- the session title
- the session teacher
- the day and time
- the Zoom link
Now, because most days of the week and time and so on, I would need these sessions to start at the semester start date and, by default, end at the semester end date. When adding a session or editing a session, I need to be able to add a different end date or add a session that only occurs once, so it doesn't occur every week but only on a specific date and specific time, so that one is not marked as recurring.
Also, ideally I would want to be able to bulk add sessions. For example, if we have 12 sisters' QRCs, I would go to bulk add and then just specify the name of the session, which is Sisters QRC. I would then click a plus button and just keep adding different information for different sessions, which is date, time, and teacher. I would bulk add them all together so the bulk adding would be all the same name but just different times and days for the recurring sessions. Also, I need to be able to edit, delete any of these sessions.
For the live sessions, I would also need a calendar view that allows me to see these sessions as they show up in the calendar. The calendar view is from Monday to Sunday, displaying sessions in different colors for different types of sessions. If there is, for example, a level class session, it should be one color. If there is a brothers QRC, it should be a different color, and if there is office hours, it should be a different color.
One thing also: I can filter the calendar view by TA, by gender, by level, like selecting how many levels I want. I also need to have a week or month view for the sessions.
One important thing that I need to be able to do is to select a session (a singular session) from the calendar and cancel it. When I cancel it, it shows up as canceled on the students' app, and it also sends out a message that it's been canceled. Also, in the calendar view, I should be able to select any session and mark it as inactive so it doesn't show up on the student's calendar. It's for last-minute cancellation, but inactivating a class could be due to something that we know already in advance and that can be reflected in the calendar as well. Also, I need to be able to click on any session and reassign that session to another teacher. In the case where there is a teacher who is on a break during a certain time, that session in the calendar view should be flagged as needs replacement.
Now moving on to appointment schedules. I need this subsection to be appointment schedules that have a calendar that has a way for me to enter new one-to-one appointments. The one-to-one appointments allow me to add a new time slot. It defines a weekday from and to date, so a start date and end date, and what time slot. It would also be good to have a bulk add, meaning that for a single TA I could add multiple appointment slots in one go, just keeping the same TA by just adding different time slots.
Ideally, I would have a list view and a calendar view of all the appointments and appointment slots that are added. Ideally, when adding appointment slots, it doesn't have to span across the entire semester; it can break off in the middle of the semester. For the calendar view and the list view, I need to be able to filter by:
- TA
- gender
- mastery course
I also need to have a weekly and a monthly view.
I also need to be able to view appointment scheduling. That is, appointment schedule, and then I need a separate subsection, which is upcoming appointments. This is appointment management, which shows the date, times, the student, the TA, and the status of the appointment. It is either:
- upcoming
- completed
- no show
- rescheduled
- cancelled
I need to be able to cancel an appointment or delete an appointment. I need to be able also to reschedule an appointment from this section.
I need to be able to filter this list by status, by TA, by date (selecting a date or a date range). I need to be able to send a message or an email informing the student of the reason for their cancellation from the admin side. I would need to be able to make different templates for the reason why we cancelled the appointment, and to be able to select from the template and send it.
I also would need to be able to add a singular student appointment, which is different from a TA schedule way of doing things. In this, adding a singular student appointment, you would specify the exact students on the exact date and time and select the TA and create an appointment just for that student. The reason is because sometimes TAs will give additional timings for certain students that you know to accommodate them, and we need to be able to make that appointment available for the students.Ideally, the upcoming appointments will also have a calendar view.
There also needs to be a holiday subsection where we define holidays and what the effect on the holidays and breaks is. This would define what the holiday is:
- Is it affecting QRCs, live sessions, office hours, one-to-one appointments?
- What date or date range it is?
If any of the TAs are taking a break, we add that here so we specify this teacher will not be available for these sessions. It blocks off their one-to-one appointments and flags their live sessions for those days as needing to be assigned to another teacher.
When it comes to one-to-one appointments and live sessions, all of those are semester-specific. Having a bulk duplicate to the next semester, to the upcoming semester, button would be useful.
The last subsection in the scheduling section would be one-to-one appointment usability. This section would need to show if almost all appointments are used up, and it should be gender specific. You should be able to see, for all the sisters' appointments or all the brothers' appointments, how used up they are and how booked they are, so we can add additional slots if needed. It should also show week by week which slots aren't being utilized. If we see a certain slot not being utilized for two or three weeks straight, then we would just take that slot out. It would be great if there was a remove slot from the calendar button that would make for an easy removal of these appointment slots that are not being utilized.
Now moving on to teacher management. I need a subsection that is just teachers that lists out all of our teachers with:
- their emails
- their status Active and active.
- their gender
- the number of assigned students in the selected semester
- also what their average response time is
- how many live sessions per week they are scheduled for
- How many live session slots are there per week
I need to be able to filter teachers by their status (active/inactive) and by their gender, And also by the semester. When a new semester is created, our entire teacher list is automatically copied to that semester.I need to be able to add or remove a teacher, or permanently delete.
As far as the teacher profile information, I would need:
- Their name
- Time zone
- Email
- Status
- Gender
- All of the stats that are already in the list
- The number of assigned students
- The average response time
- The number of time slots per week
- The number of sessions per week that they are assigned to have their live session and one-to-one schedule
Also viewed and being able to also add a personal leave or personal holiday from their account would be very useful.
Also, their performance would be useful:
- Average response time
- The number of submissions for this semester that they received
- The average grade they give to students
- How many pending reviews do they have
- What's the student pass rate
That will be useful information.
Now the next subsection in the teacher management is the teacher assignment criteria. The criteria will define how all of the students who are enrolling in the upcoming semester are being assigned to teachers when it comes to our residential and central students (i.e., year 1 students). All of the new students, old students, and repeat students are being assigned to teachers.
The information that needs to be added here is the following:
- The teacher assignment criteria needs to be semester specific, so I need to be able to add a semester teacher assignment criteria.
- The information that goes there is which students are being assigned to female teachers, which teachers are taking female students and which are taking male students. This can be automated in a way to simply match the gender of the TA to the gender of the student.
- What needs to then be established is what the maximal student capacity for the semester is for each TA, which TAs are dealing with which levels and which students, and which TAs are dealing with new students and which are dealing with repeat and graduate students. This needs to be reflected. We usually do not assign the same teacher even if the student is repeating, but we stick to these rules.
- What needs to be prioritized is that the student is assigned to the same gender teacher who handles their level and handles new or returning students.
- What also needs to be defined is that the number of students is equally distributed based on a weight algorithm. If one TA can take 10 students and another TA takes 50, and we have 6 students in total, they should be distributed fairly so that everybody gets their 20% filled out. The one that's taking 10 students gets 1 student and the one that's taking 50 students gets 5 students.
So, moving on to the communication section. Here we manage all communication that's directed to either students or teachers or both. There are several sub-sections here:
- Automation emails. We have automation emails that are being sent out at the beginning of the semester, at the end of the semester, at the middle of the semester that are either handling onboarding or enrollment in the next semester. Sending out emails that are automated and triggered by certain events or dates. In this section, I need to be able to set up emails and assign them to specific scenarios that will be automated. I need to be able to write formatted drafts of these emails and for the emails to be able to reference semester start date, semester end date, and such data, and for the automation emails to be assigned to a particular semester. Also, I need a sequence view with dates and exact emails that will be sent for an example student. If I search for a student's name, I can see which emails they will receive in the future and on what dates they will receive them.The next subsection will be blast emails, where I am able to compose an email or choose from a list of templates and then send it to a list of students. Here I can select a list by:
- level
- the course they're taking
- gender
Or I can copy and paste a custom list from our student reports. Here I can also create templates that will be used for futureThe third sub-section will be push notifications. This will allow me to draft a push notification or a message that is then sent as a custom push notification to the selected students. Again, this can be either filtered by level or course, mastery course or gender, or only specific students, or only specific students like a custom list. The push notifications are intended to inform students of any urgent or time-sensitive changes in the program.
The next subsection in communication will be the announcement board, where I will be able to draft a message that's then posted to the announcement board of the students and/or teachers app. The announcements are meant as program updates to inform students and/or teachers about ongoing changes, fixes, surveys, and so on. The announcement board I'm able to filter by different categories, like:
- all students
- all teachers
- by level
- by mastery
- by course
- by gender
The next subsection is the private message subsection that allows admins to send and receive private messages to and from the students in their QF inbox.
And the final subsection in this section, in the communication section, is the communication logs, which show every message that's been sent and capture every message that's been sent out to any of the users (students/teachers). Here I need to be able to filter the messages by type (meaning email, push notification, and announcement), and then also I need to be able to search by the name of the student or teacher, by their email.I need to also be able to filter by date range, search by title or content of the message. The message also needs to be flagged as failed in case it wasn't delivered to the student or teacher.
Any of the communication from the backend to the student can be done in the name of one of the TAs as well, or under the name of one of the admins.
Now moving on to payments and billing and payments, I need a general Payments subsection where all of the payments are listed chronologically, so there's:
- date
- student name
- student email
- the amount
- the payment plan status
- their payment method
In this portion, I need to be able to filter out by:
- semester
- status
- date and time (date from and to)
- search the student by their email
I need to be able to export these payment statuses. The plan is reflective of all the plans that we have going on, which are:
- full payment
- semester
- full semester installment
- scholarship
- family plan
- etc.
The status is:
- succeeded
- failed
- deferred
I need to be able to click on a student and then add it there, and I need to be able to click on a student and review their payment history. In case there is a failed payment, I need to be able to send out a reminder email that the payment failed with the invoice to pay the payment, and then for that information to be captured. Also, one of the possible statuses would be refunded.
That's as far as payment management is concerned, and, of course, search by student name or email. I also need to be able to fully refund a payment and partially refund a payment. That's as far as payment management is concerned.
Now, moving on to other subsections of billing and payments. I need a subsection that's payment plans. That's essentially just allowing me to view current payment plans that we have offered. Here, I would have them grouped as:
- Standard plans
- Family plans
- Scholarships
- Discounts
What can be displayed for each of the payment plans is:
- the name
- type (being one-time and installment)
- the amount and currency
- location if it's synced with Stripe
- how many active users are using this for the current semester
Ideally, this could also allow me to filter through semesters, so for payment plans there would be a filtering option for semesters. Again, I would need to be able to create and add a plan.
Here I would also be able to:
- delete a payment plan
- edit a payment plan
- view, upon clicking "View all", the active subscribers who are on this plan
- of course, I could create a plan as well
Hello. Now I need a separate subsection that's Family Plans where I create a family and have:
- the family name
- the card holder name
- the list shows the number of members
When clicking on Ahmed Family, or when clicking on one singular family, they are all members of the family listed. Each one of them has a payment associated with their name with a percentage of discount. The way we do discounts is we discount the price of a singular subscription by a certain percent. Every member might have a different discount because it's different for essentials and mastery students. Some of these students may be repeating, but essentially this would be that some of the students might not have an active subscription.
In the family management, I would need to be able to see:
- all of the students' names
- their levels or their mastery courses
- what their subscription status is
- what their status in the semester is (if they signed up as a repeat student, if they signed up as a regular student that's just continuing, if they signed up as a mastery course student)
This needs to be available in the family management.
Another subcategory would be coupons, where we just have:
- coupon names
- codes
- amount of discount
- the semester that the discount is associated with
- expiry date
I should be able to edit those, delete, and create new ones.
And there should be a payment overview, or the main payment dashboard, that's showing:
- how many active subscriptions or active payments they are
- what's the revenue for the current semester
- flagging any failed payments
For failed payments, you should list out the students with:
- the amounts
- the failure reason
- the number of attempts for reclaiming the payment
- when the last attempt took place
The actions that should be done are:
- to cancel the attempts
- then send a reminder
- and to view the student
This can also have expiring scholarships, deferments that are due to be resumed.
There needs to be a reporting section, and the reports will range from financial, student reports, student composition reports, etc. These statistics are we looking at and tracking are still to be defined.
Another section that needs to be is Admin and System. Under that, there is an Admins subsection, which is essentially creating admin accounts. It just has a list of all the admins you can:
- create an admin
- delete
- edit name
- give the admin user name, email, their permissions (if it's full or view only), status (if it's active or inactive), and an overview of when their last login was
There needs to be an issue queue that is a separate subsection that lists out all of the issues that were reported through the app, with:
- the name of the teacher or student who reported it
- what type of issue it is
- the subject or the message
- date
- status
- priority
I need to be able to go into the issue and:
- close it or resolve it
- delete it
- be able to handle it
This needs a little bit more discussion.