Skip to content

Notices

The notice model is on Notices. This page is what to do when something isn’t arriving.

Run this checklist in order. Most issues stop at one of the first three.

  1. Are overdue notices enabled for the library? Library level navigation path: Configure then Settings, the card: Automated Notices card: its button: Edit dialog has the setting: Send overdue notices switch. If off, no overdue notices fire from this library. (Common during migration; sometimes left off after a test.)
  2. Is the patron’s email on the patron record? Open the patron and check their email address. A blank or obviously-wrong email produces silent non-delivery; Lyra doesn’t surface a bounce in the app, so a bad address just fails quietly. For student patrons, also check the field: Guardian emails (see Guardian emails below); a notice can route to those addresses, and they fail just as silently.
  3. What’s the notice cadence? The setting: Frequency setting is Once, Daily, or Weekly. If it’s set to Once, the patron got their one notice and won’t get another. If Weekly, expect a 7-day gap between notices.
  4. What hour is the check set to? The setting: Daily check time is the hour the daily check runs. If it’s set to 7 AM and the patron expects a notice at 4pm, you’ll be looking for it at the wrong time.
  5. Has it actually been overdue long enough? The first overdue notice fires on the next eligible check after the due date. A loan due yesterday and a daily check at 7am means the notice fires this morning, not the moment the due date passed.
  6. Check what was actually sent. Lyra records each notice it sent (recipient, timestamp, Resend message ID, event type). If there’s no record for this patron and this loan, no notice was sent yet, so work back through steps 1-5. If there is a record, the message left Lyra and the issue is on the recipient side (mail filter, spam folder).

The patron themselves is getting notices, but the parent listed in their field: Guardian emails isn’t.

  • Confirm the field is populated. Open the patron; the field: Guardian emails field should have one or more addresses. If empty, no parent gets anything regardless of CSV history.
  • Confirm the separator. Semicolons (;), not commas (,). mom@example.com, dad@example.com parses as one bad address. mom@example.com;dad@example.com parses as two good ones. See Roster import formats.
  • Confirm each address parses. Open the patron; the rendered Guardian emails list shows each address as a separate item. If you see one item where you expected two, the separator is wrong.
  • Check spam at the recipient. School-district mail filters sometimes flag automated messages from new domains. Whitelist no-reply@lyralibrary.com on the school’s mail filter or in the parent’s personal mail.

Hold-ready notices have two send paths:

  • An event-driven send that fires when a staff user marks the hold Ready. This is the fast path; the notice typically goes out within a minute of the pull.
  • An hourly sweep that catches anything the event handler missed (e.g., a hold that became ready without a corresponding event). On the sweep path, a hold could wait up to an hour for its notice.

If you see notices delayed by hours or arriving in batches:

  • The sweep ran but the event didn’t. A notice arriving an hour after the pull was sent by the hourly cron, not the immediate handler. The patron still gets notified, just on the slower path.
  • setting: Ready-hold notice frequency is set to Once. The repeat notices ride the hourly sweep, and with setting: Ready-hold notice frequency on Once the sweep won’t re-send after the first notice. If the patron missed the one notice, don’t wait for the cron; re-send by hand with row action: Send notice on the screen: All Holds page. (On Daily or Weekly, the sweep keeps sending on that cadence.)
  • setting: Send hold ready notices is off. No hold-ready notices fire from this library at all. Toggle on if you want them.
  • Delivery delays at the recipient’s mail server. Lyra’s send is immediate; the SMTP path through the recipient’s provider can add minutes.

A notice was sent but the patron didn’t receive it

Section titled “A notice was sent but the patron didn’t receive it”

Lyra recorded the send, but the patron is sure they didn’t get it.

  • Look at the timestamp. Was it sent in the last few minutes? Mail can take up to a few minutes to arrive.
  • Search the patron’s inbox by sender. no-reply@lyralibrary.com. Sometimes the notice is there but filtered into a non-default folder.
  • Check spam. First-time senders to a domain often land in spam. Whitelist on the patron’s mail.
  • Confirm the email address is current. A patron who changed their email and didn’t update Lyra still has the old address on file. Update the patron record, the next notice goes to the right place.

Lyra records what it sent, not what the recipient’s mail server did with the message. If a recipient confirms their server accepted the message but it’s genuinely not findable, the cause is almost always a per-user mail rule.

Lyra is email-only. There’s no SMS, push, or in-app banner system. See Notices for the rationale.

If your school standard requires SMS, the workaround is forwarding from a dedicated email-to-SMS gateway, but that’s outside Lyra itself.

If many patrons across the same school suddenly stop getting notices, the most likely cause is the school’s mail filter changed and started blocking Lyra. The fix is on the school’s mail-filter side; ask your IT admin to add no-reply@lyralibrary.com and *.lyralibrary.com to the allowed-senders list.

Lyra doesn’t surface per-message bounce status in the app today. If a school-wide outage is suspected, contact support and we can pull the bounce data from our outbound mail provider.

If you expected a notice and Lyra has no record of sending one, or Lyra recorded the send but the recipient can’t find the message, email support with:

  • The patron’s identifier.
  • The expected notice (overdue for what item, or hold-ready for what item).
  • The library’s notice settings.
  • The expected send timestamp (or the actual one if you have it).

We can look at our outbound mail logs and trace what happened.