New updates and improvements to CentreCareOS.
An incomplete link to unsubscribe from CentreCareOS outreach email now always shows the page that explains what to do. Before, after the first such link, later ones could show a blank error instead.
A new CentreCareOS account is created once its email address is confirmed, so a family you add by email is always linked to the person who owns that address. Someone who joins your school as a parent or staff member is exactly that at your school, and location access and staff records can only be given to people who already belong to your school.
The email about a new form response now goes only to your school's own administrators and the addresses you chose for the form. A parent or staff member who also runs another school no longer receives it. Child photos can also only use pictures uploaded at your school.
When a school's CentreCareOS account is closed, the people who ran it keep only what they hold at other schools: a parent or staff member at another school stays exactly that there. A phone that has been signed in for a while also always acts with the role and school the account holds today.
We reviewed every part of CentreCareOS that reads or changes school records and tightened the places where a record could be looked up or linked without confirming its school. Staff timecards, family records, billing plans, waitlist entries, time off reviews, and dashboard notices now check that everything involved belongs to your school. Nothing changes in how you use them.
The homepage now shows the current web dashboard and parent app, including split tuition payments and the parent home screen. The homepage and navigation also fit tablet screens properly.
When a billing action is refused, such as an invalid discount or a change to a paid invoice, the web and the app now say why instead of showing a general error. Student Billing lists enrolled children and anyone who still owes or is billed, and shows custom rates and fixed discounts. Stripe tax documents are offered only to schools paid through Stripe. In the app, removing a fee plan is now called Deactivate and says that billing stops; billing settings accept cents and empty fields; choosing a student for an invoice or a plan has a search; a failed payments list shows an error; invoice due dates save on the day you picked; and the invoice actions menu shows every option on Android. The pricing page now loads with plan prices already in place.
When guardians save a split for a child's invoices, autopay now charges each guardian who has it turned on only what is left of their own share, once per invoice, on the due date. A guardian whose share is already paid is not charged, and reminders say autopay will cover a share only for the guardian whose autopay is on. Without a saved split, autopay works as before. The autopay setting on the web and in the app explains this.
The Reports page now lays every report out as a grid of cards instead of one long list, with up to three across on a computer and two on a tablet, so you can find the one you want without scrolling. Reports in the mobile app are tiles too, two to a row on a phone and more on an iPad.
Families can now save how they share a child's invoices: by percentage (for example 70/30) or by fixed amounts, with one guardian paying whatever is left. A guardian proposes a split and another guardian accepts it, or the school sets one from Student billing. Each invoice then shows every guardian their own share and what is left of it, the pay screen starts on that share, and reminders tell each guardian what they still owe. Anyone can still pay any amount or the whole balance, and without a saved split nothing changes. Available on the web and in the app.
When guardians split an invoice, the CentreCareOS fee is now charged once for the invoice, not once per payment. Each part carries its share of that one fee, so splitting an invoice never costs the school more, and payment receipts show each part's share.
A support message deleted in the app now shows as deleted on the web too. Sending a support message or voice note says why when it fails, including a blocked microphone, and long support threads can load their earlier messages. Support agents can write internal notes, see accurate ticket counts, and only see the actions they are allowed to take.
Paperwork asks before deleting a response, keeps every dropdown option distinct, and no longer offers settings that did nothing. Responses can be searched by child and answer and filtered by status, and exports keep answers to questions that were later removed. Admissions creates real enrollment and waitlist forms and opens them in the builder. Staff Management shows its summary straight away, counts only this week's hours, and can remove a staff member from a room. Locations can have details cleared, and the primary location stays in place.
Shared notification sounds and the CentreCareOS avatar now load for everyone. Pricing shows the current trial length. Very large emails to CentreCareOS are received instead of lost, indented text in an email is no longer hidden as quoted history, and new schools can change how they bring in their roster during setup.
Payment reminders, overdue notices, form reminders, and certificate expiry reminders now end with an Unsubscribe from these reminders link, and mail apps such as Gmail and Apple Mail show their own unsubscribe button for them. One click turns off that kind of email for that school without signing in, and the page that follows has an Undo button. In-app and push notifications are not affected.
Invoices, receipts, password resets, and account emails never carry the link and always arrive. Parents can also turn form reminder emails on or off in Settings, next to payment reminders.
Any guardian linked to a child can now pay the full balance of an invoice or just their part, on the web and in the app, by card, bank debit, or Paystack. The invoice shows Partly paid with what has been paid and what is left, and it becomes Paid once the payments cover the total. When two guardians share a child, the pay screen offers an even split, and both see who paid what.
Schools see each invoice's payments by guardian with a progress bar, can record cash, a cheque, or a bank transfer for part of an invoice and note who paid, and can refund one guardian's payment without touching the other's. Reminders, autopay, and overdue notices use the amount still owed, two guardians paying at the same moment can never pay more than the invoice, and billing totals and reports count an invoice as paid only when it is fully covered.
Closing a school's account now works for schools of any size. The school's CentreCareOS subscription is canceled first, then its records and files are removed in the background with progress shown to the CentreCareOS team, and the account history is kept. A school can also be suspended, which pauses access for everyone at the school without deleting anything.
Correcting someone's name or email from the CentreCareOS side no longer removes their other roles, such as a teacher who is also a parent. Removing an account keeps the school's records readable and ends that person's sign-in. A billing exemption or a fresh trial now also pauses charges with the card provider, and the provider can no longer undo it.
Scheduled jobs such as invoicing and reminders keep going for every school when one school has a problem, and failures reach the team. Maintenance mode now pauses changes from the mobile app too, and the app only shows its maintenance screen during real maintenance. School admins hear back when a specialist picks up their data move or books the meeting. Outreach email from CentreCareOS includes an unsubscribe link.
Voice notes recorded in Firefox, and in browsers that record in the same format, failed to send. They now send and play on phones and computers like any other voice note.
In the app, a screen that cannot load now shows a short explanation with Try Again and Go Back, and the rest of the app keeps working. A banner appears when your phone is offline. Administrators who manage only some locations no longer see Billing, Admissions, Waitlist, or Reports, which apply to the whole school. The next app store release drops the location permission the app never used, and Face ID will say why it is needed.
On the web, opening a dashboard link while signed out returns you to that page after you sign in. A staff member who is also a school administrator can manage students and rooms while acting as an administrator. Help opens in its own tab, Cmd or Ctrl-click opens sidebar links in a new tab, and teachers get the staff shortcuts on small screens.
The website now describes only what CentreCareOS does today, the comparison guide lists our own features instead of rating other products, and the pricing page shows plans as soon as it opens. Public pages recover from errors with a way back home, job applications explain file size limits, and the privacy policy lists the services we use.
Change Password in web Settings works again. Changing your password on the web or in the app keeps you signed in on that device and signs out your other devices. Accounts that sign in with Google are told they have no password to change. Switching between roles in the app no longer signs you out, and a name you fix in Edit Profile stays fixed.
Signing in to the app with a Google account your school has not invited now says no account was found and explains how to get an invitation or start a new centre. Forgot Password reminds people who have never signed in to use their school's invitation email. Removing someone from their only school stops notifications to their phone, and a parent's account deletion request now reaches every school they belong to and notifies its administrators.
The admin home dashboard loads quickly for schools with a long history, and its waitlist count includes every waiting family. Directors who are also parents at another school keep getting their own school's alerts and room chats. Staff can open their own time entries on the web. Kiosk PIN checks are faster at large schools, and a parent's phone can only confirm their own pickup PIN. Administrators limited to some locations can no longer change school-wide settings, support staff see the setup guide of the school they are helping, and school details such as a phone number can now be cleared. Enterprise API usage counts stay accurate under heavy traffic.
A verified PIN now counts as the digital signature at check-in and check-out, so the web kiosk no longer asks for a typed name. Scanning the lobby QR code asks whether you are dropping off or picking up and confirms before recording anything. The Check Out button in the parent app appears only when the school allows it; otherwise parents are pointed to the front desk or the QR code.
Moving a child or teacher between rooms, or unlinking a parent, now updates room group chats. Recurring events show every repeat in the app, and editing or deleting one asks whether it applies to that event, the following ones, or all of them. Milestones can be edited, shared later, or deleted. Rejected photos stay rejected, videos open and share from the app, and parents can reach Photos and Milestones from the home screen.
In the app, Daily Reports shows the chosen day, starting a report for a child who already has one opens it instead of replacing it, and edits can remove entries. Incident forms show children's names and keep the right date, lesson plans pick a room from a list, menu saves explain what went wrong, and slow connections no longer send a save twice. Staff see today's attendance on a child's page, and the class list export is for administrators.
On the web, the attendance page explains failures, clears the health screen between children, keeps emergency roll call marks with an accounted-for count, and lets Mark Absent be undone. Incidents can be edited and resolved, the New tab shows new incidents, and the attendance report lists every child with their absences. School pages show the reason a change was refused, staff time off shows on the right day, and schedule notifications open the schedule.
When an invitation, password reset or other email cannot be sent, you now see that it failed instead of a success message, and Email Logs show bounced and blocked addresses. Email Logs also page and search through every email. Website visitors who leave the support chat get an email when an agent replies, with a link that reopens the conversation, and signed-in customers can attach files in that chat.
On the web, message threads load earlier messages, and you can edit or delete your own messages and report someone else's, as in the app. Muting a conversation on the web silences its sound, and starting a conversation that is not allowed now says why. Conversation lists stay ordered by the latest message for people in many threads, contacts include families and staff who belong to more than one school, and the support inbox lists conversations by their latest activity.
Turning one notification switch off on the phone no longer turns another back on. Parents can turn off payment reminder emails and the Form Reminder in-app notice. Push keeps working on a new phone after many reinstalls, and tapping a milestone or schedule notification opens it. In-app banners play the sound you chose, and platform mail shows older messages in every folder.
Uploads: photos, videos, scans and documents of any size up to each upload's limit now upload on the web and in the app, including Word files and iPhone photos on forms and in staff and student documents. Downloads keep their file names, and School Settings can export your data together with every child's documents.
Paperwork: new forms are for all parents, and a form sent to all parents appears in each family's Paperwork on the web and in the app, with one notice per family. A form you assign tells families right away, even without a due date, and reminders no longer arrive twice. Responses from signed-in staff and parents are recorded under their name and clear their assignment, consent forms show their statement and collect a signature, and staff who are also parents can fill in parent forms. Uploaded-document forms can be created again.
Admissions: families get a confirmation for a booked tour, an email if it moves or is cancelled, and a receipt for a waitlist enquiry. A tour slot taken by someone else is reported instead of shown as booked. Approving an application keeps Enroll available, a family is never enrolled twice from its waitlist entry and its form, enrolment forms list the school's rooms, and the app's Admissions and Waitlist screens show the same families and statuses as the web.
Staff: a forgotten shift added by hand keeps its real times for an admin to approve, clock-in notes and breaks are kept, timecards are filed on the school's own day, time off shows on the requested days and notifies admins and staff, missed certificate reminders still go out, and Edit staff offers only roles that can be saved. Reports show invoice totals, active children and the admissions pipeline correctly.
A child's photos are never shared once the family withdraws photo consent, and schools can require consent before any sharing under School Settings, Permissions. Parents removed by the school no longer receive incident emails or child notifications, no longer appear as approved pickups, and no longer see attendance history. Teachers see only their own rooms' rosters and family contacts, and only parents and administrators can change a family's contact details.
Withdrawing or graduating a child takes them out of their room, so rooms no longer look full and ratios stay accurate. Deleting a child who has records now withdraws them and keeps the records. The room page shows who is checked in and clocked in right now next to the staffing plan, and ratio alerts reach every administrator of the room.
Parents can sign and acknowledge incident reports on the web and in the app. Two QR kiosks can run at one school, QR codes refresh every 10 minutes, and QR pickup asks for a signature when the school requires one. Checking a child out from the parent app is now a school setting, off by default.
In the app, staff can record milestones, create and edit schedules, and log meals with their food items and amount. Daily reports are dated on the school's day, and edits to a sent report no longer notify parents again or turn it back into a draft. Parents keep seeing older photos of their own child, see their child's current room on the calendar, and teachers see school-wide menus. Schedule conflicts are caught at busy schools, admins can clear a child's address, and saving a child or schedule explains what went wrong.
Monthly invoices now cover the right calendar month, so no month is skipped, and biweekly plans bill every other week. Automatic billing stops for plans a school retires, assignments that have ended, and students whose discount covers the full amount. Autopay and overdue status run for every school, whether or not it saved its billing settings, and a bank payment still clearing is no longer called overdue.
Schools can record cash, cheque, and bank transfer payments, issue refunds, and send an invoice or a reminder from the invoice itself, on the web and in the app. Refunds and lost chargebacks show on the invoice and in the totals, the deposit card shows money actually paid out to the bank, and billing admins are told about a chargeback and its deadline. Every guardian linked to a child can see and pay the child's invoices, and parents no longer see drafts.
Families at Paystack schools can pay from the app, payments made from an older checkout page are applied to the invoice, and reports show the Paystack payment and its fees correctly. Messages and emails use the school's currency. In the app, billing totals and reports show the right figures.
Messaging: a reply no longer quotes a message its sender deleted, a conversation you delete stays cleared when someone writes again, pins match between the web and the app, Notes to Self stays in the list at every centre you belong to, and long support conversations can load their earlier messages. A voice note that fails to send is kept so you can try again.
Android: menus with more than three choices, such as admission and incident statuses, report reasons and role switching, now show every option and a Cancel button.
Moderation and support: reviewers can see the photo, file or voice note behind a report, and those files are kept while the report is open. Deleting a support conversation is limited to super admins, is recorded, and waits until any open report on it is closed. Platform mail shows Starred, Spam and Trash, offers Reply all, and uses your own time zone.
Everyday screens: dates picked in the app keep the day you chose, one-off shifts can be given a date, two-factor codes fill in with one tap, Tablet Mode no longer offers a Skip that could not work, and parents and staff no longer see the school's subscription reminders.
Each school now has a time zone, set automatically from its country and state. School admins can change it under School Settings on the web or Settings in the mobile app. The school day starts at the school's own midnight, so evening pickups check out normally, parents see the right check-in status at any hour, and the dashboard's attendance numbers are right from the first drop-off.
Tour times follow the school's clock for every family, wherever they book from, and show on the right day in Admissions. Events created on the phone land on the day you picked and keep their start and end times, and date answers on forms show the date that was entered.
When something cannot be saved, the web and the app now say why, for example a schedule conflict, an expired QR code, a full tour slot, a room at its ratio limit, or a parent email already used at another school.
A school that opened checkout and went back without paying could no longer pick a plan, and at the end of its trial it had no way to subscribe. The plan buttons now stay available until a subscription is actually paid for, and Billing Settings offers "Choose a plan" instead of a billing portal that had nothing to manage yet.
Professional and Enterprise can be bought online again with monthly billing. Yearly billing says plainly when it is not available for a plan, instead of charging the monthly price.
Tablet Mode on the mobile app now asks for a PIN before it shows any child. A parent then sees only their own children, and staff see only their own rooms, so nobody waiting in the lobby can see who is in the building.
The CentreCareOS team screens in the app match the web console's teal, in light, dark, and Pure Black themes.
The mobile Attendance screen now lists every enrolled child from the start of the day, so staff can check the first child in right there. Schools that require digital signatures can check in and out from the Attendance screen too, with the staff PIN standing as the signature, as in Tablet Mode.
Manual time entries keep the time you entered in your own time zone. Parents shows each parent's name, the calendar has a way back, and family billing amounts use thousands separators.
When the mobile app cannot sign you in, it now says why, including after the email code on a new phone. If you started a free trial but have not named your center yet, the app tells you to finish setting it up on the web first.
Teachers see their own role on the home screen, long school names and email addresses stay readable, and conversations with the CentreCareOS team no longer show empty messages.
The CentreCareOS team console now uses the same teal as the rest of the app, with a red mark that shows when you are working at the platform level. Pages outside your team role explain that instead of showing an error, and confirmations use the app's own dialogs.
When a team member opens a school's dashboard, the sidebar says which school they are viewing and offers one clear way back to the console, in place of a role switcher that changed nothing. The console's monthly collections figure now shows the right amount.
Parents can open and complete every form their school assigns from Paperwork again. The home page shows the right day for each report, incident, and event, lists only reports the school has shared, and shows an incident once staff have let the family know about it.
Daily reports load before saying there are none and list the newest day first. Billing shows amounts with thousands separators, counts only invoices that are actually past due, and treats an invoice as due for its whole due day. The calendar keeps event titles readable on phones, and old parent links open the right page.
Parents and staff join through the invitation their school sends. Someone who signs up without an invitation is setting up a new center, and now goes straight to naming it instead of landing on an empty dashboard. A director who stopped before naming the center picks up at that step the next time they sign in, and an invitation accepted later gives exactly the role the school chose.
A platform administrator who also runs a school no longer sees the school dashboard reload several times after refreshing the page. The dashboard stays in the role you chose until you switch.
Dates across the dashboard now match your calendar. Birth dates, due dates, report days, milestones, the schedules week, and report ranges no longer show the day before, and forms that start on today use your local day in the evening too. Incident times read the same way everywhere, and manual time entries keep the hours you typed.
Voice notes record and send again from dashboard messages. New Menu starts on today, new invoices start with a due date 30 days out, response PDFs download for every form, and a failed message, menu, or daily report now says what went wrong instead of doing nothing. Deleting a student, photo, document, or plan asks first in the app's own dialog.
Home shows real counts for applications and time off, the billing overview counts open and overdue invoices correctly, and administrators scoped to one location see which pages their school-wide administrators manage instead of an error. Loading screens, dialogs, toasts, and switches share one look in light and dark mode, and icon buttons and form fields are named for screen readers.
Sign-in, sign-up, invitation, and password pages now follow your light or dark setting and share one clean layout. Someone who opens an invitation and chooses Sign in lands back on that invitation and joins the school, instead of arriving on an empty dashboard.
Invitation links now say plainly when they have expired, were already used, or are for a different email address, and what to do next. Password reset explains when a link has expired or been used and offers a new one, and says when a new password is too weak instead of blaming the link.
Starting a free trial now shows the step you are on, lets you send a new email code, and keeps new owners in the trial setup after they confirm their email. Switching between staff and parent roles no longer shows an error screen, parents see their first name in the greeting, and a request to delete a parent account asks you to confirm before it is sent.
The website menus now open with the keyboard as well as the mouse, close with Escape, and show which page you are on. The phone menu closes when you pick a page. Links and buttons across the site show a clear focus ring, and animations are gentler and switch off when your device asks for reduced motion.
Website chat fits phone screens, says so when a chat cannot start or a message does not send, and plays its sound for new replies again. The Contact page's Live Chat card now opens the chat directly.
Pricing marks a single plan as the most popular and shows whole-dollar prices. Dark mode keeps the closing sections and the highlighted plan dark. Unknown pages show a helpful page with links instead of a bare error, the old documentation link now opens the Help Center, and the status page shows when a manual refresh is running.
Career applications explain the 5 MB limit for each PDF before upload, and the application form is easier to use with a keyboard. Pages shared on social media show a preview image again.
Typing indicators in school messages, CentreCareOS support conversations, and website live chat now show in both directions and clear on their own a few seconds after someone stops typing or closes the conversation.
In the mobile app, new notices, platform alerts for CentreCareOS administrators, and new website chats for support agents appear as a banner while the app is open, once for each event.
Tablet Mode in the mobile app stays on after the app restarts, and only the person who started it or a school administrator can exit it. Changing a check-in PIN asks for the current PIN first, checking a child out by scanning the lobby QR code asks for confirmation, and the QR code for setting up an authenticator app is created on the device.
Files that are not stored in CentreCareOS open in your browser only after you confirm. Word, Excel, and PowerPoint files, and PDFs on Android, open in another app on your device.
When a school is in read-only mode, changes are now paused everywhere in CentreCareOS, on the web and in the mobile app alike. Everyone can still read their school's information, open existing conversations, manage notification settings, contact CentreCareOS support, and request account deletion.
Autopay also pauses while a school is in read-only mode, and invoice reminders no longer promise an automatic charge during that time. Once the school's subscription is active again, each paused invoice is charged once on the next automatic run, including invoices that became overdue in the meantime.
A school can email a form to up to 200 people a day. The note added to a shared form appears as plain text under the school's name and can be up to 1,000 characters, and the Paperwork page now explains when a limit is reached. Resending a family's invitation is limited to a few times a day.
Administrators who manage only some of a school's locations now export the children in those locations, and admissions are managed by school-wide administrators. Files uploaded to a public form that is never submitted are removed after a day. The API's bulk room assignment accepts up to 100 students per request.
When a school's CentreCareOS subscription is canceled or stops being paid, the school now moves to read-only mode, the same way it does when a trial ends. A failed renewal payment gets a two-week grace period with a reminder for administrators, and administrators can always reach Billing Settings to update a payment method or choose a plan. Staff and families see a short note explaining that changes are paused.
Family payments are steadier. A checkout link now expires after about half an hour, a bank payment that is still clearing keeps the invoice locked until it settles, and if a family is ever charged twice for the same invoice, the second payment is refunded automatically. An invoice's amount can't be changed while a payment for it is in progress.
Refunds, payout accounts, invoices, and billing settings can now be changed only by school-wide administrators. Payment and refund messages are written in plain language.
Schools billed through Paystack subscribe at the plan's local price, and a plan change takes effect once the first payment for the new plan goes through. Changing a school's country no longer changes how it takes payments; contact support to switch payment providers.
Photo sharing now follows each child's media consent. When a family turns photo sharing off, photos that include that child stop showing to families right away, and administrators see which child to remove before sharing a new one. Families see only their own children's names on shared photos.
Teachers can edit the photos they uploaded, and a change to who is tagged goes back to an administrator for approval. Milestones show only photos of that child that have been shared with the family.
Notes staff complete on a child using a staff-only form stay with staff and no longer appear in the family's documents. Deleting a photo, form, or response now removes only that item's own files, and only administrators can delete incident reports. Completed forms download as PDFs again.
Families whose access to a school has ended no longer see that school's photos, incidents, or documents, and cannot use its check-in code. Location administrators see schedules and time off for their own locations.
When staff or a family leave your school, their access now ends everywhere at once, including conversations. Invitations only grant the role they were sent for, password reset links go only to the verified sign-in email, and a school can no longer be left without an administrator.
New conversations follow your school's messaging rules, so families reach their child's teachers and the office, and room chats are managed by staff. On the web, Tablet Mode now exits only with the operator's PIN or a school administrator's PIN.
Administrators now see the reason when a change is refused, such as editing their own role. Administrators can update their own name and phone from Staff Management again, and an administrator at one school who is also a parent at another now sees their child when viewing as a parent.
Staff members or families who were removed can now be invited back. Once they accept with the same email, they return with only the role and children in the new invitation. Editing a staff member in the mobile app now keeps their current role.
The CentreCareOS app now uses a black icon on iPhone, iPad, and Android, so the mark reads the same on every home screen. Choosing a profile photo on iPhone also opens the photo library right away instead of pausing first, and the picture is squared for you.
The new icon arrives with the next app update from TestFlight or Google Play; it cannot be delivered to an already-installed app on its own.
Open Enrollment Trends from Reports to compare monthly intake, explore current enrollment status, and see room breakdowns. Filter by month and room, then export the report as CSV, Excel, or PDF. Date-quality notes explain which records are included in each chart.
Switching between school and platform roles on Android no longer closes the mobile app while the navigation bar changes. Each role still receives the same focused set of tabs, and unread badges and navigation styling continue to update without rebuilding the bar.
Platform Mail now checks incoming messages for sender-authentication failures, dangerous attachments, misleading links, suspicious requests, and provider spam signals. High-confidence spam moves into the Spam folder quietly, while uncertain messages remain visible in the inbox.
Automatic decisions now include a clear explanation. Marking a message as Spam or Not spam teaches the filter for that admin's mailbox, so it improves without changing another admin's mail.
School billing now makes invoice schedules, payment currency, late-fee handling, and Stripe payout readiness easier to understand. Plan creation supports the billing cadences the platform actually runs, invoice previews exclude periods that are already billed, and every billing action now gives a clear result when it succeeds or needs attention.
Families can add eligible cards or bank accounts and pay invoices from the mobile app with clearer processing guidance. Saved payment methods are also recovered from Stripe's confirmation if the app closes before its final refresh.
Platform Mail now opens as a spacious, focused workspace with a compact navigation rail, fast search, dense conversation rows, a split reader, and a floating composer. The main platform navigation shrinks while Mail is open and expands when hovered or focused, keeping every admin area close without taking space away from the inbox.
Starred, Snoozed, Drafts, Spam, and Trash are now first-class folders. Drafts autosave across devices, snoozed conversations return at the chosen time, and bulk actions make it faster to archive, restore, mark, or clear several conversations together.
The homepage can now open with a new design built around the CentreCareOS ring. The ring draws itself in and turns like a clock while moments from an example day at a center surface beside it: tuition landing overnight, a morning check-in, lunch logged, nap checks, a verified pickup. The original opening is unchanged, and platform admins choose which one is live from Settings, with the option to switch back at any time.
The guided setup that welcomes new school admins has been redesigned. A larger window shows every stage at a glance, marks what is already done, and lets you jump between stages. Each stage keeps a steady layout on desktop, adapts cleanly on phones, and puts the close control out of the way of the content. Close buttons across the app's dialogs are also easier to see and tap.
The Messages badge now counts exactly the conversations shown in your list. Platform admins working inside a school no longer see a stuck unread count from a private admin-to-admin thread that the school inbox never displays, and opening that thread from the admin console now marks it read. The school inbox also shows only the selected school's conversations for admins attached to several schools, so the badge and the list always agree on web and mobile.
The marketing workspace now falls back to the verified platform sender when an older saved profile uses an address that is no longer approved for sending. Those profiles remain available to edit or remove, and are clearly marked until their address is updated.
Retried marketing emails now rebuild the subject, greeting, and message from the prospect's latest contact and school details. Correcting a name, title, center name, city, or program type before a retry updates every matching field in the email while preserving any edits made to that message. Common titles such as Dr. are skipped when choosing the greeting name, and every retry now opens a preview with the current recipient, greeting, subject, and rendered message before it can send.
Marketing admins can also compare recent retry messages with the copies actually delivered by Resend, review any outdated personalization, edit an individual apology, and send approved corrections as a controlled batch. Every message is checked again before sending, and replies or prior corrections are kept out of the batch. A new action in each school conversation can also rebuild and resend one previously delivered email as a corrected copy after an individual preview.
Batch sends for Emails 1 through 3 now reload each prospect immediately before delivery and rebuild the message from the latest contact and school details. Marketing admins can also permanently delete obsolete contacts and their conversations, activity, and follow-up tasks from the prospect workspace, either individually or by selecting several prospects at once. Bounce recovery and correction review now share a compact tabbed workspace, so only the tool in use takes up space.
Marketing admins now have one visible queue for rejected addresses, with the affected prospect, sequence step, address, and recovery action together. The queue clears a bounce after a corrected address successfully receives the same sequence email. The recovery flow now identifies the rejected address, confirms the replacement address, and states exactly where the retry will be sent.
A new Resend history sync checks previously sent emails and imports retained delivery outcomes, so older bounces can be corrected alongside new webhook updates.
Resend delivery updates now appear in the marketing workspace. A bounced sequence email identifies the rejected address, prompts an admin to replace it, and unlocks a retry of the same email after a corrected address is saved.
Bounced attempts no longer count as received and do not advance a prospect to the next sequence step. Follow-up tasks pause until the address is corrected and the original email is sent successfully.
The marketing workspace can now queue each sequence email for every eligible prospect with one button. It shows how many contacts are ready and how many already received that step, skips repeat sends automatically, and only sends a follow-up after the previous email has been sent.
Large sends continue safely in the background, so admins can leave the page and return to see the latest progress without keeping the workspace open.
Photos and files sent in the website help chat now display in the mobile support inbox, with a full-screen image viewer and one-tap file opening. Support agents can also reply with attachments from their phone, insert saved replies, search tickets, see whether the visitor is online and has read their messages, and assign or unassign conversations from the thread view. Visitors now see when an agent joins the chat from mobile, resolved and closed conversations lock their reply box until reopened, and archiving a conversation now says exactly what it does.
Fixed a crash that could close the app on the sign-in screen on some Android devices, most recently on Android 17. Signing in with Google is unaffected and works as before.
A full audit of messaging fixed read receipts in private conversations between platform admins, so a message shows as read only after the other person actually opens it. The first message of a new conversation now notifies the recipient, deleted messages no longer leave a stale unread badge or preview behind, and muted conversations no longer count toward the Messages tab badge. Older messages in busy school threads can now be loaded with a "Load earlier messages" control, typing indicators clear promptly when someone stops writing, support-thread notifications consistently come from the CentreCareOS Team, and opening the support entry no longer posts an automatic greeting.
Mobile sign-in now uses the verification methods actually available on an account, including sending an email or text code when required. Private conversations between platform admins now open faster and correctly show typing activity, unread badges, and notifications from the other person. Profile photo replacements now preview immediately, support compatible image uploads across devices, and keep the user's name visible while the new image finishes loading. The Expo browser build also loads without trying to start native-only payment components.
New school admins now get a step-by-step setup that walks through connecting payments, setting a check-in PIN, and adding rooms, children, staff, and families. Your progress is saved, and a checklist stays on your dashboard so you can stop and pick up any time. Already using another childcare system? Tell us and request a specialist to help import your data. Staff also get a quick prompt to set their check-in PIN, which is needed for check-in and to exit Tablet Mode.
The mobile app now gives clear next steps for an incorrect email or password, an unrecognized Google account, a deactivated account, too many attempts, and connection problems. It also keeps technical provider messages out of the sign-in screen and resets incomplete sign-ins so the next attempt starts cleanly.
Daily reports in the parent mobile app are now grouped under clear day headings, with each child's report shown in its own card. Parents can view recent activity, narrow the feed to the last 7 or 30 days, or choose a date range to find older reports without scrolling through the full history.
Signing out of the mobile app now shows a Signing out indicator on the button, so you can see it working instead of wondering whether the tap registered. The app also clears its cached data as you sign out, so the next person to sign in on the same device starts with a clean slate.
The mobile app now offers themes by name. Alongside System, Light, and Dark, you can pick Pure Black, a true-black look with deep black backgrounds and crisp contrast that suits OLED screens. Choose it under Settings, Appearance, Theme. System still follows your device between light and dark, and the existing Dark theme is unchanged.
School admins still see student data-quality alerts such as missing parent information. Regular staff no longer see those prompts, since they cannot edit parent records. Time-off requests now use a range calendar, show day and hour totals, let users include or skip weekends, and warn when a request exceeds remaining hours. Anyone who can view a calendar event can add it to their own calendar app. When a parent opens an incident report in their dashboard, school staff can see who viewed it and when.
Parent and staff home dashboards now organize their independent feeds and work areas into section subtabs while keeping key daily summaries visible. The staff schedule splits its calendar and room list into subtabs, and platform settings separate notification, release, and operations tools into focused sections. Each change reduces long scrolling pages without changing their actions.
Tabs that used to stack several sections down a long page now open with a row of subtabs, so every section is one click away instead of a scroll. Time Off splits into Requests, Policies, Balances, and Certificate Alerts; Time Tracking splits into Clock Status and Time Cards; and the Staff Directory separates the directory from pending invitations. Pending counts show right on the subtabs.
Schools can configure full-time, part-time, contractor, and custom time-off policies, choose yearly grants or monthly accruals, assign staff working hours, and make audited balance adjustments. Staff see real-time balances while choosing a single day or date range, including weekend controls, on web and mobile. Administrators can approve requests on either platform, monitor expiring certificates, and configure automatic email and in-app reminders. Form preview reliability, signature and answer contrast, and blank staff clock rows were also corrected.
School administrators can now add an electronic-signature question to an existing published form and save it without an internal error. If the same form was actually changed in another browser tab, the builder now gives a clear reload message.
Staff profiles now include certificates and documents on web and mobile, including targeted paperwork requests that file completed uploads automatically. Staff can submit and track time-off requests, forms support consent-backed drawn electronic signatures, and mobile notifications now include clearer people, organization, schedule, message, form, and platform activity context.
The platform admin dashboard now includes a theme control in both the desktop sidebar and mobile header. The selected appearance stays in place while navigating across admin pages and returning in the same browser.
Enterprise API keys now work consistently across read and write operations. Form management is available through the API, both official SDKs sign changes correctly, student dates follow the documented format, and the developer reference now uses the live production endpoint and methods.
When an existing mobile sign-in needs updated account information, the app now refreshes it quietly and retries the request. If a new sign-in is required, the app explains what happened and offers a clear way back to sign-in instead of showing an internal server error.
New school accounts now require a verified email, and shared forms expose only the details needed to complete them. School, room, lesson-plan, and support access now follow the signed-in person's actual membership more consistently. Security-critical web and mobile dependencies were also updated.
Billing, admissions, staff management, reports, settings, API access, and profiles now share the same quieter layout as the rest of CentreCareOS. Summary numbers sit in compact bands, informational notices use neutral surfaces, and long staff, billing, incident, photo, and report lists remain manageable as a school grows. Paperwork forms now use a compact responsive card grid, with up to sixteen forms on each page instead of stretching every form across the screen.
Messages, photos, incident reports, paperwork, and dashboard notices now use the same quieter visual language as the rest of the dashboard. Large incident, form, response, and photo collections break into manageable pages, while wide response tables remain usable on smaller screens.
Attendance, daily reports, lesson plans, milestones, staff schedules, and time entries now share the calmer dashboard layout. Key totals sit in one summary strip, records read as clean rows, and status color is reserved for details that need it. Long student, report, milestone, attendance-history, and time-entry lists now break into manageable pages instead of growing into one oversized screen.
The home pages for admins, staff, and parents have a cleaner look. Your numbers now sit together in one quiet summary strip, lists read as simple rows, and color is saved for things that actually need attention.
Saving, sending, and other actions across the app now show the success and error messages they were meant to, so you can tell what happened instead of guessing.
On the billing screen, opening Create Invoice and picking a student could freeze the window and close it before you finished. The pause happened the instant you chose a student, so there was no way past it. That is fixed: the student picker loads their parents cleanly, and you can fill in and send the invoice as usual.
We went through every switch and field on the admin settings screens and checked whether each one actually changed anything. A handful did not. They saved a value and no part of the product ever looked at it, so turning one on or off did nothing except make you think it had. Those are removed rather than left sitting there: a control that lies is worse than no control.
School settings also lived in two places at once, which is how one of them drifted and stopped working properly. They now live in one place, under School Settings. Your personal settings page is personal again: profile, password, PIN, and your own notification choices. Nothing you had configured changed, and the staff time clock controls moved across with everything else.
Until now the mobile app picked up improvements quietly and applied them the next time you opened it, so there was no way to know an update was waiting. Two prompts now make it visible. When a downloaded improvement is ready, the app asks you to restart and finishes the job in a tap. When a new version is out on the App Store or Google Play, it asks whether you want to update: say no and you carry on with the version you have, say yes and it takes you to the store.
The store prompt checks the App Store and Google Play directly, once an hour, so it only appears when the new version is genuinely there to download. A release that is still in review does not nag anyone, and neither does one that was submitted but never published.
In the mobile app, tapping the paperclip part-way through typing a message closed the keyboard before the attachment choices appeared, so you lost your place and had to tap back into the box afterwards. The choices now open over your message with the keyboard still up. Picking a photo or opening the camera still takes over the screen, as you would expect.
The Tablet Mode check-in station made you scroll to reach the Check-In and Check-Out buttons or the parent app QR code, which is the last thing you want on a device mounted in a busy lobby. Everything now fits on one screen with nothing cut off, in either orientation, and it adapts from a phone up to a 13-inch iPad. The QR code sizes itself to whatever room is left rather than being pushed off the bottom.
Opening the mobile app showed a small, cropped piece of the CentreCareOS logo for a moment before the app appeared. The launch screen is now the full logo, centred at a readable size on the deep navy background, and it matches the sign-in screen that follows it. This one arrives with the next app update from the App Store or Google Play rather than automatically.
In the mobile app, choosing what to attach used to open a panel in the middle of the screen, well away from the paperclip you had just pressed. The choices now appear directly above the button, whether or not the keyboard is up, so your thumb does not have to travel. The round button beside the message box also sat slightly low against the box; the two now line up.
A photo used to arrive inside a message box built for a line of text, so a large bubble sat around a small, cropped picture. The box is now a thin frame that hugs the photo, the photo keeps its real shape instead of being cut to a rectangle, and the time and read receipts sit on the picture itself. Send a photo with something written alongside it and the words sit under the picture inside the same frame. This applies everywhere messages are read: school conversations, messages with our team, the admin inbox, support threads, and the chat on our website.
The box you type in is now a single rounded field with the attachment control inside it. The button beside it records a voice note while the field is empty and becomes Send the moment you start typing.
The notice that replaces a removed message was shouting. It now sits on the same muted surface a deleted message uses, in ordinary secondary text, in the conversation and in the moderation queue alike. It reports something that already happened, so it no longer needs to look like an alarm. Red is kept for the button that still does something.
In the mobile email composer, the Subject line no longer breaks across two lines. The account picture at the top of Mail now shows your actual profile photo instead of your initials.
Reporting a message in a direct conversation between two platform admins always failed. The check for whether a message was your own treated every message from the platform side as belonging to whoever was reading it, which is right when the platform team replies to a school as one team and wrong when both people in the conversation are admins. It now compares the actual sender.
When a report or a moderation action does fail, the reason now says what happened instead of showing "Server Error".
Writing an email on your phone no longer feels like filling in a form. From, To, and Subject are slim lines, Cc and Bcc tuck behind a caret until you need them, and the message itself is the rest of the screen. Leave, attach, and send sit in the top bar. Mail now opens on a single search field with your folders in a menu beside it, and searching filters as you type. In a conversation the subject reads as a heading instead of being cut off in the bar. Bcc works for the first time.
Reviewers handling a reported message can now remove it. They choose a category, which decides the notice everyone in the conversation sees in its place, and confirm against the exact wording first. Attachments stop being viewable, quotes of the message show the notice too, and the case history records who removed it, when, and what it said. Removal cannot be undone, because a reviewer establishes the breach before acting.
On Android the bottom bar now uses the app's own colours rather than the system grey, and content no longer hides behind it. The last rows of the staff home screen were unreachable; every tab screen now reserves the space the bar actually occupies.
The privacy policy said we collect general location. We do not. The app never asks for location permission and never derives a location from your IP address, so the usage and mobile sections now describe only the IP address and network information used for security and troubleshooting.
The mobile section now states directly that the app does not collect device location. This matches the privacy details published on the App Store.
The bar along the bottom of the mobile app is now the system's own. On iOS 26 it picks up the real Liquid Glass material, content flows underneath it, and it shrinks out of the way as you scroll down a long list. Android gets its standard navigation bar. Icons, spacing, and animation now match whatever the device does everywhere else.
Every role now sees a shorter, steadier set of tabs. Platform admins reach Mail and the Support Inbox from More, where the support unread count now appears, and nothing else moved. Screens measure the bar themselves, so lists sit correctly on iPhone and iPad in either orientation, including split-screen widths.
Form builders can now tag paperwork to a specific student and choose the document category for uploaded answers. Only parents linked to that student can be selected, and completed uploads are filed directly in the student's Documents tab.
Student profiles now lead with attached documents. The upload form stays out of the way until an authorized user chooses Upload document.
Form settings are no longer one long scroll. The theme picker stays at the top, and everything else is grouped into Appearance, Notifications, Student, Visibility, and Delivery tabs. Tagging a student now tells you straight away if that child has no linked parents, or if you still need to pick who fills the form out.
Web and mobile release workflows now check types, code quality, protected-route coverage, secure file handling, automated tests, and mobile project health before a release can proceed. Production web builds also fail when type or lint problems are present instead of allowing them through.
Existing warnings were cleared at their source, including stale mobile code, unstable screen updates, and inconsistent image handling. The same checks are available through one local command and run again when a mobile build or over-the-air update is produced.
Student profiles now separate overview information from a full document workspace. Authorized users can organize health, immunization, custody, medication, allergy, and other records; add due and expiration dates; preview or download files; and replace or remove outdated records.
Forms completed for a specific student now appear alongside that student's uploaded files. Parents see only family-visible records for their linked children, while staff access follows current room and location assignments. Upcoming, past-due, and expired records are called out directly in the profile.
Mobile users can now report a received message from its press-and-hold menu, choose a reason, and add context for the review team. Reports go to a private platform queue where authorized support staff can assign the case, record school follow-up, add internal notes, and document the outcome.
Support conversations now retain a history of assignments, status changes, internal notes, and agent participation. Archiving a conversation preserves its messages and audit history for future review.
Staff profiles in the mobile app now show recurring and dated shifts, room assignments, training records, completion and expiration dates, notes, and certificate attachments. Expired records and items due within 30 days are called out directly on the profile.
The Schedule tab in staff management now opens the full mobile scheduling workspace, where authorized administrators can change weeks, filter by room, and manage shifts without switching to desktop.
School administrators can now turn a waitlist entry, admission, or enrollment-form response into an enrolled student from either the web dashboard or mobile app. Room assignment is part of the same operation, and repeat taps no longer create duplicate student or parent records.
Documents uploaded with an enrollment response now follow the student into their document record. The original response or waitlist record stays available as the enrollment source, and the result clearly shows when a parent invitation still needs attention.
Subscription and family-payment pages now describe cancellation and refund rules consistently. Payment and privacy descriptions also state the controls the platform actually provides instead of relying on broad labels.
Parent users can continue to send an account-deletion request directly to their school. Staff and administrators now have a clear route from mobile settings to the removal instructions for their school-managed accounts.
A prospect's reply used to arrive in the marketing workspace as one block of plain text, with the entire earlier conversation repeated underneath it as rows of angle brackets. Replies now render the way the sender actually wrote them, with their formatting intact, and the history they quoted collapses behind a single control you can open when you need it.
Each prospect now has one Conversation view holding everything you sent and everything they wrote back, with Compose alongside it as a separate tab. Replies you send carry the previous message as a proper quote, so the person receiving it has the context, and they stay attached to the same thread in the recipient's inbox instead of arriving as a new one. You can drop the quote before sending when it is not needed.
Email threads now show only what each sender actually wrote. Quoted history collapses behind a single control, and when a quote repeats a message already in the thread it becomes a link to that message instead of a second copy of the text. Formatted mail renders properly at its real height rather than inside a fixed, clipped frame, and remote images stay blocked until you choose to load them.
Replying and forwarding now carry the original message the way other mail clients expect, so conversations stay together in the recipient's inbox instead of splitting into separate threads. You can drop the quoted history before sending, reply to any conversation including ones you started, and see exactly what will be quoted before it goes out. The same reader now runs on the mobile app.
Marketing admins can now browse email templates in collections and choose from five new founder-written messages about attendance, billing, family communication, enrollment, staffing, and ratio visibility. Each template can be previewed, personalized, edited, and sent from the existing marketing workspace.
Refreshed the marketing email sequence with William's story behind CentreCareOS, a clearer explanation of how the platform helps school teams avoid cluttered software, and more direct information about personal support, the 90-day trial, and help for qualifying centers.
Account containment now tracks Clerk synchronization separately, supports safe retries after a partial service failure, and keeps access blocked until a restore is fully confirmed. Platform users can see accurate containment status on web and mobile, while directory views, API-key access, exports, and unusual access denials produce more complete audit records.
Platform admins can review who accessed high-risk directories and exports (without storing full response data), get alerts when an account hits an unusual number of access denials, and must provide a reason when opening or closing new school signups. Signup attempts while closed are rate limited and recorded.
Platform admins can now contain a user account from the admin users page in one step. Contained accounts lose sign-in and app access immediately, and the action is recorded for review. Access can be restored later if the account was locked by mistake.
Fixed the call-to-action sections on the Enrollment, Attendance, Staff Management, and Billing feature pages, where the Start Free Trial button and supporting text could become unreadable in dark mode. All marketing pages were reviewed and now render correctly in both themes.
Fixed an intermittent “Connection interrupted” screen that could briefly appear in the mobile app while it finished connecting after launch. Live conversations and unread badges now wait for the connection to be ready and recover on their own, with no retry needed.
Every icon across the platform has been redrawn with a new icon family chosen for warmth and clarity. Navigation, dashboards, forms, messaging, and the mobile app all share the refreshed look, with icons picked deliberately for each feature so meals, classrooms, families, and daily reports read at a glance.
Mobile sessions now provide one consistent account identity for notification delivery. Devices safely reactivate their push connection when the app returns to the foreground, while notification content remains restricted to the intended signed-in account.
Live support and platform message notifications now follow the currently authorized account and active role on each device. The iPad Support Inbox tab also centers its two-line label and keeps the unread indicator fully visible inside the floating navigation bar.
New website chats are now described as live support conversations, and unread visitor messages appear immediately on the mobile Support Inbox tab. On tablets, support reply controls and Mail actions now remain comfortably above the floating navigation bar.
Authorized platform administrators now have one analytics workspace for school and user totals, active users, web and mobile adoption, login trends, message volume, role distribution, and school-level activity. The same live analytics are available on web and mobile.
Production error monitoring now connects web and mobile failures to the application version that caused them, helping the team diagnose crashes faster while filtering personal and childcare data from diagnostic reports.
School dashboard insights now use live unread-message state for the connected school. Read conversations and messages from other school contexts no longer leave a misleading unread count.
Families can open incident reports even when an older report records staff names or legacy staff references. Existing privacy rules remain in place, so parents see only deliberately shared reports for children linked to their account.
Dashboard work areas now include a quiet, page-specific help link for school administrators, staff, and families. Each link opens the most relevant customer article, often at the exact section for the task, in a new tab so in-progress work stays in place. Platform operators receive the same contextual experience through the separate internal operations manual.
The public Help Center has been rebuilt in plain language around the workflows and role access available today, while platform operators now have a separate internal manual for support, security, permissions, communications, data, API, and payment operations. Billing pages now distinguish invoices, processing fees, refunds, reconciliation, and bank payouts, and no longer describe recorded late-fee settings as automatic invoice changes.
A temporary email-delivery problem can no longer hold up an otherwise completed Stripe payment. Replayed payment notifications also preserve later refund and dispute statuses, keeping school receipts, exception queues, and reconciled financial reporting aligned with the actual payment lifecycle.
Every Stripe parent payment now runs directly on the school's connected account; obsolete destination-charge paths and rollout switches have been removed. Payments fail closed on missing account or fee configuration, verify the settled invoice amount, isolate saved methods per school, and reconcile refunds, disputes, fees, and payouts from signed Stripe events. Paystack remains a separate supported path.
Schools now see the fee policy that actually applies to them, connected-account capabilities, payment receipts with real reconciled costs, and Stripe bank payouts as separate events. Families can choose card or eligible ACH payments with clearer processing-time guidance, never have school fees added to the invoice total, and receive a prompt when a direct-charge migration requires saving a payment method again.
Super Admin payment operations now show real payment volume, application fees, reconciliation exceptions, connected-account health, transaction ledgers, and CSV exports. Fee changes use immutable draft, activate, and retire versions with audit reasons, while a rollout kill switch and per-school readiness checks prevent unsafe direct-charge enrollment without disrupting schools already processing payments.
School settings stay admin-only, protected pages avoid stale browser cache after sign-out, and form builder saves refuse to overwrite a newer tab. Incident dates keep the calendar day you recorded, activity reports surface unassigned rooms and truncation, and exports include source IDs. Daily summary taps open parent activity with the right child/report, notification preferences use the active school with honest error recovery, and mobile sign-out stops push delivery for the previous account.
Payment confirmations no longer resend on webhook retries, and financial reports keep invoices and payments in the same period. Check-out preserves earlier notes, refuses to rewrite a finished day, and parent Home shows Checked out clearly. Public form submit stays success-only, waitlist Contacted records when outreach happened, completed tours keep a completion time, and attendance reports filter by room correctly.
Form response reviews show uploaded files correctly, restrict PDF export to school admins, and prevent concurrent Accept/Reject races. Manual invoices keep line totals honest, preserve the due calendar day you pick, and avoid duplicate creates on retry. Multi-school parents see the active school's invoices, mobile labels match Sent status, cancelled checkouts free Pay Now immediately, and non-production environments refuse live payment keys.
Completing an incident follow-up now requires a real outcome note and keeps the original plan on record. Parents only see incidents after staff deliberately notify them, and multi-school parent views stay on the active school. Paperwork forms validate question definitions and answers on the server, create parent assignments when you publish to specific families, and no longer open private forms via a raw form ID.
Message replies are easy to find, stay inside the right conversation, and avoid accidental duplicates on retry. Edited messages update the inbox preview, and mute clearly applies to web notifications only. Incident reports require complete core details, show staff and witnesses on the detail view, and email parents only when you choose Notify Parent, so the notification status matches what families received.
Sending a daily report notifies parents once, with a clear first-send record, and saving a draft no longer unshares it. Parent activity views show full meal and nap details, milestones stay scoped to a teacher's rooms, photo uploads report real success or failure, and parent sharing is clearly admin-only. Teachers message families linked to their classrooms, not the whole school directory.
Teachers can open Schedules on mobile with correct weekdays and times, and only see their own rota instead of every colleague. Lesson plans validate content, avoid duplicate drafts, limit edits to authors or room staff, and show author and status on cards. Daily reports use the local calendar day, store structured care entries cleanly, and no longer notify parents when a private draft is saved.
Tablet check-in resolves shared last names and PINs safely, requires a real health screening and signature when enabled, and no longer rewrites or re-notifies an already-open check-in. Attendance boards show each child's classroom correctly. Quick-scan QR codes are single-active and expire on kiosk exit; mobile parent scan completes the right check-in or check-out action. Staff time clock can require notes, and teachers only see schedule controls they are allowed to use.
Adding a parent is more reliable, with honest invite-email status and location safeguards for multi-site schools. Parent home shows the correct classroom, attendance history stays complete for each child, and emergency contacts can be edited with email and pickup authorization. Tablet Mode is limited to staff and supports a parent PIN-first drop-off and pickup flow.
Staff room assignments show correctly again in Staff Management. Weekly schedules are saved as a single multi-day create with better conflict and operating-hours checks. Adding a child with a classroom is atomic, medical edits persist (including insurance), and the mobile staff home shows today's schedule. Mobile sign-in is also more tolerant of school Wi-Fi NATs without weakening abuse protection.
Food items and weekly menus enforce cleaner names, categories, and meal types, with safer CSV exports and a working meal-type search. Staff invitations for teachers and admins show up in Staff Management again, invite creation is more reliable, cancelled invites cannot be reused, and accepting an invite with the wrong signed-in account offers a clear sign-out path.
The dashboard sidebar now shows your email and active role next to your school so it is easier to confirm you are acting as the right person. Every school can create a primary campus without an Enterprise plan; multi-location still unlocks additional sites. Classroom create and edit are stricter about names and capacity, profile photo replacements clean up the previous image, and calendar events validate rooms and times more carefully so invalid entries cannot slip in.
School administrators can see staff and teacher profile photos in mobile conversation lists. If a saved image cannot load, the app now shows the person's initials instead of an empty avatar.
Parents can add, replace, or remove their saved card in the mobile app and turn autopay on or off. Removing a card automatically disables autopay.
Admin invoice totals and line items now display in dollars consistently. Parent payments also report incomplete school payment setup clearly before opening the payment form.
Mobile administrators can create invoices for students with linked parents, and waitlist and menu details now save consistently. Billing access continues to enforce school, role, and student-parent relationship checks.
Parents on the mobile app can again see profile photos for their linked children. Staff and parent avatars used in messaging also load correctly for school members.
Status monitoring now handles normal site redirects and confirms brief connection failures before reporting an outage. Incorrect outage bars caused by the monitor itself have been corrected.
On mobile Mail, swipe a conversation left or right for quick actions in Inbox, Archived, Sent, and Unassigned, including archive, restore, mark read or unread, claim, reply, and open.
The public and admin status pages again show daily history for each service. A gap in recording left recent days as “Not tracked”; uptime samples are being collected on schedule again.
New inbound mail and replies show up on the mobile Mail list and in threads automatically. No pull-to-refresh is required.
Platform admins can start a new email from the mobile Mail screen, not just reply. The send API also accepts multiple To recipients and optional Cc.
Resource guides and the developer docs no longer use the generic mustard “important note” boxes. Notices now use a brand-accented editorial callout that reads cleanly in light and dark mode.
Scheduled health checks for the public status page run reliably again, so uptime history keeps up with how systems are actually doing.
Payment confirmations retry safely when something fails, expired trials stay read-only, and student exports and device notifications are safer against abuse.
Contact, careers, and other public forms are harder to spam, and platform outbound email only sends from verified CentreCareOS addresses.
Platform admin announcements, invites, app-review setup, and billing tools are safer against misuse, with clearer permission checks and input limits.
Billing settings stay admin-only, parents are charged the real invoice total, and multi-school parents always pay for the school they are signed into.
Enrolling from a form or waitlist creates the parent, all children, room assignments, and status updates together, so a mid-enroll failure no longer leaves half-created families.
Public form submissions follow the same rules as the rest of the product, share links are hard to guess, and only school admins review responses.
The public status page shows the latest scheduled health snapshot instead of re-checking every provider on each visitor refresh.
Incident reports respect date filters and student names, room chat previews stay private until you join, and several report and upload edge cases are fixed.
Changing plans no longer risks two active subscriptions, enterprise room-staff lookups work with API keys, and the public account-deletion page is available without sign-in.
Tour bookings use the real published slot times, school directories hide sensitive account fields, and transactional emails render names safely.
Only school admins or the form owner can publish or assign forms; collaborators can still edit content. Public form uploads have fair usage caps.
App Review school setup requires a password the operator chooses, bank account lists show only the last four digits, and public tour slots only appear on shared forms.
Only people who can edit a form can export response PDFs, assigning a form updates due dates correctly, and subscription activation only accepts real plan checkouts.
Sign-in accounts cannot be reassigned to a different person, invites and enrollments only link the verified primary email, and attendance stays within the correct school.
Message notification sounds now actually play on iOS and Android, matching the tones on the web app, and the picker lets you hear each one before choosing.
Improved the mobile school-day tools and made notification controls reflect what users actually receive.
A ground-up rework of how the mobile app looks and works on iPad, plus a new full-screen Tablet Mode kiosk for shared school devices.
The CentreCareOS mobile app (v1.0.5) now runs natively on iPad, designed for shared room tablets and front-desk use in schools.
Hardened public and admin API paths while preserving normal school, applicant, and developer workflows.
Added Enterprise-gated location management for schools with multiple centers, including location-based room organization and scoped administrator access.
Fixed Platform Mail timestamps so sent and received messages keep the correct Eastern Time date across web, mobile, and external inboxes.
Added sender-only message editing across school, platform, support, and public chat conversations, with edited timestamps visible on web and mobile.
Fixed admin-to-admin platform conversations so each participant's messages render on the correct side of the thread with the sender name visible for received messages.
Restored super-admin loud on-call test delivery by keeping critical push payloads within Expo's remote push contract.
Added mobile controls for choosing the loud alarm used by critical super-admin on-call alerts.
Tuned critical super-admin on-call alert delivery so alarm tests behave more urgently before the mobile app is opened.
Added a weekly preview of upcoming auto-generated billing invoices and direct super-admin controls for testing platform security alert delivery.
Fixed waitlist forms so reviewed submissions reliably create the matching waitlist entries in the configured room without duplicate rows.
Improved the new admin mail experience with better mobile composing behavior and smarter sender identity handling for inbound email conversations.
Refined platform messaging and the support inbox, expanded announcements, and hardened backend authorization.
Completed attendance check-out workflows, staff time tracking, and billing improvements.
Reworked messaging notifications and delivery, redesigned the new-chat experience, and added account and privacy pages.
Redesigned the public status page, added reliability probes, and shipped a school data import system.
Added a marketing outreach system for admins.
Added an emergency attendance roster and hardened contact and support routing.
Cleaned up the super admin experience, expanded school attendance and notification settings, improved live support handoffs, and refreshed the homepage showcase and messaging.
Improved parent-facing calendar access, messaging media reliability, public page theming, SEO metadata, and branded loading/auth screens.
Completed the move to secure file storage, hardened support chat attachments, aligned support conversation controls, and updated platform status monitoring so file health reflects the new storage path.
Expanded billing with ACH payment support, autopay enrollment, normalized invoice amount handling, child-level parent billing summaries, and refreshed public screenshots for the billing and parent communication experience.
Reworked attendance and tablet check-in around faster QR sessions, stronger PIN verification, clearer attendance views, and more reliable scan handling for school front-desk workflows.
Added incident alert emails for status monitoring, improved admissions outcomes, preserved admin role context when returning to the dashboard, and reduced messaging read churn with persistent unread count support.
Added a front-facing CentreCareOS status experience with public service health, admin diagnostics, live refresh, persistent uptime tracking, and mobile layout refinements for the uptime history view.
Expanded Paperwork to support uploaded document forms and assignment workflows, while improving support conversations with deletion controls, better unauthenticated access handling, and backend conversation performance work.
Added platform permission management, automated ratio compliance, stronger staff viewer restrictions, staff time entry validation, and API key administration updates.
Added a form-aware response review flow for Paperwork submissions. Admins now see action labels that match the form type and can optionally notify parents with an editable email before confirming the action.
Major Paperwork improvements focused on robust public submissions, tour booking correctness, response PDFs, multi-child workflows, form branding, branching, and notification controls.
Added staff time tracking, improved photo metadata editing, hardened incident handling, and introduced a dedicated app review school setup workflow for platform testing.
Built the foundation for richer Paperwork forms, tour booking availability, form audiences and reminders, announcement management, voice notes, and notification fan-out.
Researched and verified all external licensing resource links across 10 state ratio pages. Replaced broken URLs with accurate, working alternatives from official state agency websites.
Replaced generic AI-sounding call-to-action copy across the homepage, features, and resources pages with human, childcare-specific messaging.
Built out full functionality for the super admin More tab, including ticket management with conversation threads, announcement CRUD, and push notification settings verification.
Full billing feature parity on mobile includes payments, plans, student billing assignments, reports, and settings, all with create, edit, and delete support.
Complete mobile UI rebuild with 12 reusable Apple-inspired components, 15 screen redesigns, a new dashboard, and the More tab. Everything is powered by real-time with REST API fallback.
Replaced all plain text date/time inputs across the mobile app with native DateTimePicker components. Added proper selector chips for age groups and other categorical fields. Audited every create/submit flow and fixed payload mismatches that were silently dropping user data.
We tightened the right-hand metadata area in the mobile message conversation lists so timestamps and pin actions no longer push list rows past the viewport edge.
We improved in-app message notifications on mobile browsers by priming the web audio system after the user’s first interaction, which helps mobile web sessions play notification sounds more reliably.
We fixed a deeper stability issue in the super admin mobile messages and support views by preventing the outer admin page shell from scrolling on top of the thread’s own message body scroll area.
We tightened the internal mobile thread layouts for super admin messages and support so the header, message body, and composer behave like stable rails instead of drifting or clipping on narrow screens.
We rebuilt the internal mobile layouts for the super admin support inbox and platform messages so they behave like real list-and-thread mobile experiences instead of compressed desktop workspaces.
We corrected a layout bug in the new mobile authenticated shells where the super admin mobile header could behave like a flex column sibling and squeeze the page content, and we fixed the mobile nav menu so longer menus can scroll cleanly from top to bottom.
We introduced dedicated mobile authenticated shells so phones and smaller tablets no longer have to squeeze the desktop sidebar workspace into narrow screens. Desktop keeps the current shell; mobile now gets a different navigation model entirely.
Some mobile admin screens could fail after the app had been open a while even though chat still worked. Session refresh is more reliable so school detail and other admin tools keep loading.
We refreshed the marketing comparison pages so they reflect current competitor branding and present-day positioning instead of older childcare software messaging.
New free-trial signups coming back from Google now continue into school setup correctly instead of bouncing between the auth callback and the signup page.
Super admins can now choose a platform default message sound that all roles inherit automatically, while still allowing individual users to override it with their own preference.
The settings tab bar now sits more cleanly against scrolling content, and the shared sound upload flow has been made clearer and easier to understand.
Settings tabs now make horizontal scrolling more obvious, and super admins can upload custom notification sounds that become available to every user across the platform.
The school admin settings experience now mirrors the super admin settings layout, making it faster to move between sections without scrolling through a long page.
Messaging conversation lists were refined so long names stay neatly truncated and pinned conversations use a cleaner visual accent.
Super admin settings now behave more like a true tabbed workspace, and support inbox badges no longer hang onto unread counts after agent reads or resolved conversations.
The new message composer was refined to feel less cramped and faster to use. Conversation modes now fit more cleanly in the available space, and starting a direct message takes fewer steps.
The Messages experience now gives school admins, staff, and parents a cleaner way to start conversations. The new message composer was redesigned into a wider split-panel layout, and platform support can now be opened directly from inside Messages instead of only from the public site chat widget.
Super admins can now configure distinct message sounds for internal platform conversations and support inbox activity, with live unread tracking for both channels directly in the admin experience.
Messaging alerts and school-admin onboarding now respect saved user preferences instead of relying on browser-only state. Users can choose how message sounds behave, and school admins who dismiss the welcome guide will not be shown the same walkthrough again on another browser or device.
Messaging badges now track unread conversations more accurately across the dashboard and super admin experiences, and incoming messages can trigger an audible alert when you are away from the current messaging view.
Audio messages in messaging were updated to handle browser metadata more reliably so voice notes show stable duration values and playback timing on both the sender and recipient sides.
Billing and dashboard infrastructure received a major upgrade. School billing now supports richer subscription management flows, stronger exemption handling, faster live data loading through, and configurable school admin dashboards with custom widgets.
Super admins can now enter a school context directly from the platform dashboard. The impersonation flow was then tightened with follow-up fixes to make context switching, dashboard rendering, and visual state more reliable.
Admissions, parent access, and school operations all moved forward in this release. Enrollment became more complete end to end, parent views were unified into the dashboard experience, and more operational pages switched over to real-time data.
Converted all email templates from a dark theme to a light theme to fix readability issues when emails are opened on devices with dark mode enabled. Gmail and other email clients will now auto-generate clean dark versions instead of conflicting with an already-dark design.
Removed the temporary Database Migrations page and its sidebar navigation entry from the super admin dashboard. The migration tooling was only needed during the messaging system refactor and is no longer required.
Super admins can now send signup notification emails retroactively for schools that signed up before the notification system was configured. A new card on the Platform Settings page lets you select the last 3 to 20 signups, preview the list, and fire off the notifications in one click.
Unified all dashboard stat card icons and numbers across the platform to use the signature teal/primary color. This change spans the super admin dashboard, school admin dashboard, staff dashboard, parent dashboard, API settings, Paystack accounts, Stripe accounts, and email logs -- eliminating the previous mix of green, amber, purple, blue, pink, and red stat colors.
Added a configurable signup notification system so super admins receive beautifully designed email alerts whenever a new school signs up. Notification recipient emails can now be managed directly from the super admin Platform Settings page under "Signup Notifications" -- no environment variable changes needed.
The maintenance mode toggle in Super Admin Settings now fully enforces platform downtime. When enabled, all non-super-admin users are redirected to a dedicated maintenance page, and external API calls receive a 503 response.
Added Intervo.ai as a backup AI chat widget alongside Chatbase. Super admins can now switch between providers instantly from the Platform Settings page without any downtime.
Released official single-file SDK libraries for JavaScript/Node.js and Python, with full documentation on the developer portal including installation guides, usage examples for every resource, and error handling patterns.
Fixed a bug where super admin invite emails were never sent after creating a new user. Added a comprehensive Email Logs dashboard in the super admin panel that tracks and previews every email sent from the platform with category filtering.
The public-facing chat widget now combines an AI Assistant (powered by Chatbase) and Live Support in a single unified interface. Users can switch between AI help for common questions and live human support when needed, all from one floating widget.
Every room can now have its own group chat that automatically includes all assigned staff, parents of enrolled students, and school administrators. Room chats sync participants when staff or students are added or removed from rooms. Super admins can join any room chat and see the full message history.
Complete rewrite of both the in-dashboard and public-facing help documentation based on a thorough audit of every feature in the codebase. Both help pages now contain identical article content, ensuring no conflicting information between the dashboard and public help center.
Fixed incorrect role tags across the entire platform to match the actual four-role system (Super Admin, School Admin, Staff, Parent). Completely rebuilt the public /help page into the same three-pane SaaS-style documentation layout used in the dashboard: left sidebar with collapsible category navigation and search, center content area with breadcrumbs and article rendering, and right-side "On this page" table of contents with scroll-tracked heading highlighting. Also fixed a crash in the chat widget and admin support pages.
Completely redesigned the in-dashboard help pages into a professional SaaS-style documentation system with sidebar navigation, search, table of contents, and comprehensive articles covering every feature.
Added real-time typing indicators, read receipts with double-check marks, and online presence tracking to the support chat system between visitors and admins.
The mobile app can sign in with the same account system as the web and stay signed in for API calls.
African schools can now pay platform subscriptions and receive parent fee payments via Paystack, with automatic currency handling and payment status updates. Admin dashboard crashes on reload and sign-out have also been resolved.
Schools in Nigeria, Ghana, Kenya, and South Africa can now accept parent payments via Paystack with automatic bank settlements, alongside the existing Stripe integration for other regions.
Completely rebuilt the super admin platform dashboard to show live, actionable data across all schools with better space efficiency and real-time alerts.
Super admins can now view and delete Stripe Connect accounts directly from the admin dashboard, enabling easier cleanup of test accounts and orphaned connections.
Resolved critical write conflicts in the platform messaging system that were causing send failures and extra retries in busy platform conversations.
Comprehensive public-facing API documentation is now available for developers building integrations with CentreCareOS. The new Developer Portal provides everything needed to get started with our REST API.
Super admins can now assign subscription plans directly to schools from the admin dashboard. This feature enables quick testing of plan benefits and manual plan management for special cases.
Introducing API access for Enterprise plan subscribers. Schools can now integrate CentreCareOS with their existing systems, build custom integrations, and automate workflows through a secure, rate-limited API.
Added comprehensive SEO-optimized content pages targeting high-value search queries, plus automatic email notifications when new schools sign up for a free trial.
Added unique Open Graph and Twitter Card metadata to all public pages. Now when you share a link on social media or messaging apps, each page shows its own specific preview with relevant title, description, and image instead of the generic home page preview.
Fixed the dark mode toggle to work properly on all public-facing pages. Previously, pages like Features, Pricing, Compare, Careers, Resources, and Changelog had fixed light colors that ignored the theme toggle. All pages now use semantic design tokens for proper theming.
Initial implementation of light mode default for public-facing pages with a dark mode toggle in the navigation bar.
Major update implementing room-based access restrictions for staff members. Staff can now only see students, parents, daily reports, photos, and incidents related to their assigned classroom. Also fixed email template visibility in dark mode.
Fixed the layout issue where the "Select a conversation" message was offset to the left instead of being centered in the message pane on all messaging interfaces.
Added read receipts (tick marks) to platform messaging between super admins and users. Now all messaging interfaces have consistent read receipt indicators showing single tick for sent and double tick for read.
Restored the billing exemption and trial reset controls to the admin schools page dropdown menu.
Improved support chat experience with sleeker attachment display, in-app file previews, and a new canned responses system to help support staff respond faster.
Added new billing management features to the Super Admin dashboard for better control over school subscriptions and test accounts.
Enhanced the Admissions Pipeline with drag-and-drop functionality and intelligent integration with the My School Waitlist, creating a seamless workflow from prospect to enrollment.
Complete redesign of the Admissions section with clearer purpose and separation from the operational Waitlist. The new structure focuses on tracking the full enrollment journey from inquiry to enrollment.
Refined staff management interface with cleaner summary cards, enhanced time off request form with start and end times, and various mobile messaging improvements.
Enhanced check-in security with PIN verification, redesigned attendance page with unified student view, and new touch-optimized Tablet Mode for streamlined check-in/check-out at childcare facilities.
Platform-level messaging system allowing super admins to communicate directly with any user across all schools, plus configurable platform fees, automatic billing, and email template management.
Full-featured billing system allowing schools to create billing plans, assign them to students, and enabling parents to view and pay invoices directly through Stripe.
New searchable help center with detailed documentation for all platform features, accessible from both the public site and within the dashboard.
Expanded platform availability to support childcare centers in multiple English-speaking countries with full Stripe Connect payment processing.
Complete billing infrastructure with Stripe Connect for accepting parent payments, platform subscription management, and trial enforcement.
Comprehensive role-based access control system ensuring staff members only see features relevant to their role, with proper API-level security.
Enhanced dashboard experience with improved navigation, better visual feedback, and streamlined workflows.
Full dark mode support across the entire dashboard with system preference detection and manual toggle.
New public-facing pages for marketing and SEO with detailed feature explanations and resources.
Initial release of CentreCareOS - a comprehensive childcare management platform.