01
What we collect
To compute your BaZi chart, I Ching readings, and compatibility reports, we need certain inputs. Here is exactly what we handle:
| Data | Where it lives | Why |
|---|---|---|
| Birth date, birth time, birth city, gender, name | On your device. Sent to our server only when you invite someone for a compatibility reading. | Required to compute BaZi charts and compatibility. |
| Apple user ID, email (if you choose to share), display name | Our server (Cloudflare D1 database). | Optional: Sign in with Apple, only if you choose it or used it in an earlier version. Email is optional and only used for account recovery. |
| Device token (APNs) | Our server. | To send you daily reading notifications you opt into. |
| App Attest key ID and public key | Our server. | Proves requests come from the genuine Daoly app on a real Apple device, in place of an account login. Contains no personal data. |
| Birth profiles, readings, journals and reports | Your own iCloud account (when iCloud is on), plus a recovery key in your iCloud Keychain. | So a reinstall or a new device brings your data back. We cannot access your iCloud. |
| Device ID (random UUID) | On your device and our server. | Session management and usage limits. |
| I Ching questions and reading history | On your device. Questions are sent to our AI service for interpretation and are not stored long-term. | To generate readings and cache them for offline viewing. |
| Subscription status | Managed by RevenueCat. Our server stores a record of your entitlement. | To unlock Daoly+ features. |
| Subscription purchase receipt | Managed by RevenueCat. Our server stores a record of your entitlement. | To verify and maintain your Daoly+ subscription status. |