← All manuals and guides

School Rewards & Store: User Manual

Part of the Leadership Hub and the Educator Tools. For how this tool sits beside the rest of the suite, see For school leaders in the AlloFlow teacher guide.

13 sections about 25 minutes end to end reviewed September 2, 2026 prints to about 12 pages

Where to start

Principals and administrators: sections 2 and 3 are the setup; sections 5, 9, and 10 run and protect a trimester.

Teachers and cashiers: section 4 is awarding; section 5 is the register.

Students and families: section 6 is written for you.

1. What It Is and Who It Is For

School Rewards & Store is a school-owned points economy for positive recognition. Staff award points with a written reason, students see their balance and growth, and a store opens for a fixed window each trimester. The ledger lives in a protected Google Sheet that a managed school account owns, the portal runs as a Google Apps Script web app restricted to your Google Workspace domain, and AlloFlow holds nothing but the launcher address and a setup checklist on the device that connects. It is a pilot design for one school, not a district platform, and it stays separate from AlloHaven experience points inside AlloFlow.

Roles and what each can do
RoleRewardsStoreWhere they work
StudentOwn balance, growth levels, the reasons staff wrote, a prize goal.Sees the catalog and whether a prize is within balance; does not check out.The portal, or just the balance emails.
StaffAward points to one student or a group; undo their own award within fifteen minutes.None.The portal Award tab.
CashierNone.Complete checkout at the register against the live balance and inventory.The portal Store tab.
AdministratorEverything above plus corrections, categories, roster, staff access, guardian connections, settings, integrity and reconciliation.Catalog, inventory, shopping windows, refunds.The portal Admin tab; setup inside AlloFlow.

Roles come from the roster and the staff list on the server side. Signing in with a school Google account decides what you can see; nothing in the link itself grants access.

2. Quick Start for a Principal

Inside AlloFlow, open Educator Tools → School Rewards & Store, or Leadership Hub → School Rewards & Store. The panel that opens is both the setup and the launcher. The first time, it shows a ten-step checklist; once a deployment is connected, it opens on the launcher with the checklist folded below.

The School Rewards and Store panel before a portal is connected. A red student-data boundary note, a Launch card reading Not connected yet, a progress bar, a Next step banner, and the first numbered steps of the setup checklist with Copy Code.gs and Copy Portal.html controls.
First open: the setup checklist. Each copy control fetches the reviewed file, checks its signature, and marks the step done.

Practice first

Before any Google setup, and before a staff meeting, open the practice portal from the panel's Launch card (Practice with fictional data) or directly at alloflow-cdn.pages.dev/school-rewards-practice. It is the real portal running on a fictional ledger in your browser: awards, group awards, undo, checkout, receipts, refunds, and the student view all work, and nothing reaches a real ledger. A bar at the top switches the role (staff, cashier, administrator, student), picks a scenario (a small school in preview, a shopping day with the store open, a large school), and offers Reset data to start clean. The data persists in that browser between visits, so a mistake made in a staff meeting can be undone or reset without consequence.

The practice portal with its dark purple practice bar across the top showing Role Staff, Scenario Small school, Customize, Start the tour, Reset data, and Manual buttons; below it the real Award points tab with student tiles outlined in amber and a Practice tour box reading 1 of 4, Choose the student.
The practice portal: the real portal, a fictional ledger, a role and scenario bar, and a tour that highlights the control each step is about.

You do not need to customise anything to practise: pick a scenario and press Start the tour. Customize opens a panel for making the practice school look like yours: the school name, number of students, store status, starting points, the recognition categories and prizes as simple rows, and the tour steps as cards. Each card has a role, a tab to open, a control to highlight chosen from a list, a title, and a sentence or two; steps can be added, reordered, or removed, and Use the built-in tour puts the original back. Nothing has to be typed in a technical format. Apply and reload rebuilds the fictional ledger from those settings; Export settings and Import settings move the whole practice set, tour included, between schools as one file. The tour runs the steps for the current role, so a staff meeting can run the staff tour while cashiers run theirs at the register.

  1. Confirm district review and the managed account that will own the ledger.
  2. Create the private Apps Script project and paste the four files from the copy controls.
  3. Run the one-time setup using the function the panel generates from your school name, domain, year, and growth thresholds.
  4. Deploy as a web app restricted to your Workspace domain and paste the deployment URL into step 9.
  5. Open the deployment check, then share the staff link from the Launch card.

Section 3 walks through each step. Most of the time goes into the district conversation in step 1, not the clicks.

3. Setup, Step by Step

The checklist is resumable: it is saved on the device, and steps you tick stay ticked. Copy steps complete themselves when a copy succeeds.

Handing it to IT. Steps 2 to 8 happen in the Google Apps Script editor, and most principals delegate them. Fill in the school details under step 7, then use Download instructions for IT at the top of the checklist: one file with the eight steps in plain words, the four sources with copy buttons, and the setup function. Copy as email text gives the same steps with links to the sources. The coordinator sends back the link ending in /exec, which you paste in step 9.

  1. Confirm district review and the managed account. The school or district reviews Code.gs, Portal.html, Index.html, and appsscript.json, plus Apps Script use, Sheet storage, mail sending, and retention. Sign in to the managed Google Education account that will own the ledger, the mail trigger, and the private print-model folder. A durable role account is safer than a personal one.
  2. Create the private project. Open script.new, confirm the account again, and name the project AlloFlow School Rewards. In Project Settings turn on Show appsscript.json manifest file in editor.
  3. Replace Code.gs. Code.gs is already open with a few starter lines. Click inside it, press Ctrl+A, paste the source over it, and save with Ctrl+S.
  4. Add the Portal page. In the Files list on the left click the + beside Files and choose HTML. Type Portal (the editor adds .html), press Enter, select the starter lines, paste, save.
  5. Add the Index page the same way, named exactly Index. It only wraps the Portal page.
  6. Replace appsscript.json. The manifest restricts the web app to your domain, runs it as the deploying account, and declares the Sheets, Drive, mail, and trigger scopes.
  7. Run the one-time setup. Fill in the school name, allowed domain, academic year, and growth thresholds; leave the default recognition categories on unless the school has its own. Copy the generated runInitialSchoolRewardsSetup function, paste it at the end of Code.gs, choose it in the function menu, and click Run. Approve the scopes once. The account that runs it becomes the first administrator, and the allowed domain must match its email domain. Staff, cashiers, and students are added later inside the portal.
  8. Deploy. Deploy → New deployment → Web app. Execute as Me; who has access: users in your Google Workspace domain, never Anyone. Copy the URL ending in /exec. Any later source change needs a new deployment version.
  9. Paste the deployment URL and connect. Only an HTTPS script.google.com address ending in /macros/s/…/exec is accepted. It is saved on this device.
  10. Verify. Open the deployment check; the page should say Deployment check passed with the school, domain, script version, and your role. Then open the portal once as each intended role and confirm each sees only its own surface.
The panel after connecting: a Connected badge, the saved deployment URL, buttons to open the portal, open the deployment check, and disconnect, and a Share with staff box with a QR code, the staff link, and a Copy staff link button.
Connected: the Launch card, and the staff link that colleagues use with their own Google sign-in.

Sharing with staff. The staff link is the same portal address. It carries no secret, so posting it in a staff channel or on a poster is fine: sign-in and the roster decide what each person can do. The QR code is the same link.

If the clipboard is blocked in your window, the copy control shows the verified source pre-selected in a box; press Ctrl+C (Cmd+C on a Mac) and paste it into the editor. Copying from the box marks the step done.

4. Awarding Points

Training day: the printable quick cards hold this section and the next on one page each, for staff and for cashiers.

Staff award from the portal Award points tab. Students appear as tiles with their name, grade and homeroom, a short reference code, and available points. Tap a tile to select the student; the confirmation panel repeats who you chose. Pick a recognition category, enter the points, and write what the student did. The explanation is required and is the sentence the student will read, so write it to them.

The Award points tab. Search and grade and homeroom filters above a grid of student tiles; Blake T. is selected with a purple outline; below are the confirmation panel, the group award checkbox, points, category with its help text, the explanation field, and a Record award button. A Current balances list sits on the right.
Awarding to one student. The tile grid replaces a dropdown so the intended student is visible before the award is recorded.
The Award points tab in the dark theme with group mode on: the tiles act as checkboxes, a counter reads three students selected, and Select all shown and Clear buttons sit above the grid.
A group award in the portal's dark theme. The counter shows how many students the one explanation will reach.

5. The Store: Windows, Checkout, and Receipts

Shopping happens inside a trimester window that an administrator moves through Draft, Preview, Open, Closed, and Archived. In Preview, students see prizes and what they can afford; in Open, cashiers can check out. Configured start and end times fail closed outside the window.

The repository README carries a shopping-day runbook with the go/no-go review, the day-of routine, and what to do when a request times out. Follow it as written: the standing rule is never to resubmit an ambiguous request with a new key.

6. For Students and Families

Students do not need the portal to take part: balance emails arrive on the schedule the school sets. A rostered student who opens the portal with their school account sees only their own balance, growth, recent recognition, and the prize catalog.

A student's overview: an available balance of 42 points, growth points earned, store status Preview with the opening date, a Prize preview with two prizes and Save for this buttons, a Saving for line reading Robotics kit hour 80 points with 38 more points to go, and a My growth card with a Helpful level bar.
What a student sees. The prize goal line updates as points arrive; the goal itself stays in that browser and is never sent to the ledger.

7. Connecting to the Classroom: Worksheet and Roster Bridge

AlloFlow and School Rewards use opposite identity models on purpose. Classroom sessions in AlloFlow run on codenames and hold no student names or emails; the rewards ledger is keyed by each student's managed Google identity. Two bridges respect that boundary.

The lower part of the connected panel: the Share with staff box, the folded setup checklist, a Classroom roster bridge card listing Period 2 and Period 5 with learner counts and a Download roster template CSV button, and a Recognition worksheet table listing Blue Falcon with three tokens for Collaboration and Ready to learn, and Quiet Otter with one token for Self-regulation, with download and copy buttons.
The two classroom bridges. Both work with codenames only; the administrator adds real identities from the student information system.

8. The 3D Print Lab

The Print Lab lets a student submit a small 3D design from AlloFlow's STEAM Lab, have staff review and quote it in points, and reserve those points until the print is fulfilled. It is a large surface with its own safety and review workflow, and most pilots will not use it at first. An administrator can hide the tab under School settings until the school has a reviewed printer workflow; existing print records stay in the ledger, and hiding the tab is a display setting rather than an access control. The full workflow, formats, and safety boundaries are documented in the package README and the Print Lab design note.

9. Administration

First-week checklist. The top card on the Admin setup tab works itself out from the ledger: staff and cashier members, students on the roster, categories, a prize, a store window in preview, the first award, and the first checkout. Nothing is ticked by hand, and each open line names the card that completes it. It is also the honest way to confirm each role works: when a teacher's first award appears, their sign-in and role are proven.

Roster import. The Student roster card shows two example rows above the file chooser and offers a blank template to download. Fill one row per student in Sheets or Excel, save as CSV, and import up to 500 rows at a time.

The Admin setup tab: a row of section chips such as School settings, Student roster, Staff access, Prize catalog, and Trimester reconciliation, then cards for School settings with the Print Lab checkbox and Student roster with the add-student form, each with a Collapse button.
The Admin tab. The section index jumps to a card, and each card collapses so a tablet is not one long column of forms.

10. Privacy, Records, and Boundaries

11. Themes, Phones, Languages, and Accessibility

The student overview on a phone in Spanish: the Español menu beside the ESTUDIANTE badge, stacked cards for Mi saldo disponible para gastar, Puntos de crecimiento ganados, and Estado de la tienda, and the tab strip pinned to the bottom reading Resumen, Tienda, and Laboratorio de impresión 3D.
A student's phone view in Spanish, with the tab bar pinned to the bottom of the screen.

12. Troubleshooting

"The ledger needs an administrator to review it." The portal shows this sentence in place of any internal integrity message. Nothing was changed. Show details reveals the exact text for the administrator, who runs the integrity report from Admin setup. The deployment check page and the portal's day-to-day messages are written to say what happened and what to do next; if one is still unclear, quote it when asking for help.

13. Glossary

Ledger
The append-only list of point entries: awards, reversals, spends, and refunds.
Available balance
Ledger balance minus points reserved for an active print request.
Growth level
A per-category level computed from lifetime net awards; purchases never lower it.
Shopping window
The trimester record whose state decides whether prizes are previewed, sold, or closed.
Group award
One explanation recorded as separate awards for up to sixty students.
Undo window
The fifteen minutes in which the awarding staff member can reverse their own award.
Deployment check
The portal page at the deployment URL with ?api=status that confirms the service, version, school, domain, and your role.
Codename
The classroom-session identity AlloFlow uses instead of a student's name.
Roster bridge
The CSV template that carries groups and codenames, never names or emails, from AlloFlow to the portal importer.
Practice portal
The real portal page served with a fictional ledger in your browser, with a role and scenario bar and an editable tour; nothing reaches a real ledger.
Idempotency key
A stable request key that lets an interrupted operation be retried exactly once without duplicating it.