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

# Sale Alerts

> Get a Telegram message for each new sale, with its install source and the screens the buyer saw before paying

Appeeky Analytics can post each new sale to Telegram through the **Appeeky Alerts** bot. Each message names the app, the price, the install source and the screens the buyer saw before paying.

```
💰 New sale · Mtioon
TRY 999.99 · pro_yearly · 🇹🇷 TR
Source: Apple Search Ads (campaign 542370539, keyword 87675432)
Installed 2 days ago · iPhone16,2 · iOS 18.1
Journey: Onboarding → Paywall
```

***

## Set Up

**1. Pair Telegram with Appeeky Alerts**

In Appeeky, open **Settings → Alerts**, add a Telegram channel and pair it with the Appeeky Alerts bot (`@AppeekyAlert_bot`). There are no chat ids to copy.

**2. Turn on Analytics and connect RevenueCat**

Sales come from RevenueCat. See [Revenue](https://docs.appeeky.com/docs/analytics-revenue.md).

Sale messages go to every Telegram chat you paired with Appeeky Alerts.

***

## What a Message Contains

| Line | Content |
| - | - |
| Header | The kind of event and the app name |
| Price | The price in the buyer's currency (or USD when the local price is missing), the product id and the buyer's country with its flag |
| Source | Where the install came from. See below. |
| Installed | How long ago the install was first seen, with the device model and OS version |
| Journey | The last screens the buyer saw before the purchase, oldest first. Repeated screens in a row are shown once, and only the last 6 are kept. |

The **Installed** and **Journey** lines only appear when the sale is linked to an install with `identify`.

### Source line

| Source | Example |
| - | - |
| Apple Search Ads | `Apple Search Ads (campaign 542370539, ad group 542370540, keyword 87675432)` |
| Campaign link | `Campaign link: newsletter-oct (newsletter)` |
| Google Play referrer | `Google Play referrer: october` |
| Organic | `Organic (store search or browse)` |
| No linked install | `Unknown (no SDK install linked to this customer)` |

***

## Which Events Notify

| Event | Header | Message |
| - | - | - |
| Purchase | New sale | Yes |
| Trial started | Trial started | Yes |
| Trial converted | Trial converted | Yes |
| Refund | Refund | Yes |
| Renewal | | No. Renewals are recorded as revenue without a message. |

Only production RevenueCat events are recorded, so sandbox purchases never send a message. Each RevenueCat event sends at most one message, even if RevenueCat retries it. Ad revenue does not send messages.

***

## Turn Off for One App

Sale messages are on for every app by default. To turn them off for one app, switch off sale alerts in the app's Analytics settings, or send:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X PATCH "https://api.appeeky.com/v1/analytics/apps/YOUR_APP_ID/settings" \
  -H "X-API-Key: YOUR_APPEEKY_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "notifySales": false }'
```

Sales are still recorded. Only the message is skipped.

***

## Related Docs

* [Revenue](https://docs.appeeky.com/docs/analytics-revenue.md)
* [Attribution](https://docs.appeeky.com/docs/analytics-attribution.md)
* [Analytics API](https://docs.appeeky.com/docs/analytics-api.md#settings)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.