ManaChat Privacy Policy

How we handle your data

ManaChat is available on Android and iOS.

Matrix

ManaChat uses the Matrix protocol. This means that ManaChat is just a client that can be connected to any compatible matrix server. The respective data protection agreement of the server selected by the user then applies.

For convenience, one or more servers are set as default that the ManaChat developers consider trustworthy. The developers of ManaChat do not guarantee their trustworthiness. Before the first communication, users are informed which server they are connecting to.

ManaChat only communicates with the selected server and with OpenStreetMap to display maps.

More information is available at: https://matrix.org

Database

ManaChat caches some data received from the server in a local sqflite database on the device of the user. ManaChat always tries to encrypt the database by using SQLCipher and stores the encryption key in the Secure Storage of the device.

More information is available at: https://pub.dev/packages/sqflite and https://pub.dev/packages/sqlcipher_flutter_libs

Encryption

All communication of substantive content between ManaChat and any server is done in a secure way, using transport encryption to protect it.

ManaChat also uses End-To-End-Encryption by using Vodozemac and enables it by default for private chats.

App Permissions

The permissions are the same on Android and iOS but may differ in the name. These are the app permissions:

Internet Access

ManaChat needs to have internet access to communicate with the Matrix Server.

Vibrate

ManaChat uses vibration for local notifications. More information about this is at the used package: https://pub.dev/packages/flutter_local_notifications

Record Audio

ManaChat can send voice messages in a chat and therefore needs to have the permission to record audio.

Write External Storage

The user is able to save received files and therefore the app needs this permission.

Read External Storage

The user is able to send files from the device's file system.

Location

ManaChat makes it possible to share the current location via the chat. When the user shares their location, ManaChat uses the device location service and sends the geo-data via Matrix.

Push Notifications

ManaChat uses the Firebase Cloud Messaging service for push notifications on Android and iOS. This takes place in the following steps:

  1. The matrix server sends the push notification to the ManaChat Push Gateway
  2. The ManaChat Push Gateway forwards the message in a different format to Firebase Cloud Messaging
  3. Firebase Cloud Messaging waits until the user's device is online again
  4. The device receives the push notification from Firebase Cloud Messaging and displays it as a notification

event_id_only is used as the format for the push notification. A typical push notification therefore only contains:

A typical push notification could look like this:

{
  "notification": {
    "event_id": "$3957tyerfgewrf384",
    "room_id": "!slw48wfj34rtnrf:example.com",
    "counts": {
      "unread": 2,
      "missed_calls": 1
    },
    "devices": [
      {
        "app_id": "chat.fluffy.fluffychat",
        "pushkey": "V2h5IG9uIGVhcnRoIGRpZCB5b3UgZGVjb2RlIHRoaXM/",
        "pushkey_ts": 12345678,
        "data": {},
        "tweaks": {
          "sound": "bing"
        }
      }
    ]
  }
}

ManaChat sets the event_id_only flag at the Matrix Server. This server is then responsible to send the correct data.

Explanation of ManaChat's Compliance with App Store Safety Standards

ManaChat is committed to promoting a safe and respectful environment for all users. As a Matrix client, ManaChat connects users to various Matrix servers. Please note that ManaChat does not host or manage any servers directly, and as such, we do not have the capability to enforce content moderation or deletion within the app itself.

To enhance user safety and help protect against the sexual abuse and exploitation of children, ManaChat enables users to report inappropriate content directly to server administrators.

Reporting Content or Users:

  1. Mark a message in the chat: Tap and hold the message you wish to report.
  2. Report the message: Select the "Report" option.
  3. Provide a reason and score: Enter the reason for reporting and assign a score from 1-100 to indicate how offensive the content is.
  4. Notification to admin: The server administrator will be notified of the reported content.

In addition to reporting messages, users can also report other users following a similar process.

We encourage server administrators to adhere to strict safety standards and provide mechanisms for addressing and moderating inappropriate content. For more information on the Matrix protocol and its safety standards, please refer to the following link: https://matrix.org/docs/older/moderation/

User Conduct

By using ManaChat, you agree to use the service responsibly and in accordance with applicable laws and these guidelines. The following conduct is strictly prohibited:

  1. Illegal activity — Using ManaChat to engage in, facilitate, or promote any unlawful activity, including fraud, harassment, or distribution of illegal content.
  2. Harmful content — Sending, sharing, or storing content that is abusive, defamatory, obscene, or that promotes violence, hatred, or discrimination against any individual or group.
  3. Child safety — Any content that sexually exploits or endangers minors is strictly forbidden and will be reported to the relevant authorities.
  4. Spam and abuse — Sending unsolicited messages, flooding rooms, or using automated bots to disrupt the experience of other users.
  5. Impersonation — Impersonating another person, organisation, or entity in a misleading or deceptive manner.
  6. Unauthorized access — Attempting to access, interfere with, or disrupt any server, network, or account without authorisation.
  7. Malware — Uploading or transmitting viruses, malware, or any other malicious code.

Because ManaChat connects to independently operated Matrix servers, the conduct policies of those servers also apply. Users are responsible for reviewing the terms of the server they choose to use.

Violations may result in account suspension or termination by your server administrator. ManaChat developers may also block access to the default server in cases of serious or repeated misconduct.

To report a violation, use the in-app reporting feature (tap and hold a message → Report) or contact your server administrator directly.


Last updated: February 2026