메인 콘텐츠로 건너뛰기

2025년 앱 스토어 리뷰 통과를 위한 인앱 구매 방법

iOS와 Android에 있는 인앱 구매가 포함된 앱을 승인받기 위한 완전한 안내서. 2025년의 일반적인 거절 사유, 요구 사항, 그리고 최적화 방법을 배워보세요.

Martin Donadieu

Martin Donadieu

콘텐츠 마케터

2025년 앱 스토어 리뷰 통과를 위한 인앱 구매 방법

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

세부 설치 지침이 필요하신가요? 체크하는 완전한 안내서: iOS 앱 스토어 리뷰 | 안드로이드 플레이 스토어 리뷰

IAP를 포함한 앱이 왜 거부되는가

IAP를 포함한 앱은 실제 돈 거래를 포함하기 때문에 더 높은 심사 기준을 받는다. 2025년 기준, 애플의 앱 스토어 리뷰 지침과 구글 플레이의 수익화 정책에 따르면, 가장 큰 거부 사유는 다음과 같다. 가격이 불분명한 경우 (거부 사유의 42%)구독 약관이 누락되거나 혼란스러운 경우

  1. 사용자 인터페이스 패턴이 속임수인 경우 __CAPGO_KEEP_0__
  2. __CAPGO_KEEP_0__ (31%)
  3. __CAPGO_KEEP_0__ (18%)
  4. 개인 정보 보호 정책 위반 (9%)

이러한 함정들을 피하기 위한 방법에 대해 자세히 알아보겠습니다.

iOS 앱 스토어 요구 사항

📖 iOS 앱 스토어 가이드: 설치 방법에 대한 자세한 설명은 iOS 앱 스토어 검토 가이드

1. 투명한 가격 공개

애플은 구매 버튼 이전에 정확한 가격을 공개해야 합니다. 이것은 협상할 수 없는 요구 사항입니다. 애플이 보고 싶은 것:

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

  • For complete setup instructions, see our __CAPGO_KEEP_0__.
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__
  • __CAPGO_KEEP_2__
  • __CAPGO_KEEP_3__

__CAPGO_KEEP_4__

__CAPGO_KEEP_5__ __CAPGO_KEEP_6__

__CAPGO_KEEP_7__

// 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>

__CAPGO_KEEP_8__ __CAPGO_KEEP_9__

  • __CAPGO_KEEP_10__
  • __CAPGO_KEEP_11__
  • 구독 관리
  • 마케팅 자료

1 달러의 차이도 자동으로 거부합니다.

2. 구독 플랜 제시

애플은 비싼 계층을 밀어붙히기 위해 '다크 패턴'을 사용하는 앱을 표시합니다.

필수:

  • 모든 구독 계층을 동일하게 표시
  • 기본적으로 프리미엄 옵션을 미리 선택하지 않습니다.
  • 기능 비교가 명확합니다.
  • 더 저렴한 대안을 쉽게 찾을 수 있습니다.

금지:

  • 자동으로 연간 계획으로 설정하지 않습니다.
  • 월간 옵션을 추가로 탭으로 숨기기
  • 카운트다운 타이머를 사용하여 가짜 긴급성을 생성하기
  • 가짜 부족 ('마지막 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 년에는 개인 정보 보호 강화가 더 엄격해집니다. 애플은 다음과 같이 요구합니다.

모든 권한에 대해:

  • 명확한 설명 이전 __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__
  • __CAPGO_KEEP_2__
  • __CAPGO_KEEP_3__

__CAPGO_KEEP_4__ Info.plist __CAPGO_KEEP_5__

<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>

__CAPGO_KEEP_6__

__CAPGO_KEEP_7__

📖 __CAPGO_KEEP_8__ __CAPGO_KEEP_9__ __CAPGO_KEEP_10__

__CAPGO_KEEP_11__

디지털 상품 (구독, 내 앱 콘텐츠) 에서 사용해야 하는 것은 Google Play Billing 이다. alternative payment method은 거부될 것입니다. 디지털 상품 (Play Billing 사용 필수):

기능에 대한 구독

  • 내 앱 화폐
  • 전자책, 음악, 디지털 콘텐츠
  • 프리미엄 언락
  • 물리적 상품 (Play Billing 사용 불가):

실제 물품

  • 물리적 서비스
  • 비영리 기부물품
  • __CAPGO_KEEP_0__

__CAPGO_KEEP_0__ native-purchases 구현:

__CAPGO_KEEP_1__에 완전한 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. 정확한 데이터 안전 섹션 선언

데이터 안전 선언:

  • 구매 내역 수집
  • 영수증을 위한 이메일 주소
  • 사기 방지를 위한 기기 ID
  • 분석 데이터

앱 설명 지침

두 플랫폼 모두에서 일반적인 거부 사유

1. 메타데이터 불일치

Why It Fails:

  • 스크린샷은 현재 버전의 기능이 아닌 것을 보여주고 있습니다.
  • 설명은 실제로 존재하지 않는 기능을 약속하고 있습니다.
  • 가격은 앱에 있는 것과 다릅니다.

Metadata Checklist

예방 조치:

  • 스크린샷을 업데이트하여 제출할 때마다 업데이트하십시오.
  • 설명이 실제 기능과 일치하도록 하십시오.
  • 모든 주장은 정확한지 테스트하십시오.
  • 기존의 홍보 문구가 업데이트되지 않은 경우 제거하십시오.

2. 유도적인 마케팅

자동으로 거절하는 트리거:

  • “#1 앱”의 증거가 없는 것
  • “무제한”에 숨겨진 제한
  • 사용자 리뷰나 평점의 조작
  • 경쟁사 비방

마케팅 지침

최선의 방법: 사실적이고 구체적이 باشید:

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

3. 구매 흐름의 중단

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

  • 제품이 올바르게 로드됩니다.
  • 구매가 성공적으로 완료됩니다.
  • 프리미엄 기능이 즉시 활성화됩니다.
  • 구매내역 복원 기능이 작동합니다.
  • 오류 메시지가 사용자 친화적입니다.
  • 네트워크 오류가 부드럽게 처리됩니다.
// 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.');
    }
  }
}

제출하기 전에 사용할 체크리스트:

제출하기 전에 사용할 체크리스트:

이 체크리스트를 제출하기 전에 항상 사용하세요. 자세한 테스트 절차에 대한 설명은:

테스트

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

가격 및 약관

  • 모든 플랫폼에서 가격이 일치하는지 확인하세요
  • 구독 약관이 명확하게 표기되는지 확인하세요
  • 취소 지침이 표시됩니다.
  • 결제 주기 표시
  • 무료 시범 기간이 정확합니다.

개인 정보 및 권한

  • 스토어에서 개인 정보 정책 연결
  • 앱 내에서 개인 정보 정책 접근 가능
  • 모든 권한이 정당화되었습니다.
  • iOS의 Info.plist 설명이 명확합니다.
  • Android의 데이터 안전이 완료되었습니다.

메타 데이터

  • 스크린샷은 현재 버전을 보여줍니다.
  • 설명이 기능과 일치합니다.
  • No placeholder text
  • __CAPGO_KEEP_0__
  • 모든 주장은 테스트 가능합니다.

Code 품질

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

리뷰 타임라인 기대치

리뷰 타임라인

iOS:

  • 표준: 24-48시간
  • 주말: 검토 없음
  • Peak periods: 3-5일
  • 긴급 버그: 즉시 처리 가능

Android:

  • Initial: 7일 평균
  • 업데이트: 일반적으로 빠르다
  • Rolling reviews: 언제든지 라이브 가능
  • 정책 위반: 즉시 중단 가능

Pro Tip: iOS 앱을 월-수요일에 제출하여 주말 지연을 피하십시오.

거부된 경우 무엇을 해야 하나요?

정리 과정

1단계: 문제 이해

  • 반려 통지를 신중히 읽어보세요
  • 특정 가이드라인을 인용하세요
  • 제공된 예시를 확인하세요
  • 피드백에서 패턴을 찾으세요

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.

안드로이드 항소:

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.

4단계: 빠르게 재제출

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

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

iOS 변경 사항

AI 기능 공개 (새로운)

  • AI-생성 콘텐츠에 대한 필수 레이블
  • AI 사용 설명
  • 콘텐츠 안전성 문서화

강화된 구독 명확성

  • 사이드 바이 사이드 플랜 비교 필요
  • 비용이 저렴한 옵션 숨기지 않기
  • 업그레이드/다운그레이드 경로 명확화

개인 정보 강화

  • 5.1.1 섹션 강화
  • 데이터 정당성에 대한 더 많은 심사
  • 어린이 앱에 대한 엄격한 규칙

안드로이드 변경

대안 결제 (지역)

  • EEA, 한국에서 허용
  • Google Play 옵션을 제공해야 함
  • 서비스 수수료 감소

구독 API 요구 사항

  • 새로운 앱은 monetization.subscriptions API를 사용해야 함
  • Legacy billing API는 deprecated됨
  • 구독 관리 도구 개선

성공을 위한最佳 관행

1. Proper SDK 사용

The @capgo/native-purchases plugin은 두 플랫폼 모두 정확하게 처리합니다.

// 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'
});

2. 올바른 오류 처리를 구현하세요.

구매 상태를 모든 경우에 부드럽게 처리하세요.

  • 사용자 취소 (침묵)
  • 네트워크 오류 (재시도 옵션)
  • 이미 소유한 항목 (복원)
  • 상품이 unavailable (사용자에게 알림)
  • 결제가 pendding (이후 확인)

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__
  • __CAPGO_KEEP_8__

__CAPGO_KEEP_9__

  • __CAPGO_KEEP_10__
  • __CAPGO_KEEP_11__
  • __CAPGO_KEEP_0__

자원

플랫폼 문서

구현 안내서

상세 리뷰 가이드

전문적인 도움 필요하세요?

앱 리뷰나 IAP 구현에 어려움을 겪고 있나요? 우리의 팀은 앱 리뷰 준비 및 IAP 구현에 대한 전문적인 지원을 제공합니다.

전문적인 도움을 받으려면 IAP 구현 리뷰

  • 앱 스토어 리뷰 준비
  • 제출 전략 가이드
  • 거절 해결 도움
  • 완전한 설정 및 테스트 지원
  • 상담 전화 예약

We’ve helped hundreds of apps pass review successfully!

결과

2025 년 앱 리뷰 통과를 위해 필요한 것은 세부 사항에 주의, 명확한 의사소통, 그리고 적절한 구현입니다. 중요한 점은 다음과 같습니다.

  1. 투명성이 필수적입니다 - 가격을 항상 앞서 표시하십시오
  2. 플랫폼 규칙을 따르십시오 - 사용해야 하는 결제 시스템을 사용하십시오
  3. 적절히 테스트하십시오 - 리뷰어들이 먼저 발견하지 못하는 문제를 발견하십시오
  4. 명확하게 의사소통하십시오 - 사용자는 혼란스럽지 않아야 합니다
  5. 문서를 준비하십시오 - 테스트 계정 준비

이 안내서를 따라하고 적절한 도구를 사용하여 native-purchases 플러그인을 사용하면 첫 번째 승인에 대한 기회를 크게 높일 수 있습니다. 리뷰어들은 사용자에 대한 존중과 지침을 따르는 앱을 찾고 있습니다. 그 마음가짐으로 개발을 하시면 승인이 따를 것입니다.인앱 구매 implement에 도움이 필요하신가요?

전체적인 문서를 확인하거나 커뮤니티에 지원을 요청하세요.

How to Pass App Store Review for In-App Purchases in 2025 앱 스토어 리뷰 통과하기 2025 How to Pass App Store Review for In-App Purchases in 2025 앱 스토어 리뷰 통과하기 2025

이 안내서를 따라하고 적절한 도구를 사용하여 native-purchases 플러그인을 사용하면 첫 번째 승인에 대한 기회를 크게 높일 수 있습니다.

리뷰어들은 사용자에 대한 존중과 지침을 따르는 앱을 찾고 있습니다. 그 마음가짐으로 개발을 하시면 승인이 따를 것입니다. 인앱 구매 implement에 도움이 필요하신가요? 스토어 승인 및 배포를 계획하고 연결하세요. @capgo/capacitor-in-app-review 스토어 승인 및 배포를 위한 구현 세부 사항은 @capgo/capacitor-in-app-review에서 확인할 수 있습니다. @capgo/capacitor-in-app-review을 사용하여 스토어 승인 및 배포를 위한 네이티브 기능은 @capgo/capacitor-in-app-review을 사용하여 구현할 수 있습니다. @capgo/capacitor-native-market 스토어 승인 및 배포를 위한 구현 세부 사항은 @capgo/capacitor-native-market에서 확인할 수 있습니다. @capgo/capacitor-native-market을 사용하여 스토어 승인 및 배포를 위한 네이티브 기능은 @capgo/capacitor-native-market을 사용하여 구현할 수 있습니다. @Capacitor/__CAPGO_KEEP_1__-native-market을 사용하여 Capacitor OTA Updates: App Store 승인 안내

Capacitor를 통해 웹 레이어 버그가 생겼을 때, 앱 스토어 승인 대기 없이 바로 픽스를 배포하세요. 사용자는 배경에서 업데이트를 받으면서 네이티브 변경 사항은 일반적인 리뷰 경로를 유지합니다.

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

__CAPGO_KEEP_0__ 앱의 실시간 업데이트

최신 블로그 글

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