스트리밍은 대부분의 브라우저와
Developer 앱에서 사용할 수 있습니다.
-
앱 내 구입의 가족 공유 알아보기
앱 내 구입을 가족 공유하면 자동 갱신 구독 및 비소모성 항목을 최대 5명의 가족 구성원과 공유할 수 있어 새로운 구독자를 확보, 사용자 참여 독려 및 유지율 개선에 도움이 될 수 있습니다. App Store Connect에서 해당 기능을 활성화하는 방법, StoreKit 및 App Store 서버 알림과 해당 기능을 함께 사용하는 모범 사례 및 멋진 앱 내 구입 경험을 제공하는 방법에 대해 알아보겠습니다.
리소스
- App Store Server Notifications
- Family Sharing for in-app purchases overview
- In-app purchase overview
- Supporting Family Sharing in your app
- Turn on Family Sharing for in-app purchases in App Store Connect
관련 비디오
WWDC23
WWDC20
Tech Talks
-
다운로드
안녕하세요 이 프레젠테이션에서는 가족 공유를 구독 및 비소모성 앱 내 구입에 구현하는 방법을 알아봅니다
저는 App Store Monetization 팀의 Bryan이고, 저와 함께한 Hemant는 App Store Commerce 팀 Developer Advocate입니다
오늘은 앱 내 구입의 가족 공유에 대한 개요를 살펴봅니다
그런 다음 이 기능의 이점을 알아보고 이를 최대한 활용하기 위한 팁을 제시합니다
마지막으로, Hemant가 엔지니어링 및 구현을
설명합니다 그럼 시작하겠습니다
가족 공유는 강력한 도구입니다 고객이 디지털 구입 항목을 모든 Apple 기기에서 가족 구성원과 쉽게 공유할 수 있게 해 주죠 2014년에 출시한 이후 가족 공유는 Apple 생태계에서 중요한 부분이 되어 그 어느 때보다 많은 고객과 기기에 콘텐츠와 서비스를 제공하고 있습니다 또한 이러한 기능을 StoreKit으로 확장했으며 이는 가족 공유에 대한 지속적인 투자의 일환입니다
오늘 세션에서 살펴볼 내용은 이와 같습니다 가족 공유를 시작하여 자동 갱신 구독 및 비소모성 앱 내 구입에 사용합니다
구독 및 비소모성 항목에 모두 사용 가능할 뿐만 아니라 가족 공유는 고객의 가족 그룹에 포함된 가족 구성원 최대 5명과의 구입 항목 공유를 활성화합니다
개발자로서 이를 기존의 SKU에 구현하거나 가족 공유를 위해 새로운 SKU를 생성할 수 있습니다
App Store Connect 내에서 쉽게 구현할 수 있으며 수익 창출 KPI를 향상할 수 있는 간소화되고 편리한 사용자 경험을 제공합니다
앱 내 구입의 가족 공유가 비즈니스에 어떻게 영향을 줄 수 있을까요? 다음과 같은 4가지 주요 측면에 도움이 됩니다 즉 구독자 증가, 참여도 향상 해지 감소에 도움이 되며 이 모두를 통해 고객 평생 가치가 높아집니다
이러한 지표가 어떻게 함께 작용하는지를 Michael의 예를 사용해 살펴보겠습니다 가족 공유는 구독자 기반을 늘리고 Michael이 제품을 사용하도록 유도하는 강력한 방법이 될 수 있습니다 Michael이 구독자로 전환되면 자신의 구독을 나머지 가족 구성원에게 확장할 수 있어 궁극적으로 귀사의 서비스 및 앱에 대한 고객 접점의 수가 크게 증가하게 됩니다
또 가족 전체가 제품을 사용하므로 강력한 콘텐츠를 효과적인 참여도 향상 마케팅과 결합해 앱을 꾸준히 사용하도록 할 수 있으며 추가된 사용자가 귀사의 제품 및 서비스로부터 가치를 얻게 되면 전반적으로 해지가 감소하는 효과가 있습니다
구입 항목을 가족 구성원과 공유할 수 있기 때문에 고객도 가족 공유를 좋아합니다 iOS와 함께 설계되어 별도의 설정 없이 여러 기기와 앱에 걸쳐 일관되게 매끄럽고 쉽게 사용할 수 있는 경험을 제공합니다
개인정보 보호를 고려하여 설계되며 암호를 공유할 필요가 없습니다 각 가족 구성원이 자신만의 구입 권한을 받기 때문이죠 마지막으로, 가족 공유는 앱 내 구입에 가치를 더합니다 1개의 권한 대신에 최대 6개의 권한을 제공하니까요 고객이 구입 항목에 접근할 수 있는 사용자 수를 늘릴 수 있도록 해 주며 각 가족 구성원에게 맞춤형 앱 경험을 제공합니다
이제 고객과 개발자가 어떻게 이 기능을 최대한 활용할 수 있는지 살펴보겠습니다 고객이 앱 내 구입의 가족 공유를 사용하려면 먼저 가족 그룹을 생성해야 합니다 가족 중 성인 한 명이 최대 5명의 가족 구성원을 초대하면 그룹이 생성되며 이때 각자 자신의 Apple ID를 사용합니다 각 가족 구성원이 자신만의 계정을 사용하므로 개인적인 맞춤형 경험이 유지됩니다 가족 그룹이 생성되면 각 가족 구성원이 공유 가능한 해당 그룹의 구독 및 콘텐츠에 즉시 접근할 수 있습니다
고객이 설정 앱 내에서 자신의 공유 환경설정을 관리하는 방법을 살펴보죠 이 구독 관리 페이지에서 고객은 현재 구독 중인 모든 제품을 볼 수 있습니다
페이지 하단의 가족과 공유 토글을 통해 앞으로 가족 공유가 활성화된 SKU를 자동으로 공유할지 여부를 선택할 수 있습니다 이 토글은 기본적으로 켜져 있지만 고객이 언제든지 끌 수 있습니다
나열된 앱 중에서 선택하여 구입 항목을 편집하고 특정 구독에 대해 가족 공유를 켤지 아니면 끌지를 선택할 수 있습니다 초기 설정은 왼쪽 이미지의 가족과 공유 환경설정에 기반합니다 기존 구독에 가족 공유를 사용할 수 있게 되는 경우 고객이 여기서 가족 공유를 켤 수도 있습니다
가족 그룹이 가족과 공유한 구독을 공유하기 위해 수행해야 할 단계는 다음과 같습니다 가족과 공유한 구독의 새로운 구입 항목에 대해서는 가족 공유가 자동으로 활성화됩니다
기존 구독에 가족 공유를 사용할 수 있게 되면 원래 구입한 사람이 설정 내에서 공유를 켜야 합니다 이는 고객이 구독 조건의 업데이트 사항을 완전히 확인하도록 하기 위해서입니다
귀사의 자체 마케팅 채널을 통해 가족 공유 사용 가능성을 알리는 것이 좋지만 App Store에서 직접 고객에게 알리는 2가지 활용 사례가 있습니다 기존 구독 SKU에서 가족 공유를 사용할 수 있게 되면 구입한 사람이 푸시 알림을 받습니다 또한 가족 공유가 활성화된 새로운 SKU를 구입하지만 이전에 구독 관리 페이지 내에서 가족과 공유 기본 토글을 끈 고객에게도 푸시 알림이 전송됩니다 이러한 푸시 알림은 고객을 해당 특정 앱의 구독 편집 페이지로 연결하여 가족 그룹의
나머지 사용자와 공유할 수 있도록 합니다 비소모성 항목의 가족 공유는 iCloud에서 구입 항목 공유가 활성화되어 있는 한 새 구독과 기존 구독에 대해 모두 자동으로 활성화됩니다 가족이 구입 항목을 공유 중이며 앱이 구입 내역에서 숨겨져 있지 않습니다 가족 구성원은 새로운 구입 항목의 콘텐츠에 자동으로 접근할 수 있지만 기존 구입 항목에서 가족 공유를 사용할 수 있게 되는 경우에는 새롭게 사용할 수 있게 된 콘텐츠를 이용하려면 가족 구성원이 구입 항목 복원 버튼을 선택해야 합니다
이 화면에는 가족과 구입 항목 공유 토글이 포함되어 있으며 가족 구성원과 비소모성 항목을 공유하려면 이 토글을 켜야 합니다 이 페이지는 Apple ID를 선택하고 가족 공유를 선택한 다음 설정 앱 내에서 구입 항목 공유를 선택해 찾습니다 가족 공유 기능을 최대한 쉽게 찾을 수 있도록 하고 참여도를 높일 수 있는 다양한 방법이 있습니다
App Store Connect를 사용하면 손쉽게 모든 고객에 대해 가족 공유를 켤 수 있습니다
온보딩 흐름에 이 기능을 포함하여 구독을 가족 구성원과 공유할 수 있다는 사실을 전반적인 서비스 가치 제안의 일부로 명확하게 전달하는 것을 고려해 보세요
가족 공유를 별도의 구독 계층으로 제공할 수도 있습니다 이 구입 절차에서는 사용 가능한 계층들 사이를 명확하게 차별화하고 화면 하단에 가족 공유 개요 페이지로 연결되는 링크를 포함합니다
가족 공유를 더 높은 서비스 계층으로 제공하려는 경우 App Store Connect의 개별 계층을 사용하여 더 높은 계층을 그룹화하세요 그러면 이 앱 내 예시처럼 업그레이드 메시지를 제공할 수 있습니다 이 메시지에서 개별 구독자의 플랜을 가족 계층으로 업그레이드하는 것의 가치를 강조합니다
새로운 가족 구성원이 구입을 완료한 후에는 이 기능에 대한 마케팅을 통해 가족 구성원에게 서비스를 활용하도록 독려해 보라고 알립니다 여기 왼쪽에 표시된 것처럼 말이죠 오른쪽에는 가족 구성원에게 이제 구독에 접근할 수 있음을 전달하는 메시지가 표시되어 있습니다
Hemant가 가족 구성원을 인지하고 접근을 매끄럽게 잠금 해제하여 곧바로 서비스를 즐길 수 있도록 하는 방법을 안내하겠습니다
여기에 Night Sky의 라이브 예시가 있습니다 이 앱은 가족 공유를 기존 SKU의 모든 고객에게 제공합니다
왼쪽에서는 어떻게 등록 흐름 내에서 가족 공유를 명확하게 강조하고 추가 비용 없이 사용할 수 있다고 홍보했는지 확인할 수 있습니다 오른쪽에서는 새로운 플랜 소유자에게 이점을 활용하도록 독려하는 구입 후 구독자 온보딩 Carousel 내에 전용 페이지를 표시한 것을 확인할 수 있습니다 귀사의 팀원들과 플랜 구현을 검토할 때 유념해야 할 몇 가지 사항을 요약하면 다음과 같습니다
가족 공유로 앱 내 구입 시 얻을 수 있는 추가 가치와 이 기능을 사용해 귀사 서비스의 신규 구독자를 확보하고
새 SKU나 기존 SKU에서 가족 공유를 활성화하며
제품 및 마케팅 팀과 협력하여 가족 공유를 통해 신규 구독자를 독려하고 서비스 참여도를 높일 수 있는 머천다이징을 개발하는 방법을 고려합니다
이제 Hemant가 이 기능의 엔지니어링 및 구현에 대해 설명하겠습니다
감사합니다, Bryan 안녕하세요, 여러분 App Store Commerce 팀의 Hemant입니다 오늘은 앱 내 구입의 가족 공유 채택 시 고려해야 할 엔지니어링 및 구현 세부 사항을 말씀드리려고 합니다
세 섹션에 걸쳐 살펴볼 텐데요 App Store Connect에서 각 제품별로 가족 공유를 활성화하는 것으로 시작한 후 응용 프로그램에서 어떻게 구입한 사람의 가족 구성원에게 서비스 권한을 제공할 수 있는지 알아봅니다
마지막으로 StoreKit에서 사용할 수 있는 기능과 가족 공유에 대한 App Store 서버 알림을 봅니다 그럼 가족 공유 활성화로 시작해 보죠 시작하려면 App Store Connect를 방문하여 활성화하려는 구독 또는 비소모성 제품으로 이동합니다 가족 공유라는 새로운 섹션이 이 기능을 켤 수 있는 옵션과 함께 표시됩니다
확인 대화상자가 표시됩니다 확인을 선택하면 몇 시간 이내에 해당 제품이 모든 고객이 가족 공유로 이용할 수 있는 상태가 됩니다
특정 제품에 대해 활성화한 후에는 이를 되돌릴 수 없다는 점을 강조하고자 합니다
고객이 이 기능에 기반하여 구입을 결정했을 수도 있기 때문입니다
App Store Connect에서 활성화하면 활성화한 제품에 대해 이제 StoreKit에서 속성을 가족 공유 가능으로 반환합니다
이 속성은 StoreKit 2 및 원래 StoreKit에서 모두 사용할 수 있습니다
앞에서 Bryan이 설명했던 이 내용이 기억나실 겁니다
이 속성은 응용 프로그램 내에서 가족 공유 관련 UI를 동적으로 제어하기 위해 필요합니다
이 속성은 iOS 14 이후 버전에서 사용 가능합니다
화면에 응용 프로그램이 StoreKit 제품 오브젝트에서 이 속성을 사용하는 방법에 대한 샘플 코드가 표시되어 있습니다
isFamilyShareable 속성은 맞춤형 UI 또는 문구로 가족 공유 가능한 제품을 식별하고 판매할 수 있도록 해 주는 단순한 불리언입니다
이 속성은 샌드박스 및 Xcode 테스트 환경에서도 사용할 수 있으며 가족 공유 가능한 제품에 도입하려는 경험 변경을 손쉽게 테스트할 수 있도록 해 줍니다
이제 가족 구성원에 대해 가족 공유가 어떻게 작동하는지 더 자세히 살펴보죠
다행히도 가족 공유는 서버와 응용 프로그램에서 익숙하게 사용되는 것과 동일한 방식으로 작동합니다
귀사의 응용 프로그램에서 이미 아무 변경 없이 이 가족 트랜잭션을 처리할 가능성이 있습니다 서버 측 또는 클라이언트 측에서요 자동으로 이러한 구입 항목을 모든 가족 구성원이 사용할 수 있기 때문입니다 따라서 응용 프로그램이 실행될 때 StoreKit을 통해 트랜잭션을 사용할 수 있는 것을 볼 수 있습니다 일반적인 구입과 마찬가지로요 이를 통해 각 가족 구성원이 자신의 Apple ID로 구독 또는 비소모성 제품에 접근할 수 있음을 검증할 수 있습니다
앱을 변경 없이 가족 구성원이 사용할 수 있다고 가정한 상태에서 응용 프로그램이
모든 시나리오에서 최적 경험을 제공할 수 있도록 해 주는 주요 모범 사례 몇 가지를 검토해 보겠습니다
사용 중인 StoreKit 버전에 관계없이 실행 시 트랜잭션을 수신하고 앱 사용 기간 내내 계속 그렇게 하는 것이 중요합니다
그러면 앱에서 트랜잭션을 놓치는 일이 없습니다
이것은 다른 시나리오에서도 중요합니다 구입 요청, PSD2, 구독 프로모션 코드 등 트랜잭션이 앱 외부에서 마무리될 수 있는 경우죠
고객에게 제품을 판매하기 전에 또 다른 모범 사례는 먼저 고객의 상태를 파악하는 것입니다 StoreKit과 직접 상호 작용하거나 영수증을 검색 및 검증하여 이를 수행할 수 있습니다
권한을 부여해야 할 과거 구입 내역이 있는지 확인할 수 있습니다 신규 고객인 경우에는 적절히 판매할 수 있습니다
이러한 두 가지 모범 사례로 고객 에스컬레이션을 줄이고 환불과 부정적인 리뷰를 최소화하며 궁극적으로 고객 경험을 향상할 수 있습니다
이 주제에 대해 더 자세히 살펴보려면 WWDC Implement Proactive In-App Purchase Restore 세션을 확인하세요
이제 새로운 구입이 가족 구성원과 그 기기에 어떻게 표시되는지 살펴보죠
구입하는 사람이 평소처럼 자신의 기기에서 구입을 시작합니다
이 제품은 가족 공유가 가능하므로 각 가족 구성원에 대해 트랜잭션이 생성됩니다
모범 사례를 따르는 경우 응용 프로그램이 실행 시 또는 StoreKit에서 실시간으로 이 신규 트랜잭션을 확인합니다
이때 다른 트랜잭션과 마찬가지로 서비스를 검증하고 권한을 부여할 수 있습니다
한 가지 유의할 점은 가족 트랜잭션에 대해 지연을 구현했다는 것입니다
이 지연 덕분에 구입하는 사람이 원하는 경우 가족 공유를 비활성화할 시간이 확보됩니다
동일한 설명을 기존 구독 구입에 적용해 보겠습니다
앞서 언급한 대로 기존 구입의 경우 가족 공유가 기본적으로 활성화되지 않습니다
구입한 사람이 구독 관리 페이지에서 각 기존 구독에 대해 가족 공유를 활성화해야 합니다
활성화되면 곧 각 가족 구성원에 대한 트랜잭션이 생성됩니다
StoreKit과 서버 API에서 사용 가능한 소유권 유형 속성을 사용해 구입한 사람과 가족 구성원을 구별할 수 있습니다
앞서 Bryan이 설명한 대로 응용 프로그램에서 가족 구성원에게 맞춤형 온보딩 경험을 제공하려면 이 속성을 사용합니다
또는 구독을 관리할 수 있는 고객을 식별한 다음 구입액을 찾아보려는 경우에도 유용할 수 있습니다
이 속성은 각 트랜잭션의 오브젝트 내에서 찾을 수 있으며 앱 영수증에서도 사용할 수 있습니다
다음은 구독자 이벤트 처리입니다
알아 두어야 할 특별한 시나리오가 있습니다 가족 구성원의 접근을 취소해야 하는 경우가 있기 때문입니다 예를 들면 구입한 사람이 가족 공유를 완전히 비활성화했거나 구독 또는 비소모성 항목에 대해 환불을 받은 경우입니다 마지막으로, 가족 구성원 또는 구입한 사람이 더 이상 가족에 속하지 않는 경우입니다 이러한 시나리오에 대응하기 위해 iOS 14 이후 버전에서 StoreKit을 통해 그리고 App Store 서버 알림에서 필요한 정보를 확인할 수 있습니다
이 코드 예제에서 이 시나리오에 대해 확인하는 방법을 살펴보죠
트랜잭션 수신기에서 트랜잭션에 대한 업데이트를 수신하면 revocationDate 속성이 존재하는지 확인해야 합니다
그러면 이 트랜잭션이 취소되었으며 고객에게 더 이상 해당 제품에 대한 권한이 없다는 것을 알 수 있습니다 하지만 고객에게 동일한 제품이나 다른 제품에 대한 권한을 부여하는 다른 트랜잭션이 있을 수 있으므로 고객이 비용을 지불하는 제품을 수신하고 있는지 확인해야 합니다
원래 StoreKit을 여전히 사용 중인 경우 didRevokeEntitlementsForProductIdentifiers 라는 콜백 메서드를 사용해야 합니다
이것은 이 고객의 일부 권한이 변경되었을 수 있으며 고객의 상태를 확인해야 한다는 동일한 신호입니다
또한 Revoke라는 App Store 서버 알림 유형이 있습니다 이 실시간 서버 간 알림은 권한이 변경되었을 수 있음을 나타냅니다 이 알림은 버전 1 및 버전 2 알림 모두에 대해 사용할 수 있습니다 따라서 이 콜백 중 하나를 수신하는 경우 올바른 권한을 재설정해야 합니다 즉 이러한 고객은 여러 권한을 가졌을 수 있으므로 전체 트랜잭션 내역을 반복하는 것이 중요합니다 권한 하나가 취소된 경우 고객에게 동일한 제품 또는 다른 제품에 대한 권한을 부여하는 또 다른 트랜잭션이 있을 수 있습니다
이 경우 이와 같이 하면 서비스 중단을 방지할 수 있습니다
오늘 살펴본 App Store 서버 알림 유형을 간략히 복습해 보겠습니다 여기에 V2 알림 목록이 나와 있습니다
다행히도 해당 고객 권한을 서버에 최신 상태로 유지하기 위해 수신하고자 하는 가족 구성원에 대한 모든 관련 라이프사이클 알림을 수신할 수 있습니다
또한 구입하는 사람과만 관련된 알림은 생략할 수 있습니다
V1 알림을 여전히 사용 중인 경우 상응하는 라이프사이클 업데이트도 받을 수 있습니다
또한 아직 App Store Connect에 서버 엔드포인트를 추가하지 않았다면 언제든지 추가하고 샌드박스 환경에서 실험하여 이 중요한 라이프사이클 업데이트에 대한 지원을 개발할 수 있습니다
마지막으로, App Store Connect의 판매 및 추세 섹션에서 제공되는 내용을 살펴보죠
구독 보고서와 관련해 궁금한 점이 있을 수 있습니다 제품별로 유료 구독의 수는 얼마나 되는가? 가족 구성원을 포함해 접근할 수 있는 고객은 몇 명인가?
구독 보고서에서 구독자 열을 사용할 수 있습니다
이 열에서는 구독에 접근할 수 있는 고객의 수를 제공합니다 여기에는 주 구독자와 권한 있는 가족 구성원이 포함됩니다
제품에 대한 활성 구독 수가 4 이상인 경우에만 이 필드가 채워집니다
오늘 내용을 마무리하면서 귀사의 새로운 제품 또는 기존 제품에 가족 공유 기능을 고려해 보실 것을 권합니다 가족 공유 사용 가능성과 그 가치 제안을 명확히 전달해야 합니다 가족 공유는 고객의 개인정보를 보호하며 자격 증명 공유를 줄이는 데 도움이 될 수 있습니다
Apple Developer 웹 사이트에서 구독 등 앱 내 구입에 관한 지침을 확인하실 수도 있습니다
-
-
찾고 계신 콘텐츠가 있나요? 위에 주제를 입력하고 원하는 내용을 바로 검색해 보세요.
쿼리를 제출하는 중에 오류가 발생했습니다. 인터넷 연결을 확인하고 다시 시도해 주세요.