Skip to main content
Daniel Agafonov
FlowStack Co-founder, Software Engineer
View all authors

Program Check-In

· 7 min read
Daniel Agafonov
FlowStack Co-founder, Software Engineer

FlowStack now handles check-in for children's ministry and any other program where someone has to be dropped off and picked up. A parent opens the app and shows a QR code at the kiosk. The child gets a name tag, the parent gets a pickup code, and the parent's phone gets a notification. At pickup they scan again, or someone they trust types the code.

This is the companion post to Connected Accounts. The two features were built together, and work seamlessly together.


Setting up programs

A program is something like "Sunday Kids" or "Wednesday Youth." You decide who it's for: anyone, or a range of grades. Then you give it time slots. A slot can repeat every 1 to 12 weeks on the days you pick, once a month (for example, the 2nd Sunday or the last Friday), or happen only once. If a slot ends earlier in the day than it starts, it runs overnight, which covers lock-ins.

FlowStack creates the actual sessions from those slots and keeps 56 days of them on the calendar. You can change the times of one session or cancel it without touching the rest. If you later edit the slot, sessions you changed by hand stay the way you left them.

Each program also has a check-in window. By default it opens 15 minutes before the start and stays open until the end. You can open it at the start time or at midnight that day instead, and close it a set number of minutes after the start.

Grades update themselves

You set up your grade list once, with an age range for each grade. The default list goes from Nursery (age 3) through 5th Grade (age 10). You also pick a promotion date, June 1 by default. FlowStack uses each child's birthday to work out their grade as of the most recent promotion date. On that date every year, every child moves up a grade, and nobody has to edit anything.

When you change the grade settings, the admin panel can show you what grade any birthdate would land in today and after the next promotion, before you save.


The kiosk

Any phone or tablet running the FlowStack app can be a check-in station if a staff member is signed in to it. Kiosk mode fills the screen and has no back button. Staff press and hold the clock to leave it. The layout changes for phones, portrait tablets, and landscape tablets.

The parent's QR code changes every 30 seconds, and can be used only once. A screenshot from last week won't work, and neither will a code from another church. After the scan, the kiosk greets the parent by name. It lists every child they can check in, with a photo, grade, and suggested session. It skips children who aren't in the grade range for that program. Checking in and checking out share one button. Check-outs happen first, so a child can leave one session and join another in a single tap. If the parent tapped the wrong child, Cancel undoes it for 60 seconds.

When a program's next session starts right as the current one ends, the parent can choose Stay for next. The child moves into the next session without being picked up and checked in again. Staff confirm those children from the roster.


Name tags and pickup labels

If you have a Brother QL label printer on the same Wi-Fi network, the app finds it on its own. The supported models are the QL-710W, QL-720NW, QL-810W, QL-820NWB, QL-1110NWB, and QL-1115NWB. If it doesn't show up, you can enter the model and IP address by hand. We wrote the printer support against Brother's published command reference and don't use any third-party printing SDK. If you would like to support a different printer, please let us know.

Each check-in prints a name tag with the child's name, grade, program, allergies, notes, a guardian's name and phone number, and the pickup code. It can also print up to four parent pickup labels. Each label is two matching halves with a tear line between them.

If a label fails to print, check-in still goes through. The kiosk shows a banner with a Retry button, so a jammed printer never leaves a family waiting at the counter.


Pickup, and who is allowed to do it

Every check-in gets a 5-character pickup code. The code never uses 0, O, 1, I, or L, so nobody has to guess which one is printed. Parents can see the code on the Check-In page in the app.

A child can be checked out by:

  • the parent who checked them in, by scanning their QR code again
  • anyone the child is shared with through Connected Accounts, with their own QR code
  • anyone who has the pickup code and types it at a kiosk
  • a staff member, who has to enter a reason, which goes in the audit log

This is where Connected Accounts matters. Grandparents who share a family with you can drop the kids off with their own phone, and you can pick them up with yours. If you stop sharing a child with someone, the kiosk checks this at the moment of the tap, not when the code was scanned. A share you removed a minute ago is already gone.

After 5 wrong pickup codes, that kiosk stops accepting codes for 10 minutes. You can set the number of tries anywhere from 1 to 20. The error message never says whether a code exists.

If nobody checks a child out, FlowStack closes the check-in 6 hours after the session ends and tells the family. The roster marks it as closed automatically, separate from a real pickup.


What parents get on their phone

Parents get a notification when their child is checked in, checked out, moved to the next session, or closed automatically. They also get one when a check-in is undone. It goes to the parent who scanned, to the account the child belongs to, and to every account the child is shared with. Tapping it opens the Check-In page. These alerts have their own Family channel in notification settings, so a parent can turn them off without turning off anything else.

Staff can also message a family from the roster. Admins set up to 20 quick messages per program, like "Noah needs a diaper change," and staff can also type their own. Before sending, the screen shows exactly who will get the message. Every message sent is logged, and the roster shows what was sent today.


Rosters

Staff with check-in access can open a live roster on the web or in the app. It refreshes every 10 seconds. On the web you can see one day across all programs. You can filter by program, session, or status, search by child or guardian name, and see counts for how many children are checked in now, how many are still in after their session ended, and how many are staying for the next one. Tapping a child shows allergies, notes, who brought them in, and who was running the kiosk.

Each check-in record keeps a copy of the child's details and the session as they were at the time. If a family edits their profile next month, or you rename a program, the past rosters still show what happened that day.

There are two roles: Check-In Management sets up programs, grades, and messages, and Check-In Staff runs kiosks and rosters. Volunteers who only need to run a kiosk don't need access to the program settings.

To set up your first program, open the Check-In section of the admin panel.

Thank you

We hope you enjoy this new feature. If you have any questions, please reach out to us.

A Better Page Builder, Redesigned Video Library, and Cleaner Event Pages

· 2 min read
Daniel Agafonov
FlowStack Co-founder, Software Engineer

I've been heads-down this past week shipping three big updates across the platform. Here's what changed.

A Completely Reworked Text Editor in the Page Builder​

Building pages with our drag-and-drop editor got a lot more polished. The old text toolbar is gone, replaced with a proper rich-text toolbar that behaves the way you'd expect from any modern editor.

  • You can set line spacing, letter spacing, and text color directly, and headings finally use that spacing correctly.
  • Buttons and links work more reliably. You can now dynamically link to other pages on your site, without having the link break if you rename the page later.
  • You can now add a video player or a video background to a section of a page.
  • Shadow effects on boxes and sections used to be nearly invisible. Now they actually show up.

Video Library: Series, Credits, and Scripture References​

The video posts section of the admin panel has been redesigned from the ground up, both in how it looks and what it can do.

New capabilities:

  • Videos can now be grouped into a Series (sermon series, teaching series, etc.) and manage them from a dedicated admin page.
  • Videos can be attributed to speakers, authors, or contributors, with full create/edit/delete management.
  • Attach Bible passages directly to a video post, with a proper passage picker instead of typing references by hand.
  • The public video feed and the admin table both got new filters, making it much easier to find a specific video in a large library.

Event pages got simpler​

The layouts is simpler, images are handled better, and the overall page feels less cluttered that it was before.

Demo Website​

We have launched a brand new demo website that showcases all of the features of FlowStack. You can check it out at demo.flowstack-sites.com.


Questions about any of this? Let us know.