---
title: "Notifications and the bell · BlastoClean docs"
description: "The in-app feed of things that need a person: what raises one, who receives it, how it is scoped to a branch, and what happens to old ones."
url: "https://www.blastoclean.com/docs/notifications"
---

# Notifications and the bell

Running the company · Web and mobile · 4 min read · updated August 24, 2026

**The bell in the header carries a personal feed of the things that need somebody — a declined card, a reply, a new lead, an accepted quote, an open visit — with an unread count, and who receives each one follows the roles and locations you already set.**

Everything the bell announces already happened somewhere nobody was watching:
a card declined overnight, a customer texted at 7am, a lead landed from the
website form, a quote was accepted from a phone in a car park. Each of those
also sends an email — and email is where news goes to be buried.

The bell is the in-app half of that: a feed of the things that need a person,
with a count of what you have not read. It is in the header of the web app and
on the app bar of the mobile app, and it needs no setting up.

## What raises one

| Notification         | Raised when                                                   |
| -------------------- | ------------------------------------------------------------- |
| Payment failed       | A customer's card payment does not go through                  |
| Subscription problem | The card on your own BlastoClean subscription is declined      |
| New text or email    | A customer writes to you                                       |
| New quote request    | Somebody asks for a quote through your intake form or widget   |
| Quote accepted       | A customer accepts a quote                                     |
| Quote declined       | A customer declines a quote                                    |
| Visit still open     | A visit has ended but is not marked completed                  |
| Reschedule requested | A customer asks to move a visit                                |
| Visit confirmed      | A customer confirms a visit from their confirmation page       |
| New service request  | A client raises a request or an issue in their portal          |
| Document expiring    | A compliance document is close to its renewal date             |

## Who receives each one

Who ought to hear about something is decided when it happens, from the roles
and permissions you have already set — so what you see is only ever your own.
Seeing a payment fail is not the same as being able to do anything about it:

- A **failed payment** goes to the people who can take payments.
- A **new lead** goes to the people who write quotes.
- A **customer's reply** goes to the people who look after customers.
- An **accepted or declined quote** goes to owners, managers and whoever wrote
  the quote.
- An **open visit** goes to owners, managers and the crew assigned to it.
- A **confirmed visit** goes to owners, managers and the crew assigned to it.
- An **expiring document** goes to owners and managers.

See [Team roles and permissions](/docs/team-roles-and-permissions) for what each
role can do.

A confirmed visit is the one entry on that list with no email behind it. It
asks nothing of anybody — the visit stands, the crew already has it — so it is
raised in the bell and nowhere else, and only when the customer says yes on
their own confirmation page. Confirming a visit yourself from the app raises
nothing: you already know.

If your company runs more than one location, a notification about one branch's
work only reaches people working in that branch. Company-wide news — billing and
compliance — reaches everybody entitled to it.

## Reading, and marking read

Opening the panel does not clear it. A notice is marked read when you click it,
which also takes you to the exact thing it is about — the failed payment, the
quote, the conversation. **Mark all as read** is there when you want the broom.

The count keeps itself current while you have the app open. BlastoClean does
not send phone push notifications; the bell is in-app, alongside the emails
that were already being sent.

## The same event never says itself twice

Every notification carries a natural key, so a payment webhook delivered twice,
or a sweep that runs every quarter of an hour, cannot tell the same person the
same thing again.

## Closing out a visit

A visit that ended hours ago and still says scheduled is unfinished paperwork
with money attached: completing it is what raises the invoice and asks for the
review, and a calendar full of stale open visits quietly makes the reports
wrong. The person it was assigned to and the office are nudged once per
visit — not once every quarter of an hour. See
[Work orders and visit photos](/docs/work-orders-and-visit-photos) for closing
one out.

## Old notifications

The feed is a to-do surface, not an archive. Notices older than **60 days** are
removed. Nothing is lost by that: the record they point at — the payment, the
quote, the message — stays where it is, and
[the activity trail](/docs/team-roles-and-permissions) is the archive.

Customer replies also live in [the customer inbox](/docs/customer-conversations),
which is where you answer them.
