Privacy Policy
How Invoodle handles browser-saved documents, optional sharing, accounts, support messages and usage analytics, with the controls available to you.
Page updated
Start with the feature you use
Creating a document in the browser is different from sharing it, signing in or contacting support. Saving an invoice in Documents stores it in this browser; it does not automatically create a cloud backup. Optional account and hosted-sharing features may be available depending on where you use Invoodle.
For privacy questions, contact Invoodle at invoodle@gmail.com. Do not include a full customer document when a description of the issue will do.
What information is used, and why
| Feature | Information and purpose |
|---|---|
| Drafts and saved documents | Business/customer details, items, prices, notes, payment details and any logo or signature you enter are kept in browser storage to edit and reuse documents. Saved customers, items and document counters also use local storage. |
| PDFs and backups | The browser generates PDFs and backup files. Downloads contain the document data you export and remain wherever you save or send them. Loading the app and PDF fonts still makes requests to the website. |
| Regular share links | An encoded document copy is placed after # in the link. Creating this link does not upload a document snapshot to hosted storage. Encoding is not encryption; anyone with the full link and site access can read it. |
| Optional hosted links | A separate confirmed action uploads an encrypted snapshot. The service stores encrypted document data, a link identifier, owner/account identifier, creation time and expiry time so it can serve and revoke that snapshot. |
| Accounts and developer features | Authentication details and sessions support sign-in. Developer features store account-linked API-key records, usage records and webhook settings or delivery records when those features are used. Invoice data submitted through the developer API is stored server-side, unlike a browser-only guest draft. |
| Contact messages | The name, email, subject, category and message you submit are processed to deliver and answer your request. A successful form submission also creates a local browser backup. |
Sharing a document gives others a copy
The part after # is normally excluded from the browser’s HTTP request address, but the full link can still be read by the recipient, the messaging service you send it through and scripts on a page that opens it. Regular encoded links have no server-side expiry or revoke control.
Where hosted sharing is available, you choose 1, 7 or 30 days and confirm the encrypted upload. The upload payload does not include the decryption key; the key is in the full link. This browser may remember the link and key so you can copy it again. Keep the complete link private.
Expiry blocks retrieval through the app. Revocation removes the active hosted record for your account. Neither action erases a recipient’s downloaded PDF, screenshot or other copy. Expired encrypted records can remain stored until cleanup, and expiry is not a promise of immediate erasure from provider backups.
WhatsApp, email, native device sharing and payment links involve the services you choose. Opening a composer is separate from sending. Restricted sites may also require recipients to have access to the site.
Usage analytics and browser storage
When enabled on invoodle.com or www.invoodle.com, this version uses Google Analytics to measure visits and actions such as creating, downloading, sharing or checking a document. Invoodle’s custom event fields are restricted to actions, counts and option labels; the allowlist excludes document contents, customer/business names, document numbers and monetary amounts.
Google Analytics can use cookies and process browser/device and request information under its own settings and policies. See Google’s GA4 cookie documentation and Google’s privacy policy. The app does not intentionally load its Analytics tag on the private preview hostname, the growth workspace or hosted short-link entry pages. That does not mean those pages have no hosting or sign-in requests.
Validated campaign labels are kept for the browsing session with a 30-minute inactivity window. The browser also keeps preferences, a last-creation date used for return-visit measurement, sign-in session data where applicable, and optional local diagnostics.
The current app has no on-page analytics preference panel. You can use your browser’s cookie/script controls or Google’s Analytics opt-out tool. Deleting cookies alone does not necessarily stop future analytics requests. Delaying a tag until idle time or an interaction is not an analytics consent choice.
Currency reference lookup and calculator links
The currency converter starts with no external rate request. Choosing its optional daily reference lookup sends the base currency to open.er-api.com, operated by ExchangeRate-API. The app omits credentials and the page referrer, and does not include the invoice amount or fee inputs in that request. The provider still receives your IP address and normal browser request metadata. See its terms and privacy notice.
Copying a calculator link is a separate explicit action. Calculator inputs in the query string can be read by recipients and services that handle the link, and can appear in browser history or website request logs. They are not encrypted. Typing in the currency converter does not update the page URL. A copied daily reference rate reopens as a manual assumption; a link does not verify its source or freshness.
Accounts, hosting and other services
Developer account sign-in uses Supabase. Choosing Google sign-in uses the configured Google/Lovable sign-in flow. Authentication providers process the credentials or identity information needed for that choice; the app can retain a session in browser storage. Signing in does not automatically upload or sync guest documents.
If you use the developer API to create or update invoices, the submitted document fields, numbers, amounts and other supplied data are sent to the API and stored in the account-linked service database. Configured webhooks can send invoice event payloads, including document data, to your chosen endpoint. Delivery records can retain the payload, attempts and response information. Use only destinations you are authorised to receive that information.
The private ChatGPT-hosted site uses ChatGPT Sites access controls and Cloudflare-backed hosting/storage for its supported server features. Hosting and access services receive web requests, which can include IP addresses, browser headers and access/session metadata. The public-domain host is separate, and hosted-sharing availability is shown in the sharing controls.
Provider information: Supabase, Lovable, Google, OpenAI and Cloudflare. Provider notices supplement this explanation; they do not replace Invoodle’s responsibility for its own use of the service.
Contacting support
When this form is available, sending it shares your name, email, subject, category and message with Web3Forms for delivery to Invoodle. A backup copy of a successful submission is kept in this browser. If the form is unavailable, you can use the email address on the contact page; your email provider and Invoodle’s receiving mailbox then process that correspondence.
Web3Forms has its own infrastructure, spam-prevention and retention arrangements, described in its privacy policy. Sending a support message is not a document backup or account-deletion action.
Keeping, deleting and requesting information
- Local documents, saved customer/item data, preferences, contact backups and remembered link keys remain until removed by the app, you or your browser. Browser storage is not a guaranteed backup and is not promised to be encrypted by the operating system.
- Delete a saved record in Documents, or use browser settings to clear this site’s data. A current draft or exported file can hold another copy. Export a backup before clearing data you need.
- Clearing browser data does not revoke hosted links or delete a provider account. Use Manage hosted links for available revoke controls. Losing a locally remembered key can prevent you from reopening the full link.
- Account/developer records and support correspondence have no automatic deletion timer in the app. An API invoice deletion does not automatically purge its webhook delivery records or copies at a receiving endpoint. Exact provider, mailbox, security-log and backup retention depends on the relevant service configuration; this notice does not promise a fixed erasure date for those records.
- For questions or requests concerning access, correction or deletion of account/support information, email invoodle@gmail.com. Identify the feature and account involved without sending passwords, API keys or a full invoice unnecessarily. Any applicable rights and verification requirements depend on the request and relevant law.
Changes to this notice
The date at the top identifies this content update. Changes to features or providers can change the relevant data flow. Review the sharing controls and this page before using a new optional feature.
