Draft — not yet reviewed by a lawyer · not for publication
집선반한국어

Privacy Policy — Homeshelf (집선반)

Effective: [PUBLISH DATE] · Last updated: [PUBLISH DATE]

Homeshelf ("the app") is a phone-first app. The items, spaces and dates you enter are kept on this phone only by default. The exceptions are listed below and explained in the sections that follow.

  1. Cloud sync and family sharing, if you turn them on — your records are kept on a server and everyone in the same family list can see them (sections 2 and 3, off by default, requires a trial or a subscription).
  2. Photos are always stored on this phone, and only if cloud sync is on are they also kept in overseas storage so they can reach your family (section 4). If you don't use sync, photos of items and places never leave your phone (receipt reading is point 3 — separate from sync).
  3. Adding items from a receipt photo — that receipt photo is sent to an AI service abroad (section 4.1). If you don't use this feature, nothing is sent.
  4. Anonymous usage statistics — numbers only, no identifiers, once a day. On by default; we start sending only after the app has told you once, and you can turn it off in settings (section 6).
  5. Advertising (Google AdMob) (section 7) and in-app purchases (Google Play) (section 8).

1. What stays on this phone only (the default)

If you don't turn on cloud sync there is no sign-up and no sign-in, and none of the records below are sent to a server.

DataWhere it livesWhy
Items (name, category, quantity, unit, notes, where bought, price, warranty)Local database on the deviceKeeping track of what you have
Spaces (rooms, furniture, compartments and their names)Local database on the deviceRecording where things are
Dates (use-by, best-before, after-opening, and whether it's "roughly")Local database on the deviceDate reminders
Movements (added, used up, moved, deleted)Local database on the deviceShowing history
Photos (if you take or choose any)Device storage (app-private)Checking items and places
App settings (reminder time, "running out" threshold, quiet hours, large text, theme, anonymous statistics on/off)Local storage on the deviceHow the app behaves

2. Cloud sync (optional · off by default)

It only runs if you turn it on yourself. It exists so that ① your records survive a new phone or a reinstall, and ② a family can share one list (section 3).

2.1 Account

2.2 What is kept on the server

DataNote
The items, spaces, dates and movements from section 1 (photo files excluded — section 4)Synced. This includes notes and shop names you wrote yourself
Photo records (which box or item a photo belongs to · storage key · width and height · size)The photo file itself lives in R2 (section 4); the server keeps only this record
Pin coordinates on a photo (the point in the photo where the item is)So family and your other devices see the same spot. This is a point inside a photo, not your phone's location
Family list identifier · member role (owner/member) · display name within the familySection 3
Account identifier · device identifier · time of change · which member changed itTo tell which device and which person made a change
Email address · account display nameSection 2.1

2.3 Where it is kept (processing on our behalf)

3. Family sharing

4. Photos

4.1 Adding items from a receipt photo (AI reading)

Photograph a receipt or a note and we read the items and quantities from it to build a list for you. It runs only when you use it.

5. Date reminders

6. Usage statistics (anonymous · on by default · can be turned off)

To make the app better we send the numbers below to our server once a day. The app tells you once after you start using it, and sends nothing before that notice.

7. Advertising (Google AdMob)

8. In-app purchases (ad removal · cloud subscription) and the trial

Payments, refunds and card details are handled by Google Play; the app neither receives nor stores payment information.

8.1 Ad removal (one-off purchase)

8.2 Cloud subscription (recurring)

ItemPurpose
Purchase token (the Google Play receipt identifier)Verifying the subscription · preventing one receipt being used by several accounts
Product and plan (monthly/yearly)Showing which subscription it is
Expiry date and statusDeciding whether syncing is allowed
The fields needed to handle a payment dispute (subscription state, start, expiry, order number, cancellation/grace reason, plan)Handling payment disputes. After 60 days past expiry Google can no longer be asked about that transaction, so we keep this on our side. We do not keep your email, name or billing country

8.3 Cloud trial (14 days)

8.4 After a subscription or trial ends

9. Permissions

PermissionRequired/optionalPurpose
Internet · network stateNeeded to function (granted at install)Cloud sync, family sharing, payments, ads, anonymous statistics. Nothing is attempted while offline
NotificationsOptionalDate reminders and the trial-ended notice. The app works if you refuse. We do not request the exact-alarm permission — "around 6 in the evening" is precise enough for a daily summary
Camera (taking photos)Never requestedItem and shelf photos and receipt photos are taken by the system camera app, which hands the result back. The app declares no camera permission, so no permission dialog appears
Camera (reading barcodes)OptionalBarcodes are read with a camera preview inside the app, which needs the camera permission — requested only when you tap that button
Advertising IDGranted at installServing and measuring ads (section 7)
Run at device start-upGranted at installUsed only to restore scheduled reminders after a restart. Turning the phone off clears the schedule, so the app sets it again on start-up. Nothing is read or sent with this permission
VibrationGranted at installVibrating when a reminder arrives. You can turn it off in your phone's settings
Biometrics (fingerprint, face)Granted at installHomeshelf does not use biometrics. The Google library used for signing in (Credential Manager) declares this permission. The app never reads, stores or sends biometric data

10. Disclosure, processing on our behalf, and transfers abroad

You can scroll this table sideways

RecipientKindWhatPurposeWhere
SupabaseProcessing on our behalfThe server-kept items from sections 2, 3, 6 and 8Storage, authentication, aggregationSeoul (ap-northeast-2)
Cloudflare (Workers · D1)Processing on our behalfRelay for anonymous statistics (no IP stored) · relay and checks for photo upload and download · forwarding receipt photos (4.1) · keeping the family list identifier and usage numbers (photo space used · receipts read today) in D1Forwarding · enforcing limitsOutside Korea (Cloudflare network · no region guarantee)
Anthropic, PBCProcessing on our behalf · transfer abroadReceipt and note photos and the items and quantities read from them (4.1)Reading items and quantities from a photoOutside Korea (United States)
Cloudflare (R2)Processing on our behalf · transfer abroadReduced photo files and their identifiersDelivering photos between family and devicesOutside Korea (Asia-Pacific requested · no region guarantee · section 4)
Google (sign-in)Sign-in providerHandled by GoogleAccount authenticationOutside Korea (United States)
Google PlayPayment partyPurchase token and app identifier (when queried)Confirming paymentOutside Korea (United States)
Google AdMobAdvertisingAdvertising identifier and similarAdvertisingOutside Korea (United States)
Open Food FactsThird-party communication (not data about you)Barcode number · connection IP (in transit)Looking up a product nameOutside Korea (France)

11. Keeping and deleting

SituationWhat happens
Deleting the appDevice records are deleted. Server records remain (if you had sync on)
Settings › Cloud account › Manage account › Delete account (leaving this app)Removes the link between this app and your account (family list membership, synced records, display name within the family). A list you used alone is deleted from the server. Records you put into a family list remain there as described in section 3. The records on this phone remain
What remains even after that① The sign-in account (email, Google display name) — it is shared with other apps, so it remains. We delete it on request (below). ② Payment verification records and the trial record — kept without email or name (payments 5 years, trial 1 year; sections 8.2 and 8.3)
Leaving a family listYou come out of the family list on the server, and a copy of the records stays on this phone (photos: sections 3 and 4)
6 months after a subscription or trial expiresSynced records on the server are destroyed automatically (section 8.4)

12. Children

We do not collect personal information from children under 14 (section 2.1). Features used without signing in send nothing to a server (anonymous statistics are section 6 — no identifying information).

13. Your rights

You may ask to see, correct or delete your information, or to stop its processing. Most of it you can do in the app yourself (editing and deleting items and spaces, changing your display name, deleting your account, turning off anonymous statistics); for anything else please contact us below. [OWNER DECISION: name and contact details of the privacy officer]

14. Contact

15. Changes

If this policy changes we will post what changed and when it takes effect on this page, and important changes will also be announced in the app.