관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] 1. StoreKit - IAP (In App Purchases 인앱 결제), 구독 구현 방법 (Sandbox, 인앱 결제 앱 등록) 본문

iOS 응용 (swift)

[iOS - swift] 1. StoreKit - IAP (In App Purchases 인앱 결제), 구독 구현 방법 (Sandbox, 인앱 결제 앱 등록)

jake-kim 2022. 6. 5. 22:16

1. StoreKit - IAP (In App Purchases, 인앱 결제) 사용 방법 (Sandbox, 인앱 결제 앱 등록)

2. StoreKit - IAP(In App Purchases, 인앱 결제) 적용 방법 (코딩 및 구현)

3. StoreKit - SwiftyStoreKit을 이용하여 IAP (In App Purchase) 쉽게 구현 방법

 

cf) StoreKit을 이용한 별점 띄우기는 이전 포스팅 글 참고

IAP (In-App Purchases, 인앱 결제)

  • 앱의 특정 기능이나 콘텐츠 사용에 대한 요금을 청구하는 방식
    • 광고를 표시하는 앱에 IAP 구매를 통해 광고를 지울 수 있는 옵션도 제공 가능
  • 기타 요금 청구 방식)
    • 유료 앱
    • 광고

App ID 정보 입력

  • Xcode에서 Bundle Identifier를 확인하여 입력

아래 예제에서 사용할 Bundle ID는 com.jake.sample.ExInAppPurchase
만약 이미 존재하는 Identifier를 입력하면 팝업이 뜨므로 다른 id로 입력 (예제에 상요할 ID - com.jake.sample.ExInAppPurchase)

  • App Store Connect -> 계약, 세금 및 금융거래 탭에서 유로 앱에대한 약관 동의 수행
    • 여기서 세금 양식을 제출해야 하는데, 사업자 등록번호, 통신판매업 신고번호가 필요 (신규 등록할 때 3~4일 정도 소요)
    • 통신판매업 신고를 할때 사업자 등록번호가 필요하므로, 사업자 등록번호 먼저 신청할 것
    • 등록 방법은 다른 블로그에서 잘 정리해주신 포스팅 글, 유료 앱 개발자 통신판매업 신고 참고

요청을 보내면 며칠 이따가 애플에서 수락 (이 부분이 해결되어야 2장에서 테스트가 가능)

  • 아래처럼 "사용자 정보 대기 중" 상태면 다 입력하지 않은 상태이므로 추가 입력이 필요

추가 입력이 필요한 상태

App Store Connect 에 앱 추가

+ 버튼을 눌러서 새로운 앱 추가

  • 앱 이름은 앱스토어에 표시되는 이름이고 고유한 이름으로 입력
    • 번들 ID는 위에서 입력했던 ID로 입력

In App Purchase 상품 추가

  • IAP를 사용하려면 먼저 구입 항목을 추가
    • 소모품 (Consumable): 게임에서 라이프, 캐시, 캐시템같은 여러번 구매가 가능하고 구매한 것을 소비할 수 있는 유형
    • 비소모품 (Non-Consumable): 광고해제, 잠금해제와 같은 영구적으로 유지되는 상품
    • 비자동 갱신 구독 (Non-Renewing Subscription): 수동 구독 상품 (자동으로 구독안되는 상품)
    • Auto-Renewing Subscription: 자동 구독 연장 상품
  • 주의사항
  • App Store Connect -> 앱 내 구입 탭 선택 -> + 버튼 클릭

In App Purchase 상품 추가

  • 상품 추가 - 예제에서는 비소모품을 사용할것이기 때문에 비소모품 선택

  • 상품정보 입력
    • 식별 정보: App Store에서의 In-App Purchase의 ID (판매 및 추세 보고서에 사용되는 ID)
    • 제품 ID: 이름 그대로 상품의 ID를 의미 (번들아이디.상품이름으로 입력) "com.jake.sample.ExInAppPurchase.shopping"

  • 가격 선택

  • 현지화
    • 앱스토어에 표시될 표시 이름과 설명 입력 후 저장

Sandbox 계정 생성

  • 앱 결제에 테스트를 위해 애플은 sandbox 환경을 제공
  • App Store Connect -> 사용자 및 액세스

  • 테스터 탭 -> Sandbox 테스터에서 + 버튼 클릭

  • 정보를 입력하고 Save 클릭
    • 사용자의 이름과 성은 아무것이나 입력해도 무방
    • 이메일은 실제 이메일을 입력해야, 주소 인증이 가능 (Apple ID 계정과 연결되어있지 않은 계정으로만 사용 가능)
    • 이메일 중 마침표가 있는 계정은 사용 불가

이후 코딩은 다음 포스팅 글, StoreKit - IAP(In App Purchases, 인앱 결제) 적용 방법 (코딩 및 구현) 에서 계속

* 참고

https://developer.apple.com/support/app-store-connect/

https://www.raywenderlich.com/5456-in-app-purchase-tutorial-getting-started

https://medium.com/better-programming/in-app-purchases-and-storekit-in-ios-14-aed2c3e58966

https://developer.apple.com/documentation/storekit/original_api_for_in-app_purchase/offering_completing_and_restoring_in-app_purchases

Comments