iOS 및 Android에서 in-app 구매가 포함된 앱을 승인받기 위한 완전한 안내서. 2025년의 일반적인 거절 사유, 요구 사항 및最佳 관행을 배워보세요.

2025년 앱 스토어 리뷰 통과하기: 인앱 구매

2025년 iOS와 Android 앱에 인앱 구매가 포함된 앱을 승인받기 위한 완전한 안내서입니다. 일반적인 거절 사유, 요구 사항, 그리고 2025년의最佳 관행을 배워보세요.

마틴 도나디유

마틴 도나디유

콘텐츠 마케터

2025년 앱 스토어 리뷰 통과하기: 인앱 구매

앱 스토어와 구글 플레이에 앱을 승인받는 것은 어려울 수 있습니다. 특히 인앱 구매(IAP)와 구독을 구현할 때 더 엄격한 지침이 2025년에 적용되었습니다. 리뷰어들이 무엇을 찾는지 이해하는 것은 중요합니다. 이 포괄적인 안내서에서는 첫 번째 제출에서 리뷰를 통과하기 위해 필요한 모든 것을 다룹니다.

세부적인 설정 지침이 필요하신가요? 다음의 완전한 안내서를 확인하세요: iOS 앱 스토어 리뷰 | Android 플레이 스토어 리뷰

IAP가 포함된 앱이 거절되는 이유

실제 돈 거래가 포함된 앱은 더 많은 주의를 받습니다. Apple의 App Store Review 지침 Google Play의 수익화 정책 에 따르면 2025년의 주요 거부 사유는 다음과 같습니다.

  1. 가격이 불분명한 경우 (거부 사유의 42%)
  2. 결제 구독 약관이 누락되거나 혼란스러운 경우 (31%)
  3. 사용자 인터페이스 패턴이 속임수로 보이는 경우 (18%)
  4. 개인 정보 보호 정책 위반 (9%)

이러한 함정에 빠지지 않으려면 어떻게 해야 하는지 알아보겠습니다.

iOS App Store 요구 사항

📖 전체 iOS 가이드: 완벽한 설정 지침을 보려면 우리의 iOS 앱 스토어 리뷰 가이드

1. 투명한 가격 정보

애플은 구매 버튼 이전에 정확한 가격 공개를 요구합니다. 이것은 협상할 수 없습니다. 애플이 보고 싶은 것:

가격이 명확하게 표시되야 합니다: “월 $9.99”

  • 청구 주기가 미리 알려져야 합니다
  • 사용자가 돈을 지불하는 데 무엇을 얻는지
  • 요금이 언제 발생하는지
  • __CAPGO_KEEP_0__
  • 취소 지침이 표시됩니다.

UI 디자인 최적화 방법

일반적인 오류: 가격을 사용자가 '구독' 버튼을 클릭하기 전까지 숨기거나, 세세한 글씨로만 표시하는 경우.

해결 방법:

// Example: Compliant subscription display
<div className="subscription-card">
  <h2>Premium Plan</h2>
  <p className="price">$9.99/month</p>
  <ul>
    <li>✓ Ad-free experience</li>
    <li>✓ Unlimited cloud storage</li>
    <li>✓ Priority support</li>
  </ul>
  <p className="terms">
    Renews automatically. Cancel anytime in Settings.
  </p>
  <button>Subscribe Now</button>
</div>

가격 일관성 규칙: 모든 가격은 다음에 일치해야 합니다:

  • 앱 스토어 목록
  • 인앱 구매 화면
  • 구독 관리
  • 마케팅 자료

1달러의 가격 불일치도 자동으로 거절됩니다.

2. 구독 계획 제시

애플은 비싼 계층을 강요하기 위해 "암흑 패턴"을 사용하는 앱을 표시한다.

필수:

  • 모든 구독 계층을 동일하게 표시
  • 초기 선택된 프리미엄 옵션 없음
  • rõ한 기능 비교
  • 쉽게 찾을 수 있는 저렴한 대안

금지:

  • 연간 계획으로 자동 기본값 설정
  • 월별 옵션을 추가 탭 뒤에 숨기기
  • 카운트다운 타이머를 사용하여 가짜 긴급성을 만들기
  • "남은 자리 3개" 라는 가짜 부족

3. 구매내역 복원 기능

모든 IAP를 지원하는 앱은 구매내역 복원 버튼을 제공해야 하며, 지원 연락처를 요구하지 않고 작동해야 합니다. 더 자세한 내용은 "Getting Started Guide"를 참조하세요. 시작 가이드.

Implementation:

import { NativePurchases } from '@capgo/native-purchases';

async function restorePurchases() {
  try {
    const { customerInfo } = await NativePurchases.restorePurchases();

    if (customerInfo.activeSubscriptions.length > 0) {
      showSuccess('Purchases restored!');
      unlockPremiumFeatures();
    } else {
      showInfo('No previous purchases found.');
    }
  } catch (error) {
    showError('Restore failed. Please try again.');
  }
}

4. 개인정보 보호 준수 (5.1.1 절)

2025년은 개인정보 보호 강화의 해입니다. 애플은 이제 다음과 같은 개인정보 보호 규정을 적용합니다.

모든 권한에 대해:

  • 개인정보 보호에 대한 명확한 설명 이전 권한 요청
  • 특정 사용 사례 (일반적인 경우가 아닌)
  • Specific use case (not generic) - 데이터는 어떻게 저장/공유되나요?
  • 그것이 선택적이든

예시 Info.plist entries:

<key>NSCameraUsageDescription</key>
<string>Camera access lets you scan product barcodes for quick upgrades. Photos are never uploaded.</string>

<key>NSLocationWhenInUseUsageDescription</key>
<string>Location shows relevant local content in your Premium subscription.</string>

2025년의 주요 거부 사유 중 하나는 부정확한 개인 정보 레이블입니다.

Android Google Play Requirements

📖 Android에 대한 포괄적인 안내서: 완전한 설정 지침을 보려면 Android Play Store 리뷰 가이드

1. Google Play Billing은 필수입니다.

디지털 상품 (구독, 앱 내 콘텐츠)에서, Google Play Billing을 사용해야 합니다. 다른 결제 방법은 거부될 것입니다. __CAPGO_KEEP_0__

__CAPGO_KEEP_0__ (Play Billing 사용 필수):

  • __CAPGO_KEEP_1__ 기능에 대한 구독
  • 인앱 화폐
  • 디지털 콘텐츠 (전자책, 음악)
  • 프리미엄 언락

__CAPGO_KEEP_0__ (Play Billing 사용 불가):

  • 실제 물품
  • 물리적 서비스
  • 비영리 기부

native-purchases와의 구현:

Android 설정을 완벽히 하려면 Android 샌드박스 테스트구독 생성.

import { NativePurchases } from '@capgo/native-purchases';

// Automatically uses Google Play Billing on Android
await NativePurchases.configure({
  apiKey: 'your_api_key'
});

const { products } = await NativePurchases.getProducts({
  productIdentifiers: ['premium_monthly']
});

2. 투명한 자동 갱신

구글은 구독이 자동 갱신되는 것을 명확히 알리기 위해 다음을 요구합니다.

  • 자동 갱신 전 요금 청구 알림
  • 요금 알림
  • 자동 갱신 취소에 대한 쉬운 접근

규정 준수 UI:

<div className="subscription-terms">
  <p>Subscription renews automatically at $9.99/month</p>
  <p>Cancel anytime in Google Play Subscriptions</p>
  <p>Next billing date: February 15, 2025</p>
  <button onClick={openManagement}>
    Manage in Google Play
  </button>
</div>

3. 개인 정보 보호 정책 요구 사항

IAP 앱에 필수:

  1. Play Console에 개인 정보 보호 정책 URL
  2. 앱 내 개인 정보 보호 정책 링크
  3. __CAPGO_KEEP_0__

__CAPGO_KEEP_1__

  • __CAPGO_KEEP_2__
  • __CAPGO_KEEP_3__
  • __CAPGO_KEEP_4__
  • __CAPGO_KEEP_5__

__CAPGO_KEEP_6__

__CAPGO_KEEP_7__

1. 메타데이터 불일치

이유:

  • 스크린샷은 현재 버전의 기능을 보여주지 않습니다.
  • 설명은 존재하지 않는 기능을 약속합니다.
  • __CAPGO_KEEP_0__

__CAPGO_KEEP_0__

__CAPGO_KEEP_0__

  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__

2. 유도적 마케팅

__CAPGO_KEEP_0__

  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • 경쟁사 비하

마케팅 지침

최선의 방법: 정확하고 사실에 근거한 내용을 사용하세요:

  • ✓ "50,000명 이상의 사용자와 함께하세요"
  • ✗ "세계에서 가장 좋은 앱"
  • ✓ "연간 계획으로 30%까지 절약하세요"
  • ✗ "한정 시간 동안의 특별한 행사"

3. 구매 프로세스 오류

제출하기 전에 테스트하세요:

  • 제품이 올바르게 로드됩니다
  • 구매가 성공적으로 완료됩니다
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
// Comprehensive error handling
async function handlePurchase(productId: string) {
  try {
    const { customerInfo } = await NativePurchases.purchaseProduct({
      productIdentifier: productId
    });

    if (customerInfo.entitlements.active['premium']) {
      unlockPremiumFeatures();
    }
  } catch (error: any) {
    switch (error.code) {
      case 'USER_CANCELLED':
        // Silent - user backed out
        break;
      case 'ITEM_ALREADY_OWNED':
        await NativePurchases.restorePurchases();
        break;
      case 'NETWORK_ERROR':
        showError('Check your connection and try again.');
        break;
      default:
        showError('Purchase failed. Please try again.');
    }
  }
}

__CAPGO_KEEP_1__

__CAPGO_KEEP_1__

__CAPGO_KEEP_2__

__CAPGO_KEEP_7__

  • 모든 구독 등급 테스트
  • 무료 시도가 올바르게 작동하는지 확인
  • 소개 제안 테스트
  • 구매를 복원하는 것이 작동하는지 확인
  • 다양한 장치에서 테스트
  • 테스트/샌드박스 계정의 작동을 확인

가격 및 약관

  • 모든 플랫폼에서 가격이 일치하는지 확인
  • 구독 약관이 명확하게 표시되는지 확인
  • 취소 지침이 표시되는지 확인
  • 결제 빈도 표시
  • 무료 시도가 정확한지 확인

개인 정보 및 권한

  • 스토어에서 연결된 개인 정보 정책
  • 앱 내에서 개인 정보 정책 접근 가능
  • 모든 권한이 정당화됨
  • Info.plist 설명이 명확함 (iOS)
  • 데이터 안전 완료 (Android)

메타데이터

  • 스크린샷은 현재 버전을 보여줍니다
  • 설명이 기능과 일치함
  • 장치에 텍스트 없음
  • 나이 등급이 정확함
  • 모든 주장은 테스트 가능함

Code 품질

  • 런칭 시 충돌 없음
  • 모든 기능이 설명된 대로 작동
  • 오류 처리 구현
  • 로딩 상태 표시
  • 네트워크 오류 처리

리뷰 타임라인 기대

리뷰 타임라인

iOS:

  • 표준: 24-48시간
  • 피크 기간: 3-5일
  • 주말: 리뷰 없음
  • 급히 해결해야 하는 버그에 대해 지원 가능합니다.

안드로이드:

  • 초기: 평균 7일
  • 업데이트: 일반적으로 더 빠릅니다.
  • 롤링 리뷰: 주말 지연을 피하기 위해 월요일-수요일에 iOS 앱을 제출하세요.
  • 정책 위반: 즉시 중단 가능합니다.

팁: 반려된 앱에 대해 처리하는 방법

반려 사유를 이해하기 위한 설명 과정

1단계: 문제를 이해하세요.

반려 통지를 신중히 읽으세요.

  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__

2단계: 철저히 수정

  • 원인에 대처하기, 증상에 대처하지 않기
  • 수정 내용을 철저히 테스트
  • 모든 변경 사항을 문서화
  • 이전/후 사진

3단계: 전문적으로 대응

문서 요청

iOS 해결 센터:

Thank you for the feedback. I have addressed the issue:

Issue: Subscription pricing not clear upfront

Fix: Added explicit pricing display on subscription screen
showing "$9.99/month" before purchase button. Also added
cancellation instructions on the same screen.

Screenshots showing changes are attached. Test account
provided in App Review Notes.

Android 항의:

Subject: Policy Violation Appeal - [App Name]

I have received notification regarding [Policy X.Y].

Changes made:
1. Updated subscription UI to show all pricing upfront
2. Added clear cancellation instructions
3. Implemented restore purchases functionality

Version [X.Y.Z] addresses all concerns. Test account
credentials provided below for verification.

Step 4: 빠른 재제출

  • 재제출은 더 빠르게 검토됩니다
  • 보통 24시간 이내
  • 테스트 계정 포함
  • 이전 제출서류 참조

2025년 업데이트 및 새로운 요구 사항

iOS 변경 사항

AI 기능 공개 (새)

  • AI 생성 콘텐츠에 레이블을 달아야 함
  • AI 사용 설명
  • 콘텐츠 안전성 문서화

강화된 구독 명확성

  • 동시 비교가 필요합니다.
  • 비용이 저렴한 옵션을 숨기지 않습니다.
  • 업그레이드/다운그레이드 경로가 명확합니다.

개인 정보 보호 강화

  • 5.1.1 조항 강화
  • 데이터 정당성에 대한 더 많은 심사
  • 어린이 앱 규칙 강화

안드로이드 변경 사항

대안 결제 (지역)

  • EEA, 한국에서 허용됩니다.
  • Google Play 옵션을 제공해야 함
  • 서비스 수수료가 줄어듭니다

구독 API 요구 사항

  • 새로운 앱은 monetization.subscriptions API를 사용해야 함
  • 기존 결제 API가 deprecated되었습니다
  • 구독 관리를 위한 더 나은 도구

성공을 위한 Best Practices

1. Proper SDK를 사용하십시오

@capgo/native-purchases 플러그인은 두 플랫폼 모두 올바르게 처리합니다: 2. Proper 에러 처리를 implement하십시오

// Single API for iOS and Android
await NativePurchases.configure({
  apiKey: 'your_api_key'
});

// Automatically uses correct billing system
const { products } = await NativePurchases.getProducts({
  productIdentifiers: ['premium_monthly']
});

// Platform-specific logic handled automatically
await NativePurchases.purchaseProduct({
  productIdentifier: 'premium_monthly'
});

__CAPGO_KEEP_0__

모든 구매 상태를 고운 마음으로 다루세요:

  • 사용자 취소 (침묵)
  • 네트워크 오류 (재시도 옵션)
  • 이미 소유한 경우 (복원)
  • 제품이 unavailable (사용자에게 알리기)
  • 결제 대기 (이후 확인)

3. 명확한 의사소통

사용자는 항상 알 수 있어야 합니다:

  • 그들이 무엇을 구매하는지
  • 그것이 얼마나 비용이 들는지
  • 그들이 얼마나 과금될지
  • 취소 방법
  • trial 기간 후에 무슨 일이 발생하는가

4. 광범위한 테스트

iOS 샌드박스:

  • 애플 스토어 커넥트에서 테스트 계정을 생성하세요
  • 장치에 대한 구성 (설정 > 앱 스토어 > 샌드박스)
  • 가속된 구독 기간에 주의하세요

Android 라이선스 테스트:

  • 플레이 콘솔에서 테스트 계정을 추가하세요
  • ‘구매 테스트’ 알림을 확인하세요
  • 실제 요금이 발생하지 않습니다

자원

플랫폼 문서

구현 안내서

상세 리뷰 안내서

Need Expert Help?

앱 리뷰에 막혀거나 직접적인 도움을 필요로 하는 경우, 앱 내 구매 구현 및 리뷰 준비에 대한 전용 지원을 제공하는 팀이 있습니다.

Book a consultation call with us 개인화된 도움을 받기 위해:

  • IAP 구현 리뷰
  • 앱 스토어 리뷰 준비
  • 제출 전략 지침
  • 리젝션 해결 도움
  • 완전한 설정 및 테스트 지원

우리는 수백 개의 앱이 리뷰를 통과하는 데 성공했습니다!

Conclusion

2025년 앱 리뷰에서 앱 내 구매를 통과하려면 세부 사항에 주의를 기울이고 명확한 의사소통 및 적절한 구현이 필요합니다. 주요 결론:

  1. __CAPGO_KEEP_0__ - 가격을 항상 미리 공개하십시오
  2. __CAPGO_KEEP_1__ - 필요 한 계정 관리 시스템을 사용하십시오
  3. __CAPGO_KEEP_2__ - 리뷰어보다 문제를 먼저 발견하십시오
  4. __CAPGO_KEEP_3__ - 사용자는 혼란스러워서는 안됩니다
  5. __CAPGO_KEEP_4__ - 테스트 계정을 미리 준비하십시오

이 안내서를 따르고 native-purchases 플러그인을 포함한 적절한 도구를 사용하면 __CAPGO_KEEP_5__, 앱 승인 첫 번째 시도에서 승인 확률을 크게 높일 수 있습니다.

주의: 리뷰어들은 사용자와 지침을 준수하는 앱을 찾고 있습니다. 사용자와 지침을 존중하는 마음으로 개발하면 승인이 따를 것입니다.

인앱 구매 implement 도와드릴까요? 자세한 설명을 확인하시려면 comprehensive documentation 또는 커뮤니티에서 지원을 받으시려면

Capacitor 앱에 대한 실시간 업데이트

웹-layer 버그가 활성화된 경우, 앱 스토어 승인까지 며칠 기다리지 않고 Capgo를 통해 패치를 배포하세요. 사용자는 배경에서 업데이트를 받으며, 네이티브 변경 사항은 일반적인 리뷰 경로를 유지합니다.

시작하기

블로그에서 최신 소식

Capgo는 전문적인 모바일 앱을 만들기 위해 필요한 최고의洞察력을 제공합니다.