개인정보 처리방침
Homiya(이하 "앱" 또는 "서비스")는 사용자의 개인정보를 소중히 다룹니다. 본
방침은 앱이 실제로 수집·저장·전송·삭제하는 정보의 범위와 방법을 설명합니다.
본 방침은 앱 현재 구현 기준으로 작성되었으며, 구현이 변경될 경우 본 문서도
함께 갱신됩니다.
1. 수집하는 정보
앱은 서비스 제공에 필요한 최소한의 정보만을 수집합니다.
1.1 계정 정보
- 이메일 주소 (소셜 로그인 제공자로부터 받은 값)
- 표시 이름 · 프로필 사진 (소셜 로그인 제공자로부터 받은 값)
- 내부 사용자 식별자(UID)
1.2 홈 및 유지보수 정보
- 집 유형, 건축 연도, 크기, 주요 시스템/가전 정보
- 위치 정보는 도시(city) · 주/도(state) · 우편번호(ZIP) · 국가(country) 까지만 수집합니다.
- 유지보수 작업, 완료 기록, 사용자 메모, 지출 비용
- AI 채팅 대화 내용 (사용자가 입력한 질문 및 응답)
1.3 이미지
- 사용자가 업로드한 사진 (집 내/외부, 가전 라벨, 영수증, 작업 전/후 사진, 댓글 첨부)
1.4 결제 정보
- 프리미엄 구독 상태 및 영수증 식별자 (RevenueCat 경유).
- 신용카드 번호를 포함한 실제 결제 수단 정보는 앱이 수집하지 않으며 Apple/Google 스토어가 관리합니다.
1.5 기기 및 지원 정보
- 기기 OS 버전·모델명 (디버깅 및 고객 지원용)
- 앱 버전
⚠️ 앱은 상세 주소(street / address line 2) · 정밀 GPS 좌표 · Google Place ID를
일반 사용자 플로우에서 수집하지 않습니다. 과거 버전에서 저장된
레거시 상세 주소는 다음 저장 시 자동으로 빈 값으로 덮어써져 영구 삭제됩니다.
2. 정보 최소 수집 원칙
앱은 "필요 최소한"의 정보만 수집한다는 원칙에 따라 다음을 이행합니다.
- 상세 주소는 수집하지 않습니다. 위치 맥락은
city / state / zip / country 까지만 보관합니다.
- AI 기능(리포트 생성, 채팅 등)에는 마스킹 및 요약된 데이터만 전송합니다.
- 이메일·전화번호·주소 패턴은 AI 전송 및 서버 로그 기록 직전에 정규식 기반 유틸로
[REDACTED]로 치환합니다.
- AI 채팅 대화 이력은 서버와 클라이언트 양쪽에서 최근 10개 메시지로 제한됩니다.
- 전체 사용자 객체(user object)나 전체 홈 문서를 로그에 기록하지 않습니다.
3. 이미지 처리 및 메타데이터 제거
- 사용자가 업로드하는 모든 이미지는 기기 내에서 EXIF/GPS 등 메타데이터를 제거한 후 재인코딩(JPEG) 되어야만 업로드·AI 전송이 가능합니다.
- 메타데이터 제거에 실패한 경우(손상된 이미지 등) 업로드·AI 전송 자체가 중단되며, 원본 파일은 전송되지 않습니다(fail-closed).
- PDF 영수증은 재인코딩되지 않으며, 서버 측에서 별도 처리됩니다.
- 사용자 위치(GPS)는 사진을 통해서도 앱 서버나 제3자 AI 제공사에게 전달되지 않습니다.
4. AI 기능 처리
앱은 유지보수 리포트 생성, 홈 어시스턴트 채팅, 영수증/가전 사진 분석 등에
AI 모델(Google Vertex AI / Gemini)을 사용합니다. 이 과정에서 다음 원칙을 적용합니다.
- 최소 전송: 필요한 필드만 AI에 전달합니다. 상세 주소·GPS·placeId·전체 홈 문서는 AI에 전송되지 않습니다.
- 마스킹: 사용자 메모·AI 요구사항·영수증 메모 등 자유 입력 텍스트는 AI 전송 전에 이메일·전화번호·주소 패턴이
[REDACTED]로 치환됩니다.
- 히스토리 제한: AI 채팅 컨텍스트는 최근 10개 메시지로 제한됩니다.
- 로그 제한: AI 프롬프트 원문·AI 응답 원문은 서버 로그에 기록되지 않습니다. 길이와 불투명한 trace id 만 기록됩니다.
- 학습 비활용: AI 제공사(Google Vertex AI)와의 계약상 사용자 프롬프트는 모델 학습에 사용되지 않습니다.
5. 데이터 보존 및 삭제
- 앱은 계정이 활성 상태인 동안 사용자 데이터를 보존합니다.
- AI 채팅 이력은 세션 당 최근 분량만 맥락으로 사용되며, 오래된 이력은 맥락에서 자동 제외됩니다.
- 시스템 신뢰성·장애 대응을 위한 서버 로그는 개인정보를 포함하지 않도록 설계되어 있으며, 제한된 기간 동안만 보관됩니다.
- 사용자가 앱 내에서 계정을 삭제하면,
deleteAccount Cloud Function이 Firestore 문서·Storage 파일·인증 계정을 모두 삭제합니다.
- 다만 Firebase 자체의 백업·내보내기(export) 기록은 본 방침이 아닌 Google Cloud 정책에 따라 별도 보관 기간이 적용될 수 있습니다.
6. 제3자 서비스 (위탁처리)
앱은 다음 외부 제공자에게 제한된 범위의 데이터를 위탁합니다.
| 제공자 | 위탁 목적 | 전달되는 데이터 범위 |
| Firebase (Google) |
인증, Firestore 데이터 저장, Storage 파일 저장, 분석 |
계정, 홈·작업 데이터, 업로드 이미지(메타데이터 제거 후) |
| Google Vertex AI / Gemini |
AI 리포트 생성, 홈 어시스턴트 채팅, 사진 분석 |
마스킹·요약된 홈/작업 데이터, AI 채팅 메시지, 처리 대상 이미지(EXIF 제거 후) |
| RevenueCat |
인앱 구독 상태 관리 |
구독 식별자, 영수증 식별자 (카드 번호 없음) |
| Crisp |
고객 지원 채팅 |
기본: UID의 비가역 해시, 앱 버전, 기기 모델. 사용자가 지원 채팅창에 직접 입력한 내용 |
| Apple / Google (IdP) |
소셜 로그인 |
이메일, 이름, 프로필 사진 (사용자 동의 범위 내) |
⚠️ 고객 지원 채팅에서 사용자가 직접 입력한 내용(이메일·전화번호·주소 등)은
해당 메시지 본문이 Crisp 서버로 전송됩니다. 민감한 정보를 채팅에 입력하지
않도록 주의해 주십시오.
7. 보안
앱은 다층 보호를 적용합니다.
- Firebase Security Rules: Firestore 및 Storage 접근을 소유자/가구 구성원 단위로 제한합니다. 기본 원칙은 "deny-by-default"이며, 필요한 경로만 명시적으로 허용합니다.
- Storage 경로 격리: 집 사진, 작업 사진, 영수증, 댓글 사진은 업로더의 UID가 경로에 포함되어 소유자만 직접 접근할 수 있습니다. 가구 공동 구성원은 앱 내에서 토큰 서명된 다운로드 URL을 통해 표시됩니다.
- EXIF 제거 보장: EXIF 제거에 실패하면 업로드 자체가 중단됩니다.
- AI 사전 마스킹: AI 전송 전에 이메일·전화번호·주소 패턴이 마스킹됩니다.
- 로그 최소화: 서버 로그에 개인정보·AI 원문을 기록하지 않습니다.
- API 키 서버 측 관리: Google Places 등 민감 API 키는 서버(Cloud Functions)에서만 사용되며 앱 바이너리에 포함되지 않습니다.
8. 사용자의 권리
사용자는 언제든지 다음 권리를 행사할 수 있습니다.
- 앱 내 '설정 → 프로필 → 계정 삭제' 메뉴를 통해 계정과 본인의 데이터를 삭제할 수 있습니다.
- 지원 채널(아래 10번 항목)을 통해 본인의 데이터 내역에 대한 열람·정정·삭제·처리 정지를 요청할 수 있습니다.
- 언제든지 서비스 이용을 중단할 수 있으며, 이용 중단만으로는 데이터가 자동 삭제되지는 않습니다. 완전 삭제를 원하면 계정 삭제 기능을 이용해 주십시오.
- AI 기능의 사용 여부는 사용자의 선택이며, 해당 기능을 사용하지 않으면 AI 제공사에 데이터가 전송되지 않습니다.
9. 정책 변경
본 방침이 변경될 경우, 앱 및 공식 채널을 통해 변경 사실을 고지합니다.
변경 사항이 효력을 발휘한 이후에도 앱을 계속 이용하시는 경우, 개정된 방침에
동의한 것으로 간주됩니다.
10. 문의처
개인정보 관련 문의는 아래로 연락해 주십시오.
이메일: support@gomsoonlabs.com
Privacy Policy
Homiya ("we", "our", "the App") is committed to protecting your
privacy. This Policy describes the information the App actually
collects, stores, transmits, and deletes, based on the current
implementation. If implementation changes, this document is
updated alongside the code.
1. Information We Collect
We collect only the minimum data necessary to run the service.
1.1 Account Information
- Email address (from your social login provider)
- Display name and profile picture (from your social login provider)
- Internal user identifier (UID)
1.2 Home & Maintenance Data
- Property type, year built, size, major systems and appliances
- Location is collected only at the city / state / ZIP / country level.
- Maintenance tasks, completion records, user notes, cost entries
- AI chat content (your prompts and the AI's responses)
1.3 Images
- Photos you upload (home interiors/exteriors, appliance labels, receipts, before/after work photos, comment attachments)
1.4 Payment Information
- Premium subscription status and receipt identifiers (via RevenueCat).
- The App does not collect credit card numbers — Apple App Store and Google Play process payments.
1.5 Device & Support Context
- Device OS version / model (for debugging and support)
- App version
⚠️ The App does not collect street addresses, address line 2,
precise GPS coordinates, or Google Place IDs in normal user
flows. Any such legacy data from older app versions is actively
overwritten with empty values the next time you save your home.
2. Data Minimization
We implement "collect only what the feature needs":
- No street-level addresses. Location context is stored only at the
city / state / ZIP / country level.
- AI features receive redacted, summarized data — never the full home document.
- Email, phone, and address patterns in free-form text are regex-masked to
[REDACTED] before being sent to AI or written to server logs.
- AI chat history is capped at the 10 most recent messages on both client and server.
- We never log the full user object or the full home document.
3. Image Privacy
- Every image is re-encoded on-device (as JPEG) to strip EXIF — including GPS location — before upload or AI processing.
- If sanitization fails (e.g. a corrupt image), the upload or AI call is aborted. The original file is never transmitted (fail-closed).
- PDF receipts are not re-encoded on-device; they are handled server-side.
- Your GPS location is never transmitted to our servers or third-party AI providers via embedded photo metadata.
4. AI Processing
We use Google Vertex AI / Gemini for maintenance report generation,
the Home Assistant chat, and photo analysis (receipts, appliances,
before/after review). The following rules apply:
- Minimum transmission: Only required fields are sent. Street addresses, GPS coordinates, placeId, and full home documents are never sent to the AI provider.
- Masking: Free-form user text (notes, "AI requirements", receipt notes, etc.) is regex-masked to redact emails, phone numbers, and address patterns before inclusion in any AI prompt.
- Capped history: AI chat context is limited to the 10 most recent messages.
- Log minimization: Raw AI prompts and raw AI responses are not written to server logs — only length and an opaque trace id are recorded for debugging.
- No training: Our contractual terms with the AI provider (Google Vertex AI) prohibit the use of our prompts for model training.
5. Data Retention & Deletion
- Your data is retained while your account is active.
- AI chat history beyond the most recent session window is not re-used as AI context.
- Server logs are designed to exclude personal information and are retained only for a limited operational window.
- When you delete your account in-app, our
deleteAccount Cloud Function removes your Firestore documents, Storage files, and authentication record.
- Firebase's own backup / export facilities may retain copies per Google Cloud's retention policy, outside the scope of this App-level policy.
6. Third-Party Processors
We entrust limited data to the following processors:
| Processor | Purpose | Data shared |
| Firebase (Google) |
Auth, Firestore, Storage, analytics |
Account, home/task data, uploaded images (after EXIF stripping) |
| Google Vertex AI / Gemini |
AI reports, home assistant chat, image analysis |
Redacted / summarized home & task data, chat messages, images (after EXIF stripping) |
| RevenueCat |
In-app subscription management |
Subscription identifier, receipt identifier (no card data) |
| Crisp |
Customer support chat |
Default: opaque hash of UID, app version, device model. Anything you type into the support chat. |
| Apple / Google (IdP) |
Social login |
Email, name, profile picture (within the scope of your consent) |
⚠️ Anything you type directly into the support chat (email, phone
number, address, photos) is transmitted to Crisp as the message
body. Please avoid sharing sensitive information there unless
necessary.
7. Security
- Firebase Security Rules: Firestore and Storage access is restricted by ownership / household membership. The baseline is deny-by-default; only required paths are explicitly allowed.
- Per-uploader Storage paths: Home photos, task photos, receipts, and comment photos all include the uploader's UID in the path so that only the uploader has direct ref-level access. Household members render shared images via token-signed download URLs managed by the App.
- EXIF stripping guarantee: Uploads are aborted if EXIF stripping cannot be performed.
- Pre-AI masking: Emails, phone numbers, and address patterns are masked before anything is sent to an AI provider.
- Log minimization: Server logs record lengths and opaque trace ids, not personal content or AI payloads.
- Server-side API keys: Sensitive third-party keys (e.g. Google Places) live only in Cloud Functions secrets — they are not embedded in the mobile binary.
8. Your Rights
- You can delete your account and associated data at any time via Settings → Profile → Delete Account.
- You may contact us (section 10) to request access, correction, deletion, or processing restriction for your data.
- You can stop using the service at any time; stopping use alone does not automatically delete stored data — use the account deletion flow for a complete wipe.
- Use of AI features is optional. If you do not use them, no data is sent to the AI provider.
9. Changes
We may update this policy. Material changes will be announced
via the App or official channels. Continued use of the App after
a change takes effect constitutes acceptance of the revised policy.
10. Contact
For privacy-related questions, please contact:
Email: support@gomsoonlabs.com