> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yorlet.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Loyalty messages

> Send OneMove push notifications and emails to residents.

Messages let you reach residents as a **OneMove push notification**, an **email**, or both. You can write to everyone in a building, or to a single customer with an active tenancy.

You can view every message from the [Messages](https://dashboard.yorlet.com/loyalty/messages) page. The [Loyalty page](https://dashboard.yorlet.com/loyalty) also charts how many were delivered, read, and failed.

Successful sends are billed at **£0.02** per push notification or email. Failed or skipped deliveries are not charged. See [list pricing](https://www.yorlet.com/pricing#loyalty).

To send messages from your own software, use the [Messages API](/development/integrations/loyalty/send-messages).

## Sending a message

To send a message, follow these steps:

1. Go to [Messages](https://dashboard.yorlet.com/loyalty/messages).
2. Click **New message** (or press **N**).
3. Choose **Send to**: **Residents in a building** or **A single customer**.
4. Pick the **Building** or **Customer**.
5. Choose **Send as**. Turn on one or both:
   * **Push notification** delivers the message in the OneMove app.
   * **Email** sends it to the resident or customer email address.
     At least one must stay on.
6. Enter a **Title** (maximum 100 characters).
7. Optionally choose a **Category**: **Announcement**, **Event**, **Offer**, or **Alert**.
8. Enter the **Message** (maximum 500 characters).
9. Click **Send**.

The message is queued immediately. It shows as **Sending** until delivery finishes, then moves to **Sent** or **Failed**.

<Tip>
  You can also click **New message** from the empty state if you have not sent any messages yet.
</Tip>

## Who receives the message

Who is included depends on the recipient and the channels you turn on.

### Residents in a building

* **Push** goes to every **active** resident who uses OneMove and has confirmed they live at the building. Residents who are still pending, or who declined, are not included.
* **Email** goes to every **active** resident with an email address, including residents who do not use OneMove. Duplicate addresses are sent once.

Residents without OneMove are skipped for push. Residents without an email address are skipped for email.

### A single customer

The customer must have an **active tenancy** on this account.

* **Push** goes to the customer if they use OneMove.
* **Email** goes to the customer email address. They do not need to use OneMove.

## Push, email, and the noticeboard

* **Push** creates a OneMove notification and adds the message to the resident's inbox. Recipients without notifications enabled still see it in the inbox the next time they open the app. **Read** counts only apply to OneMove.
* **Email** sends a branded email from your account name, with the title as the subject. Email-only sends do not appear in the OneMove inbox.
* **Building noticeboard** — sent building broadcasts appear on the noticeboard in OneMove. A category groups them as Announcement, Event, Offer, or Alert. Residents who move in later still see earlier posts. Customer messages do not appear on the noticeboard.

You can send both channels together. Each successful delivery is billed separately.

## Statuses

The [Messages](https://dashboard.yorlet.com/loyalty/messages) page has tabs for:

* **Sent** — at least one push or email was delivered.
* **Sending** (`pending`) — the message is still being delivered.
* **Failed** — nothing was delivered.

If a send fails, the reason is shown:

* **Not on OneMove** — push was on, and there was no OneMove user to notify.
* **Notifications disabled** — push was on, but nobody in the audience had notifications enabled.
* **No email address** — email was on, and nobody in the audience had an email address.
* **Send error** — the push or email provider rejected the send.

If you send both channels, the message is **Sent** when either channel delivers. It is **Failed** only when neither does.

## Delivery

The **Delivered** column shows how many sends were accepted, out of how many were attempted:

* **Push** — accepted by the notification provider / attempted.
* **Email** — accepted by the email provider / attempted.

Skipped recipients (no OneMove user, notifications off, or no email) are not attempted and are not billed.

## Billing

Each successful push or email is billed at **£0.02** when the message is sent. A building broadcast is billed per resident who actually received it. Sending both channels to the same person counts as two sends.

You need Loyalty enabled on [Your plans](https://dashboard.yorlet.com/settings/plans). Existing Loyalty subscriptions pick up messaging on the first successful send.
