CIBRUSTUDIO • APPS
01 / APPLICATION SUITE · DATA GOVERNANCE

Privacy Policy. Respect for your autonomy.

Governed by Cibru Interactive (cibru.in) • Lead Developer: Krishna Moni Borah • Release: v0.1.0

Core Privacy & Data Invariants
100% on-device calendar conversions: All ephemeris and astronomical computations run locally without network calls.
Zero app account required: No email, passwords, or mandatory Cibru account required to use or subscribe.
Google Mobile Ads on free tier: Ads are removed upon verified Google Play subscription or active referral rewards.
Support and verification requests handled directly via support@cibru.in.
Privacy Policy — WorldCal Multi-Calendar # Privacy Policy Effective Date: October 20, 2026 · Application Version: 0.3.0 · Package: `worldcal.app` > **Privacy Overview:** WorldCal Multi-Calendar runs its calendar calculations, bundled historical content, and date comparisons locally on your device. It does not automatically upload your calendar workspace, bookmarks, notes, or search queries to CIBRU. Advertising, purchase verification, optional referrals, and content you choose to share have the separate data flows described below. No user-created CIBRU account or login is required for calendar use or Google Play purchases. ## 1. Who Operates the Application WorldCal Multi-Calendar is developed by Krishna moni Borah and published by CIBRU (`cibru.in`). For privacy questions, data requests, or support, please email support@cibru.in. The postal address is Kakojan, Jorhat, Assam - 785107, India. ## 2. Data the Application Processes - **On-Device Calendar Calculations:** Calendar conversions, dual-visible month grids, Gregorian peek previews, regional calculations, and historical-event searches run locally using bundled data and calculation rules. Dates of interest, selected profiles, bookmarks, notes, and search queries are not automatically uploaded. Search text is used for the current local search; there is no server search-history service. - **Local User Preferences:** Your active workspace, calculation profiles (including reference places and day-association choices), language and script preferences, layout modes, theme settings, bookmarks, and bookmark notes are saved in Android app-private storage. Reference places are selected calculation settings, not GPS readings. - **In-App Purchases (Google Play Billing):** Google Play handles Weekly, Monthly, and Annual subscription transactions and determines trial eligibility. Paid sales are disabled by default until launch configuration is complete. The app receives product IDs, purchase status, sensitive purchase tokens, and an order ID when available. Verification sends the app/package ID, product ID, purchase token, request UUID, action, and Google Play Integrity token over HTTPS to CIBRU’s Supabase-hosted service. The service checks the purchase with Google Play, stores the raw token and verified product/status/expiry information and available order ID, and acknowledges eligible purchases; the client also has a verified-purchase acknowledgement retry. Integrity binds the request to an app/device check, not the identity of the purchasing Google account. CIBRU does not receive your Google account password, email, or payment-card number from this flow. - **Advertising SDK:** WorldCal includes Google Mobile Ads (AdMob) banner and interstitial integration. This version disables production ad requests and explicit SDK initialization pending consent/privacy-options implementation; debug builds allow only Google test identifiers. The SDK remains packaged and contributes Android components and permission declarations. When ads are requested in an enabled test build, Google’s SDK may process IP addresses (including inferred approximate location), advertising or app-set identifiers, device information, app/ad interactions, and performance diagnostics. Recognized paid or referral access suppresses ad requests and display; it does not disable separate purchase/referral verification. - **Optional Referral Rewards Program:** Participation is disabled by default and begins when you open **Get Free Premium**. The app creates an anonymous Supabase authentication session without an email or password chosen by you. Registration sends the normalized `Settings.Secure.ANDROID_ID`, the raw Google Play Install Referrer string and install/click timestamps, app ID, request UUID, and Play Integrity token over HTTPS under that session. Android ID is scoped by Android to the device, Android user, and app-signing key; it is not proof of a unique person. The shared backend computes an app-scoped **HMAC-SHA-256** device key. This is server-side hashing: the Android ID is transmitted, not hashed on the client. No IMEI or MAC address is read or transmitted. The backend stores referral profile IDs, invite code, installation outcome, referral count, milestone events, and reward expiry. Session tokens and authenticated reward status are stored locally; raw Install Referrer details are held in memory, not persisted by the current client. Calendar content is not part of a referral request. - **Sharing, Clipboard & Support:** Copy/share actions place comparison text or an editable correction report on the Android clipboard and/or pass it to an app you select. A correction report can contain the chosen date, calendar/profile context, app version, and observations you type; review it before sharing. Invite sharing includes your referral code. If you email support, CIBRU receives the email address, message, and attachments you send. Opening a legal page or external source also uses your browser and the destination website’s data practices. ## 3. How Data is Used and Shared These flows support calendar comparisons, local preferences, purchase verification, free-tier advertising, optional referrals, and support. The integrated service providers are: - **Google Play Billing, Install Referrer & Play Integrity:** To display subscription products, process or restore purchases through Google Play, attribute optional referrals, and verify app/device integrity. - **Google Mobile Ads:** To request and measure advertisements for free-tier users under Google’s advertising policies and available device controls. - **Backend Verification Service (Supabase):** To verify purchase tokens, maintain pseudonymous referral milestone counts, and process app-scoped deletion requests. Calendar content is not supplied to the advertising or verification services. For Google’s practices, see How Google uses information from sites or apps that use its services and the Google Mobile Ads data disclosure. The current app has no in-app User Messaging Platform (UMP) consent or privacy-options interface, so production ad serving is blocked rather than assuming consent. Android advertising/privacy controls remain available where supported. ## 4. Storage, Security & Retention Calendar settings, bookmarks, bookmark notes, and cached entitlements remain within Android’s private app storage. The app manifest disables app backup, and the declared backup/device-transfer rules explicitly exclude referral and subscription preference files, including their local authentication/session data. Purchase tokens and referral session data are not displayed in the user interface. - **Offline Verification Cache:** Google Play entitlements use an Android Keystore-backed HMAC-authenticated local snapshot, scoped to this installation. Access is bounded by verified expiry and at most 72 hours, using monotonic device time. Request latency consumes, rather than extends, that allowance. A reboot, invalid signature, lost key, or unknown freshness requires online verification. Authentication of the snapshot is not encryption or a guarantee against a compromised device. - **Referral Reward Cache:** A separately authenticated, owner-scoped referral cache has a 24-hour freshness limit and never extends server-granted reward expiry. Expiry updates the local reward state while the app runs. A reboot, invalid signature, or unavailable key requires successful online verification and secure storage before cached rewards can be recognized. - **Purchase Data Retention & Deletion:** Confirming **Delete purchase verification data** deactivates local paid access and saves a persistent sync pause before a server request. If saving that pause fails, server deletion is not started and the app asks you to retry. Confirmed server deletion clears corresponding local records; failed network or local cleanup retains retry information and does not report full completion. Late local verification results are discarded. The backend removes raw purchase records and queued reconciliation jobs, retaining a one-way token hash until 90 days after the later of deletion or Google Play expiry. Routine expired/revoked records have configurable retention, 90 days by default; request receipts are eligible for cleanup after one day. **Only an explicit Restore Purchases action** clears the app’s saved pause and permits recreation; a new purchase tap does not. - **Referral Data Retention:** The Unsync web page opens `worldcal://referral/unsync` to disable referral synchronization. Unsync invalidates in-flight results and clears local reward, profile-link, registration, and referrer caches. The authentication session and server profile remain for explicit re-consent or deletion. Separate paid access is unaffected. Reopening **Get Free Premium** enables synchronization again only if the setting can be saved and no deletion is pending. Completed server deletion removes app-scoped profile/event/installation/rate-limit records and creates a one-way device-key marker expiring after 90 days. Confirmed in-app cleanup clears local referral authentication; it does not delete shared backend authentication or another app’s records. Request deletion through Data Deletion. Scheduled backend cleanup removes expired markers and eligible records; a service outage can delay physical removal. These deletion actions do not erase Google’s payment records, provider-managed logs/backups, or copies you have shared with other services. Contact support for the scope and status of a particular request. ## 5. User Permissions & SDK Declarations - **Network Access (`android.permission.INTERNET`) and Network State (`android.permission.ACCESS_NETWORK_STATE`):** Used for Google Mobile Ads, Google Play billing/referrer services, and Supabase subscription/referral requests. Core calendar calculations continue to function offline. - **Google Play Billing (`com.android.vending.BILLING`):** Added by the Billing library so Google Play can display products, complete purchases, and restore subscriptions. - **Advertising and Android Ad Services:** SDK manifest declarations include `com.google.android.gms.permission.AD_ID`, `android.permission.ACCESS_ADSERVICES_AD_ID`, `android.permission.ACCESS_ADSERVICES_ATTRIBUTION`, and `android.permission.ACCESS_ADSERVICES_TOPICS` for advertising features supported by the device. - **Install Referrer:** `com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE` supports reading Play installation attribution when optional referrals are enabled. - **SDK background components:** Included libraries also declare `android.permission.WAKE_LOCK`, `android.permission.FOREGROUND_SERVICE`, and an app-signature-only dynamic-receiver permission. These do not give the app permission to read your personal calendar or contacts. - **No sensitive runtime permissions:** The current merged manifest does not declare contacts, location, calendar-provider, camera, microphone, phone, or storage permissions. Reading `Settings.Secure.ANDROID_ID` for optional referral attribution does not require a runtime permission. ## 6. Children's Privacy WorldCal Multi-Calendar is a general-audience educational and reference tool. It is not directed at children under the age of 13 (or the minimum legal age in your jurisdiction). We do not knowingly collect personal information from children. ## 7. Your Privacy Rights & Choices Depending on your location and applicable law, you may have rights to access, correct, or request deletion of data associated with your pseudonymous identifiers. You may: - Use the advertising identifier and ad-privacy controls provided in Android settings, where supported. - Manage or cancel Google Play subscriptions directly via Google Play Subscriptions. - Clear all local app data and preferences via Android Settings → Apps → WorldCal → Storage & cache → Clear storage (or Clear data). - Unsync from the referral system via Unsync Referral or trigger `worldcal://referral/unsync`. Unsync pauses referral communication; it is reversible from the Free Premium Rewards screen and is separate from permanent deletion. - Request permanent deletion of app-scoped server-side purchase or referral records by contacting support@cibru.in. Purchase deletion does not cancel Google Play billing. ## 8. Contact & Updates We may periodically update this policy to reflect application enhancements or regulatory requirements. Material revisions will be posted on this page with an updated effective date. Questions and requests regarding this policy should be directed to: **CIBRU** Email: support@cibru.in Website: cibru.in/apps/worldcal-multi-calendar © 2026 CIBRU. All rights reserved. WorldCal Multi-Calendar (worldcal.app).