Quickstart
Overview Credentials What we collect What we never collect Deletion Your rights Terms Support Quickstart

The short version

1. Introduction and scope

Innova Apps ("we," "our," or "us") publishes Bulk SMS Sender, an add-in for Microsoft Excel that sends and schedules SMS messages through your own Twilio account. This Privacy Policy explains what personal data we process when you use the add-in, the pages under innovaapps.ai/excel-sms/, and the account behind them.

This policy stands on its own. It is separate from our Terms of Service, which govern your use of the add-in.

For the purposes of the EU General Data Protection Regulation (GDPR), the data controller for the account data described below is:

Innova Apps Tove Maës vej 1, 1 TH 2500 Valby
Denmark
CVR: 45291154
support@innovaapps.ai

Innova Apps is not affiliated with, endorsed by, or sponsored by Twilio Inc. or Microsoft Corporation. "Twilio" is a trademark of Twilio Inc.; "Microsoft" and "Excel" are trademarks of the Microsoft group of companies.

2. Your Twilio credentials and your messages

This is the part of the add-in most people want to understand first, so we set it out in full.

The credentials you provide

To send anything, you give the add-in three values from your own Twilio account: the Account SID, the Auth Token, and a sender, which is either a phone number you own in that Twilio account or a Messaging Service SID (MG…). Nothing is sent to Twilio until the format of all three has been checked.

How they are stored

Your credentials are encrypted at rest with AES-256-GCM. Each stored record is sealed under its own randomly generated 256-bit data key, and that data key is itself wrapped with a master key held in Google Secret Manager. One compromised record therefore never yields another account's key material. The database rules make the location they are stored at unreadable and unwritable by every client: only the backend can unwrap them, and only in order to make the Twilio call you asked for. They are never displayed back to you, never written to logs, and never shared with anyone.

What we do with them

We use them exclusively to call the Twilio API on your behalf, for the sends, status lookups and setup checks that you request. We never relay, resell or mark up messages. Every message is created on your own Twilio account, and Twilio bills you directly at its own rates.

The text of your messages

The body of a message is passed to Twilio and then discarded. We do not retain it. The one exception is a scheduled send, where the body has to be kept until the schedule runs: it is stored for that purpose alone, and deleted the moment the schedule finishes. What remains of a completed schedule is the recipient numbers, the message SIDs and the per-row statuses, so that the results can still be written into your sheet.

The same is true of a cancelled schedule. A schedule you cancel before it fires never sends anything, and the cancellation drops its stored message text at that moment, exactly as a finished schedule does. Scheduled text is therefore kept only until the schedule runs or is cancelled, and is deleted at that point either way. What is left behind in both cases is the recipient numbers and the per-row outcome, never the words you wrote.

Duplicate suppression

Excel recalculates =SMS.SEND cells on workbook events, so the backend guards against texting the same person twice. To do that it keeps a one-way SHA-256 hash of the recipient number and the message text together, alongside the resulting message SID and a timestamp. A hash cannot be reversed into the message text. These records are tied to your account, are used only to recognise an identical send inside a 60-second window, and are removed when your account is deleted.

3. What we collect

You need a free Innova Apps add-in account (email and password) to sign in and to carry your plan status. The table below is everything we hold on our own systems.

Everything Innova Apps stores about you, and why.
What we store Why we store it Where it is stored
Your account email address To identify your account, sign you in, and reach you about your account. Firebase Authentication
A hashed password To sign you in. We do not hold your password in readable form. Firebase Authentication
An account document: a copy of your email, your plan (Free or Pro) and the date the account was created To carry your plan into the add-in when you sign in, and to tie your usage counters and any billing details to your account. Cloud Firestore
Your Twilio Account SID, Auth Token and sender, encrypted To call the Twilio API on your behalf for the sends, status lookups and setup checks you request. See section 2. Cloud Firestore, encrypted; master key in Google Secret Manager
Send metadata, per message: the recipient phone number, the Twilio message SID, the delivery status and the time So your spreadsheet can show per-row results and so =SMS.STATUS can look a message up again. The message text is not part of this record. Cloud Firestore
Scheduled sends: the recipient numbers, the send time, the target sheet and cell, and the message text until the schedule runs or is cancelled So a schedule can run from the cloud with Excel closed. The message text is deleted when the schedule finishes, and cancelling a schedule deletes it in the same way; the numbers, SIDs and statuses remain so the results can be written into your sheet. See section 2. Cloud Firestore
A monthly usage counter To enforce the free tier of 25 messages per calendar month. Cloud Firestore
A duplicate-suppression record: a one-way hash of recipient plus message text, the message SID and a timestamp To stop an Excel recalculation from texting the same person twice inside 60 seconds. The hash cannot be reversed into the message text. Cloud Firestore
For Pro subscribers: a Stripe customer id and the subscription status To know whether your Pro subscription is active and to let you manage billing. Held in the account document above. Cloud Firestore

4. What we never collect

5. How we use your information

Under the GDPR, we process your account email, hashed password, encrypted Twilio credentials, send metadata and usage counters to perform the agreement between you and us (Article 6(1)(b)), and we process Pro billing identifiers to perform that agreement and to meet our accounting obligations (Articles 6(1)(b) and 6(1)(c)). We do not use your data for advertising or profiling.

6. Where data is stored

Everything described in section 3 is hosted on Google Cloud, using Firebase Authentication, Cloud Firestore, Cloud Functions and Google Secret Manager, in the United States. If you are in the EU or EEA, this means your account email, hashed password, encrypted Twilio credentials, send metadata, usage counters and any Pro billing identifiers are transferred to and stored in the United States.

The messages themselves are processed by Twilio, on your own Twilio account, under your own agreement with Twilio and in whatever regions that account uses. That relationship is between you and Twilio.

7. Sub-processors

Two service providers process data on our behalf so the add-in can work:

Twilio is not our sub-processor. The Twilio account is yours. We act on it with the credentials you give us, at your instruction, and Twilio's handling of your messages and your recipients' numbers is governed by your own agreement with Twilio. Twilio privacy notice

We do not share, sell or rent your data to advertisers, ad networks, data brokers, information resellers, or any other third party for their own purposes.

8. Retention and deletion

9. Your responsibilities as the sender

Every message is created on your own Twilio account, which makes you the sender of record. Obtaining recipient consent, honouring opt-outs, and complying with the law in your jurisdiction and in your recipients' jurisdictions (the TCPA and CTIA guidelines in the United States, the GDPR and ePrivacy rules in the EU and EEA, and the equivalent rules elsewhere) are your obligations, not ours. In data-protection terms, you are the controller of the recipient numbers and message content you choose to send.

Bulk SMS Sender is send-only. It does not handle replies, STOP keywords, opt-out lists or contact management. Where carriers require opt-out handling, it is performed by Twilio on your own number. Registering United States long-code traffic for A2P 10DLC is likewise done in your Twilio account.

10. Your rights

If you are in the EU or EEA, the GDPR gives you the following rights over the personal data we hold about you:

Write to support@innovaapps.ai to exercise any of these rights. You also have the right to complain to a supervisory authority. In Denmark, where Innova Apps is established, that authority is the Danish Data Protection Agency (Datatilsynet).

Requests from the people you message about the numbers or content you send should be directed to you, as the sender of record. Where we hold send metadata on your behalf we will help you respond to such a request.

11. Children

Bulk SMS Sender is a business tool for people sending messages from their own Twilio account. It is not directed at children under 16, and we do not knowingly collect personal data from anyone under 16. If you believe a child has created an account, write to support@innovaapps.ai and we will delete it.

12. Changes to this policy

If we change this policy, we publish the updated version at innovaapps.ai/excel-sms/privacy with a new effective date at the top. Material changes to how we handle your data will also be communicated to the email address on your account.

13. Contact

For any question about this Privacy Policy, about the data we hold, or to request deletion:

Innova Apps Tove Maës vej 1, 1 TH 2500 Valby
Denmark
CVR: 45291154
Email: support@innovaapps.ai
Support: innovaapps.ai/excel-sms/support