Release Notes

See what's new in NavEd. Product updates, new features, and improvements for micro school, co-op, and homeschool management.

130 releases
Page 1 of 13
v2026.4.1.2

When you try to save a user with an email that's already taken, you now get a clear message — not a cryptic error.

If an administrator tried to update a user's or staff member's email address to one that already belonged to another account, NavEd would show a raw technical error message instead of something helpful. It said something like "Failed to Update User: duplicate key value violates unique constraint..." — which tells you nothing about what to actually do.

We've fixed this so that when you enter an email already in use, you'll see a clear message: "That email address is already in use by another account. Please choose a different email." The edit page stays open so you can correct it right away.

Fixes and Improvements

  • Fixed confusing error when editing a user or staff member with a duplicate email address
  • Improved error handling for the staff edit flow with the same friendly message

v2026.4.1.1

Class names are back on the enrollment page.

If you've been trying to enroll students into subjects and noticed the class list looked... empty — you weren't imagining it. The checkboxes and "Enrolled" badges were showing up fine, but the actual subject names were invisible. Not a great experience when you're trying to assign 15 classes to a student.

We tracked this down and fixed it. Subject names now display correctly on both enrollment pages, in both light and dark mode. Thanks to the Compass team for flagging this one.

Fixes and Improvements

  • Fixed invisible subject names on the student enrollment page (/subjects/enroll/student)
  • Fixed the same issue on the subject-first enrollment page (/subjects/enroll/)

v2026.3.31.2

Legal compliance and marketing updates for payment collection.

Updated Terms of Service with a new Payment Processing section covering platform role, fee structure, refund policy, dispute handling, and Stripe terms. Added a public feature page for Payment Collection at /features/payment_collection/. The payment dashboard now shows coming soon placeholders for Tuition Payments and Standalone Invoicing.

What's New

  • Legal: Terms of Service Section 16 -- Payment Processing disclosures (platform role, 1% + Stripe fees, refunds, disputes, Stripe terms)
  • Marketing: Payment Collection feature page with benefits, use cases, and fee comparison
  • Payments: Coming soon cards for Tuition Payments and Standalone Invoicing on the payment dashboard

v2026.3.31.1

Fixed a security issue where editing a user in one school could overwrite another school's user data.

HODs can now only edit users who have a role (admin, staff, student, or parent) in their own school. Previously, the edit user form did not verify that the target user belonged to the current school before saving changes to the shared user record, which could cause identity corruption across schools.

What's New

  • Security: tenant-scoping guard on user edit prevents cross-school identity overwrites
  • Security: edit user form page also checks tenant membership before displaying

v2026.3.30.2

HODs can now drill into individual payments and see payment status on form responses.

The payment transaction list now links to a full detail page showing payer info, line items, fee breakdown (with school-absorbs vs. pass-to-parent indicator), a clickable Stripe Dashboard link, and a refund button. The form responses table shows payment status badges (Paid, Pending, Failed, Refunded) per submission. CSV/XLSX exports of payment-enabled forms now include Payment Amount, Fee, Net, Status, and Date columns.

What's New

  • Payments: full payment detail page with line items, fee breakdown, Stripe reference, and refund modal
  • Forms: payment status badges on the form responses table for payment-enabled forms
  • Export: CSV and XLSX exports include payment columns for forms with payment fields

v2026.3.30.1

HODs now have a dedicated Payments section with a dashboard and transaction list.

A new "Payments" item in the sidebar gives HODs one-click access to payment activity. The dashboard shows summary cards (total collected, pending, refunded), a per-form breakdown table, recent transactions, and Stripe payout status. The transaction list provides filterable, sortable, paginated browsing of all payment transactions with status, form, date range, and payer search filters.

What's New

  • Payment dashboard with summary stat cards, per-form payment table, recent transactions, and payout status
  • Filterable, sortable, paginated transaction list
  • "Payments" sidebar item for HOD users (requires Forms feature)
  • School timezone support for consistent timestamp display

v2026.3.27.2

HODs can now see payment details and issue refunds from the form response page.

When viewing a form submission that included a payment, HODs see the full payment breakdown: amount charged, net to school, card used, payer info, and timestamp. A refund button opens a confirmation modal showing the amount and parent name. Confirming the refund processes it through Stripe, reversing both the transfer to the school and NavEd's platform fee. Parents receive automatic email receipts from Stripe after successful payments.

What's New

  • Payment status badge on form response detail (Paid, Refunded, Failed, Disputed, etc.)
  • Full payment breakdown with payer identity and card details
  • One-click refund with confirmation modal
  • Automatic Stripe receipt emails for parents

v2026.3.27.1

Payment webhooks now drive the complete payment lifecycle.

Stripe Connect webhook handlers now process all payment events: successful checkout, expiration, failure, refunds, disputes, and payouts. Each successful payment creates an immutable PaymentTransaction record with a full fee breakdown. Form submissions automatically transition through the correct statuses as events arrive. Parents can retry failed or expired checkouts.

Under the Hood

  • PaymentTransaction model with fee breakdown, payer identity, card details, refund/dispute tracking
  • 8 new Stripe Connect webhook handlers for the complete payment lifecycle
  • FormSubmission extended with failed, expired, refunded, and disputed statuses
  • StripeConnectAccount payout tracking fields

Fixes and Improvements

  • Staff: fixed crash caused by Django FK descriptor zeroing out admin_id in memory for orphaned records (Sentry #7288969155)
  • Staff: added defensive template guards so orphaned staff records display instead of crashing the page
  • Staff: orphaned records now log a warning for visibility without breaking the user experience

v2026.3.25.2

Parents can now pay for forms with Stripe Checkout.

When a school adds a payment field to a form, parents filling it out see a live payment summary with line items, quantities, and fee breakdown that updates as they change values. Clicking "Submit & Pay" saves their responses and redirects to Stripe's secure checkout page. After payment, they land on a confirmation page showing their itemized order, fees, total, and card details. If they abandon checkout, they see a banner with options to retry payment or cancel their submission. Each parent can only submit once per form.

What's New

  • Payment summary section on forms with dynamic totals that update as quantities change
  • Submit & Pay button with full-page overlay during Stripe redirect
  • Payment confirmation page with order summary, fee breakdown, and card last 4 digits
  • Abandoned checkout retry and cancel flows
  • Parent name and email auto-filled from their account
  • 12 integration tests covering the complete payment flow

v2026.3.25.1

Payment checkout foundation added for parent form submissions.

Building toward the parent checkout experience. This update adds payment state tracking to form submissions so we can follow each payment through its lifecycle -- from draft to payment pending to confirmed to complete. It also adds the backend service that will create Stripe Checkout Sessions when parents submit payment forms, with destination charges that route funds directly to the school's connected Stripe account.

Under the Hood

  • Added payment state tracking to form submissions (draft, payment_pending, payment_confirmed, complete)
  • Created CheckoutService for Stripe Checkout Session creation with destination charges
  • Added parent-facing fee preview endpoint for real-time fee calculations during form fill
  • Extended form submission service to support draft status for payment forms
  • 19 tests covering state machine transitions, Stripe API mocking, and fee calculations

v2026.3.24.2

Payment field configuration UI added to the form builder.

Schools can now add a Payment field type when building forms. The Payment field includes a line items editor where you can set item labels, prices, and optionally link quantities to number fields on the same form. Fee handling is configurable with three modes -- School Absorbs Fees, Pass Fees to Parent, or let Parents Optionally Cover Fees -- with automatic enforcement of state surcharge laws. A live fee preview shows exactly how much Stripe and NavEd fees will be for any configuration.

Under the Hood

  • Added Payment field type to form builder with line item management (add, edit, delete, drag-to-reorder)
  • Added fee mode selection with radio cards and live fee preview calculations
  • Added surcharge law enforcement that disables restricted fee modes for CA, CT, MA, ME
  • One payment field per form enforced with inline messaging
  • 31 tests covering all AJAX endpoints, access control, and business rule validation

v2026.3.24.1

Payment field configuration models and fee calculation engine added.

Continuing the foundation for school payment collection. This update adds the data models that let schools configure payment fields in their forms -- including line items with prices and fee mode settings (who pays processing fees). It also adds the fee calculation service that computes Stripe and NavEd fee breakdowns with penny-perfect Decimal math, and enforces surcharge laws for states like California and Connecticut that prohibit passing credit card fees to customers.

Under the Hood

  • Added PaymentFieldConfig and PaymentLineItem models for form payment configuration
  • Added "Payment" as a new field type in the form builder
  • Created fee calculation service with Decimal arithmetic for Stripe (2.9% + $0.30) and NavEd (1%) fees
  • Added surcharge law enforcement for CA, CT, MA, and ME

2 3

Want to stay updated?

Sign up for NavEd to get notified about new features and improvements

Get Started Free