스트리밍은 대부분의 브라우저와
Developer 앱에서 사용할 수 있습니다.
-
App Store가 제공하는 기능으로 구독자 유지율 향상하기
구독 해지율을 최소화하고 App Store 구독자를 되찾는 방법을 소개합니다. App Store 데이터를 살펴보고 다양한 구독 해지 유형을 검토해 보세요. 유지율 향상 전략을 강화하는 데 사용할 수 있는 도구에 대해 알아보고 구현 모범 사례도 학습해 봅니다.
리소스
-
다운로드
Bryan: 반갑습니다 오늘은 App Store 기능을 사용하여 앱의 구독 유지 전략을 개선하는 방법을 알아보겠습니다 저는 App Store Monetization 팀의 Bryan입니다 오늘은 App Store Commerce 팀의 Developer Advocate인 Hemant와 함께합니다 먼저 구독자 유지 전략 관리에 유용한 주요 인사이트를 살펴본 다음 구독자 유지율을 높일 수 있는 App Store 기능을 알아보고 구독자 유지율 향상을 위해 고려할 수 있는 샘플 전략을 소개하겠습니다 그다음 Hemant가 엔지니어링 고려 사항을 설명해 드릴 것입니다 그럼 시작하겠습니다 지난 15년 동안 App Store는 사용자가 앱을 믿고 다운로드할 수 있도록 안전한 플랫폼을 제공했습니다 앱 내 구입을 통해 App Store에서 다양한 비즈니스 모델을 지원할 수 있습니다 고객들은 App Store 구입이 엄격한 개인정보 보호 표준을 준수하며 개인정보가 암호화되고 철저히 보호된다고 믿고 있습니다 신규 구독 시작이 매년 증가세를 보임에 따라 자동 갱신 구독은 개발자가 App Store에서 비즈니스를 성장시킬 수 있는 효과적인 방법임이 입증되었습니다 자동 갱신 구독은 반복형 수익 모델인 만큼 모든 단계에 모니터링과 추적이 필요한 고유한 고객 라이프 사이클이 있습니다 먼저, 고객이 앱을 기기에 다운로드하기 전에 App Store에서 유기적으로 또는 자체 마케팅 채널을 통해 앱을 발견합니다 고객이 앱을 다운로드하면 구독 항목을 소개하고 서비스의 가치를 전달하여 유료 구독자를 확보합니다 고객이 유료 콘텐츠를 구매하고 나면 고객이 이를 꾸준히 사용하고 일관된 가치를 얻을 수 있도록 합니다 이러한 단계는 비즈니스 확장에 중요합니다 성공적인 구독 서비스는 고객을 더 오래 유지하기 위한 세심한 전략을 갖추고 있는 것으로 나타났습니다 쉽게 이해하자면 구독 서비스를 구멍이 뚫려 물이 새고 있는 물통이라고 생각하면 됩니다 물통을 채우는 것 즉 신규 구독자 확보에만 모든 시간과 리소스를 쏟는다면 시간이 갈수록 구독자를 서서히 잃게 될 것입니다 그러나 구멍을 메우는 데 집중하면 더 많은 구독자를 효과적으로 유지하여 문제를 바로잡고 해결할 수 있습니다 고객 유지율을 확보할 때 큰 이점 하나는 수익이 증가한다는 것입니다 App Store를 통해 유입된 고객이 1년 넘게 앱을 구독하는 경우 2년 차에 수익금이 70%~85% 증가합니다 구독자 유지율 파악을 위해 모니터링할 수 있는 주요 지표 중 하나는 해지율입니다 해지는 고객 구독이 종료된 후 자동 갱신되지 않을 때 발생합니다 다양한 이유로 발생할 수 있으며 크게 두 카테고리로 나뉩니다 자발적 해지는 고객이 구독 취소를 직접 선택한 경우입니다 비자발적 해지는 고객이 구독을 종료할 의도가 없는 경우에 발생합니다 고객이 구독을 자발적으로 해지하는 이유는 다양합니다 예를 들어 서비스에 새로운 콘텐츠나 기능이 꾸준히 추가되지 않았거나 애초에 단기간 사용이 목적일 수 있습니다 고객이 서비스 구독 비용을 지출할 가치를 더 이상 못 느낄 수도 있습니다 비자발적 해지는 주로 신용카드 만료 청구 세부 정보 업데이트 실패 등 고객이 청구 문제를 경험할 때 발생합니다 앱의 자발적 해지율에는 구독자의 위치 등 여러 요인이 영향을 줄 수 있습니다 예를 들어 미국에 비해 자동 갱신 결제가 드문 중국 본토에서는 해지율이 더 높은 편임을 알 수 있습니다 앱 카테고리에 따라서도 해지율이 달라집니다 샘플 카테고리로 차이점을 살펴보겠습니다 건강 및 피트니스 앱은 고객이 목표 달성을 위해 서비스를 장기간 이용하는 경우가 많으므로 평균 해지율이 낮은 편입니다 또한 음악 앱은 콘텐츠 라이브러리가 방대하여 계속 가치를 발견하고 사용할 수 있습니다 반면에 엔터테인먼트 등의 일부 카테고리는 고객이 자신이 좋아하는 프로그램이 종영되면 서비스를 해지하는 경우가 많아서 평균 해지율이 더 높을 수 있습니다 라이프스타일 카테고리는 데이팅 앱이 주가 되는데 이러한 앱은 고객이 데이팅 상대를 찾으면 필요하지 않게 됩니다 비자발적 해지는 고객 행동과 관련이 없으므로 지역 및 카테고리 등의 요소와 반드시 상관관계가 있는 것은 아닙니다 이것은 전 세계 상위 앱의 비자발적 해지율입니다 잠시 뒤 설명하겠지만 App Store는 비자발적 해지를 막고 해지율을 낮추기 위해 개발자를 위해 여러 작업을 수행합니다 다만 이 데이터 벤치마크는 단지 큰 흐름을 보여줄 뿐이며, 대상 앱이 광범위합니다 특성은 구독마다 고유하며 개별 앱의 지표는 다를 수 있습니다 이제 유지율 향상의 효과를 어떻게 정량화할 수 있는지 확인해 보죠 구체적인 예시를 살펴보겠습니다 이 앱은 연초 1만 명의 구독자 그룹으로 시작했습니다 연말까지 그룹의 유지율이 매달 85%라면 1,673명의 구독자로 한 해를 마감하게 됩니다 이는 구독자의 약 83%를 잃는 것과 같습니다 매달 유지율을 90%로 높인다면 3,487명의 구독자로 1년을 마무리할 수 있습니다 그리고 매달 유지율을 95%로 높이면 5,688명의 구독자로 1년을 마무리합니다 즉 유지율이 85%일 때보다 3배 더 많은 구독자를 확보하고 한 해를 마무리할 수 있습니다 이 그래프는 방향성을 제시하기 위한 것이며 구독자 라이프 사이클의 모든 변수를 설명하지는 않는다는 점에 유의하세요 Apple은 App Store에서 비즈니스를 추적하고 성장시키는 데 도움이 되는 다양한 도구를 제공합니다 App Store Connect의 ‘판매 및 추세’에서 구독자 유지율 관련 데이터를 볼 수 있습니다 또한 구독 보고서를 다운로드하여 전체 유료 구독자 정보를 추적하고 구독 이벤트 보고서에서 집계된 구독자 업데이트를 파악할 수 있습니다 앱 분석은 유지율 벤치마크도 제공합니다 이를 통해 특정 앱이 유사한 앱 집단에 비해 사용 유지율 성과가 어떤지 검토하여 고객이 앱 사용에 소비하는 시간을 개괄적으로 살펴볼 수 있습니다 유지율의 중요성에 대해 설명했으니 해지를 최소화하고 유지를 지원하는 데 도움이 되는 App Store 기능을 살펴보겠습니다 App Store에는 구독자 유지 강화에 도움이 되는 다양한 기능이 있습니다 청구 재시도 및 청구 문제 메시지는 모든 구독에서 자동 사용되는 도구로 별도의 구현 작업이 필요하지 않습니다 청구 유예 기간과 구독 특가는 구독자 유지 전략을 강화하는 데 유용한 도구 옵션입니다 개발자를 위해 App Store가 수행하는 기능을 간략히 살펴보겠습니다 결제 재시도 기능은 Apple이 자동으로 제공하며 실패한 갱신을 복구하고 비자발적 해지를 방지합니다 결제 실패가 발생하면 고객은 자동으로 결제 재시도 상태로 전환되고 구독 복구에 60일의 기간이 주어집니다 이 기간 Apple은 화면에 보이는 App Store 푸시 알림 등의 커뮤니케이션을 통해 고객의 결제를 받으려고 시도합니다 60일 이내에 고객의 결제가 복구되면 구독이 재개되는 한편 유료 서비스 기간이 계속 누적되므로 수익금을 85%까지 높일 수 있습니다 월간 구독을 사용하는 고객의 예를 그림과 함께 설명해 보겠습니다 구독 기간의 종료 시점에 고객의 신용카드 정보가 만료되었다고 가정하겠습니다 유효한 결제 방법이 없으면 갱신에 실패하고 최대 60일 동안 자동으로 청구 재시도 상태가 됩니다 이 예에서 고객은 신용카드 정보를 업데이트하는 데 10일이 걸렸습니다 업데이트 후 구독이 복구되고 복구된 날에 청구 날짜가 새로 설정되며 이후 모든 갱신 날짜는 이 날짜를 기준으로 합니다 60일의 청구 재시도 기간에 Apple은 이메일 푸시 알림 App Store 배너를 통해 청구 문제를 알립니다 고객이 이 중 하나를 선택하면 자동으로 기기 설정으로 이동하여 결제 세부 정보를 업데이트할 수 있습니다 Apple은 이 채널들을 효과적으로 사용하여 60일 동안 다양한 시점에 고객에게 청구 문제를 알리는 방법을 개발했습니다 화면과 같이 고객은 이 기간에 여러 시점에 이메일과 푸시 알림을 통해 안내를 받으며 재시도 기간 시작과 함께 App Store 배너가 표시됩니다 결제 문제 메시지는 결제 재시도 상태의 고객에게 앱에서 결제 방법 세부 정보를 간편하게 업데이트하는 방법을 제공하여 비자발적 해지를 방지하고 결제 재시도 기능을 보완합니다 고객이 청구 재시도 상태에 들어간 후 서비스 이용을 시도하면 자동으로 청구 오류 알림과 함께 결제 세부 정보 업데이트 요청이 표시됩니다 이를 통해 사용자는 문제 알림을 받고 앱을 종료하고 설정으로 이동하지 않고도 문제를 간단히 해결할 수 있습니다 구독자 유지에 유용한 Apple 기능을 살펴봤으니 구독자 유지 전략을 강화하기 위해 구현할 수 있는 기능을 알아보겠습니다 청구 유예 기간은 매출 손실 방지와 더불어 비자발적 해지율 감소에 도움이 됩니다 이 기능은 결제 재시도 기능을 바탕으로 결제 문제가 발생한 고객이 App Store에서 문제를 해결하는 동안 구독 이용 권한을 유지할 수 있도록 합니다 고객은 서비스 이용 권한을 즉시 잃지 않으며 Apple이 개발자를 대신해 구독을 복구하는 동안에도 서비스를 계속 이용할 수 있습니다 유예 기간에 다시 구독하는 고객은 서비스 미결제 기간 없이 기존 갱신 날짜를 유지하므로 개발자에게 도움이 됩니다 무엇보다도 결제 유예 기간은 App Store Connect에서 쉽게 구현할 수 있습니다 Hemant가 잠시 후 설명할 것입니다 비즈니스 니즈에 맞춰 청구 유예 기간을 구성할 수도 있습니다 모든 활성 구독 요금제에 유예 기간을 적용하거나 무료 체험 고객을 제외하고 유료 요금제를 사용하는 고객에게만 적용하도록 선택할 수 있습니다 유예 기간을 3일, 16일 또는 28일로 설정할 수도 있습니다 고객이 청구 문제를 해결할 시간을 길게 제공할수록 유예 기간에 구독을 재설정할 가능성이 높아집니다 실제로 성공적인 구독 복구 현황을 시간별로 살펴보면 고객의 40%는 청구 문제를 인지하고 3일 이내에 청구 정보를 수정하는 것으로 나타났습니다 청구 복구율은 청구 문제를 인지한 후 16일 이내에 75% 28일 이내에는 최대 90%까지 급증합니다 다른 그림을 통해 작동 방식을 설명해 보죠 이전 예시와 마찬가지로 고객의 신용카드 정보가 만료되어 갱신에 실패했습니다 청구 유예 기간에 개발자는 청구에 영향 없이 고객의 재참여를 유도할 수 있는 28일의 시간을 확보합니다 이 기간에 고객은 여전히 구독을 이용할 수 있습니다 고객이 신용카드 정보를 업데이트하는 데 14일이 걸립니다 정보가 업데이트되면 구독이 재설정되고, 기존 청구 주기가 유지되므로 유료 서비스 일수를 잃지 않습니다 많은 개발자들이 청구 유예 기간을 활용하여 구독을 복구 및 보존했습니다 작년 App Store는 청구 유예 기간 기능을 활성화한 개발자를 대신하여 비자발적 구독 해지 약 8천만 건을 복구했습니다 마지막으로 구독 특가는 무료 콘텐츠를 홍보하고 앱 할인을 통해 고객 유지율을 강화하고 자발적 해지를 줄이는 효과적인 방법입니다 App Store에는 고객 유지를 강화하는 데 도움이 되는 2개의 프로모션 기능이 있습니다 프로모션 특가는 기존 또는 이전 구독자로 구성된 특정 그룹에 앱에서 특정 기간 구독을 무료 또는 할인가로 제공하는 기능입니다 특가 코드는 앱 내외 모두에서 추가 프로모션을 유연하게 제공하는 기능입니다 고객이 구독을 더 오래 유지하도록 하기 위해 관련성 높은 구독 특가를 생성하려면 주요 시나리오를 고려해야 합니다 참여도가 낮은 고객이 구독을 해지하지 않도록 프로모션을 활용할 수 있고 이미 서비스 자동 갱신을 해제한 고객의 재참여를 유도하기 위해 프로모션을 사용할 수도 있습니다 이러한 고객 일부는 아직 구독 기간이 남았을 수도 있고 일부는 이미 구독을 완전히 해지했을 수도 있습니다 이 3가지 시나리오마다 참여를 유도할 수 있는 전략을 살펴보겠습니다 자동 갱신을 활성화했지만 제품 사용이 저조하여 구독 해지의 리스크가 있는 활성 고객이 있을 수 있습니다 이는 고객의 자동 갱신 취소 및 서비스 해지를 방지할 중대한 기회입니다 이러한 프로모션을 서비스의 가치를 알리거나 고객이 잘 모르는 새로운 기능을 소개할 기회로 활용할 수 있습니다 무료 사용 기간을 제공하거나, 고객이 원하는 용도에 적합한 다른 제품으로 구독 변경을 제안할 수 있습니다 이메일이나 푸시 알림 등으로 이러한 프로모션을 앱 외부에 배포하여 고객에게 노출할 기회를 늘리면 가장 효과적입니다 화면은 가상의 앱인 Ocean Journal의 예시입니다 참여도가 낮은 고객에게 다음 달 서비스를 무료로 즐길 수 있는 프로모션을 이메일로 보냈습니다 오프라인에서 콘텐츠에 접근할 수 있는 새로운 구독 기능을 알리기 위해 메시지를 구성했습니다 고객이 이미 자동 갱신을 해제했지만 여전히 구독을 이용할 수 있는 경우 프로모션을 표시하여 서비스가 종료되지 않도록 할 수 있습니다 많은 고객이 이 시나리오처럼 갱신 날짜 전에 유료 구독을 취소하는 경향이 있습니다 실제로 서비스를 2일 이상 남기고 구독을 취소하는 고객이 90% 이상이며 대부분 남은 기간에 앱을 계속 이용합니다 이 기간에 서비스 할인 프로모션을 제공하여 고객이 구독을 유지할 동기를 부여하고, 구독의 가치를 보여줄 수 있습니다 앱 내에서 이러한 프로모션을 안내하여 일부 구독을 아직 활용하는 고객에게 도달하는 것도 고려해 보세요 Ocean Journal의 다른 예시입니다 홈 화면에서 고객에게 다음 달 서비스 요금 50% 할인 프로모션을 제공하고 있습니다 이 메시지에서는 고객의 월간 서핑 목표의 진행 상황을 강조하고 구독이 목표 달성에 미치는 영향을 명확하게 전달했습니다 고객이 구독을 완전히 해지하여 서비스에 접근하지 못하는 경우 구독 특가로 고객을 재확보할 수 있습니다 그러나 앱에 할인을 제공하려면 고객 해지 후 최적의 시점을 찾는 게 중요합니다 구독이 종료되자마자 할인을 제공하면 사용자가 할인을 받기 위해 요금제를 해지하는 등 의도치 않은 행동으로 이어질 수 있습니다 이러한 프로모션을 배포하기 시작할 때는 해지 기간이 길어지는 만큼 더 큰 할인을 제공하는 것을 고려하세요 이러한 고객은 앱 사용을 중단했을 가능성이 크므로 이메일과 푸시 알림을 통해 이러한 프로모션을 안내하는 것이 가장 효과적입니다 Ocean Journal이 기존 고객에게 프로모션을 표시한 모습은 화면과 같습니다 향후 3개월간 서비스를 50% 할인된 가격으로 제공하는 프로모션을 푸시 알림으로 표시했습니다 고객이 이 알림을 무시하면 나중에 다른 프로모션을 보낼 수 있습니다 하지만 알림을 너무 많이 보내서 고객에게 불편을 주는 일은 없어야 합니다 결제 재시도 결제 문제 메시지 결제 유예 기간 구독 특가는 App Store가 고객 유지를 강화하기 위해 제공하는 유용한 기능입니다 이제 제 동료 Hemant가 이러한 기능을 성공적으로 구현하는 방법을 설명할 것입니다 Hemant: 고맙습니다, Bryan 이 섹션에서는 앱의 구독자 해지를 막고 유지율을 강화하기 위해 App Store 기능을 구현할 때 고려할 모범 사례를 설명합니다 App Store는 구독 갱신 전에 구독의 자동 갱신을 방해 또는 지연할 수 있는 청구 문제가 있는지 확인합니다 그 일환으로 구독 갱신을 처리하기 위해 등록된 지불 방법이 유효하며 활성 상태인지 확인합니다 지불 방법이 유효하지 않은 경우 App Store는 고객이 구독 갱신 전에 방법을 업데이트하도록 사전에 알림을 보냅니다 App Store는 사기 방지를 위해 고객 프로필과 등록된 결제 방법에 사기 및 리스크 검사를 수행합니다 또한 해당하는 경우 고객에게 예정된 구독 갱신에 대한 알림도 보냅니다 이러한 검사 외에도 App Store에는 해지 방지 및 구독자 유지를 위한 기능이 있으며 이는 앞서 Bryan이 다루었습니다 먼저 청구 재시도 청구 문제 메시지와 같은 기능을 시작으로 이러한 기능 구현 시 고려해야 할 모범 사례를 살펴보겠습니다 이러한 기능은 플랫폼에서 제공하며, 비자발적 해지를 막기 위해 기본적으로 활성화되어 있습니다 결제 문제로 인해 구독이 갱신되지 않으면 자동으로 60일 동안 청구 재시도 기간에 들어갑니다 이 기간에 Apple은 구독 복구를 시도합니다 그리고 시나리오에 따라서는 구독 상태가 변경될 수 있습니다 구독이 청구 재시도 기간에 있는 경우 고려할 시나리오를 살펴보겠습니다 고객이 결제 문제로 인해 구독을 갱신하지 못하고 청구 재시도 기간에 있습니다 청구 재시도에서 구독을 식별하고 서비스 제공을 중지하려면 StoreKit 갱신 상태 속성 ‘inBillingRetryPeriod’를 사용하면 됩니다 이를 통해 서버 없이도 구독 상태를 식별하고 서비스 접근 권한을 결정할 수 있습니다 그러나 업데이트된 구독 상태를 실시간으로 받으려면 App Store 서버 알림을 활성화하면 됩니다 이게 활성화되면 고객이 청구 재시도에 들어갈 경우 알림 유형 ‘DID_FAIL_TO_RENEW’를 받게 됩니다 청구 재시도 기간의 구독은 60일 동안 언제든지 복구할 수 있습니다 그리고 복구되면 고객에게 서비스를 제공하기 시작해야 합니다 따라서 이 시나리오에서는 고객이 등록된 결제 방법을 업데이트하여 구독을 갱신했다고 가정하겠습니다 구독이 복구되면 갱신 상태가 ‘subscribed’로 업데이트됩니다 그리고 갱신 성공을 나타내는 유형 ‘DID_RENEW’ 하위 유형 ‘BILLING_RECOVERY’인 알림을 받게 됩니다 청구 재시도 기간에 구독이 복구되었기 때문에 새로운 구독 만료일이 적용됩니다 App Store의 청구 재시도 기간이 끝나서 구독을 복구할 수 없는 시나리오의 경우 구독이 만료되고 갱신 상태가 ‘expired’로 업데이트됩니다 그리고 유형 ‘EXPIRED’ 하위 유형 ‘BILLING_RETRY’의 App Store 서버 알림을 받게 됩니다 또한 청구 재시도 기간의 구독에 고려해야 할 모범 사례가 몇 가지 있습니다 이미 청구 재시도 상태인 고객의 경우 App Store가 이미 구독을 복구하는 중이므로 상품을 판매하지 않는 게 좋습니다 이는 플랫폼 간 서비스 제공 시에도 중요합니다 앞서 Bryan이 언급했듯이 고객이 60일 이내에 복구되면 유료 서비스 기간이 계속 누적되므로 수익금이 85%까지 높아집니다 고객은 구독을 취소하면 청구 재시도를 거부할 수 있습니다 이 경우 App Store는 청구 재시도를 중단합니다 판매되는 자동 갱신 항목이 삭제되어도 구독이 청구 재시도에 들어갈 수 있습니다 60일 이내에 자동 갱신 항목의 판매가 재개되지 않으면 이 구독은 복구되지 않습니다 이 상태의 구독을 식별하기 위해 StoreKit 속성 ‘expirationReason’ 서버 속성 ‘expirationIntent’를 사용할 수 있습니다 청구 재시도 상태의 구독에 App Store 샌드박스를 사용하여 앱 및 서버 구현을 검증할 수 있습니다 App Store는 구독을 더 빠르게 복구하기 위해 고객에게 청구 문제 메시지를 전송하여 문제를 해결하도록 도와줍니다 고객의 앱 환경을 방해하지 않기 위해 청구 문제 메시지의 전송을 연기하도록 선택할 수 있습니다 StoreKit Message API에서 .reason 속성 .billingIssue 값을 사용하세요 자세한 내용은 WWDC23의 ‘StoreKit 2의 새로운 기능 및 Xcode에서 StoreKit 테스트하기’ ‘앱 내 구입 테스트 살펴보기’에서 확인하세요 이제 개발자가 비자발적 자발적 해지의 결과를 처리하기 위해 활용할 수 있는 기능을 알아보겠습니다 먼저 청구 유예 기간입니다 앱에 유예 기간 구성을 사용하려면 App Store Connect의 앱 > 구독 섹션으로 이동합니다 그러면 앱의 청구 유예 기간을 구성할 수 있는 대화 상자가 열립니다 사용 가능한 유예 기간 중에서 선택합니다 청구 유예 기간의 대상 자격 요건과 구현 환경도 선택할 수 있습니다 우선 샌드박스만 활성화하거나, 샌드박스와 프로덕션 모두 활성화할 수 있습니다 구성을 선택하고 나면 App Store Connect에 내용이 표시됩니다 청구 유예 기간이 활성화되면 구독 갱신에 실패했을 때부터 적용됩니다 화면은 이전에 설명한 모든 청구 재시도 시나리오입니다 청구 유예 기간을 활성화할 때는 구독 라이프 사이클에서 추가 시나리오를 고려해야 합니다 이제 청구 유예 기간을 활성화한 후의 고객 시나리오를 자세히 보겠습니다 유예 기간이 활성화되어 Apple이 구독 복구를 시도하는 동안, 고객은 앱의 유료 콘텐츠에 전체 접근 권한을 유지하게 됩니다 청구 유예 기간에 들어간 구독을 식별하고 서비스를 계속 제공하기 위해 갱신 상태가 ‘inGracePeriod’로 업데이트되며 유형 ‘DID_FAIL_TO_RENEW’ 하위 유형 ‘GRACE_PERIOD’인 알림을 받게 됩니다 고객이 청구 유예 기간에 유료 서비스를 복구하면 유료 서비스 일수 계산이 중단되지 않으며 구독 만료일은 동일하게 유지됩니다 고객이 구독을 복구하면 갱신 상태가 ‘subscribed’로 업데이트되며 유형 ‘DID_RENEW’ 하위 유형 ‘BILLING_RECOVERY’인 알림을 받습니다 청구 유예 기간에 고객의 구독이 복구되지 않으면, 이후 서비스를 중단할 수 있고 고객은 청구 재시도 상태가 됩니다 갱신 상태는 ‘inBillingRetryPeriod’로 업데이트되고 ‘GRACE_PERIOD_EXPIRED’ 알림을 받게 됩니다 청구 유예 기간을 활성화한 경우 화면의 사용 사례들도 App Store 샌드박스에서 앱과 서버를 모두 검증할 수 있습니다 마지막으로 구독 특가입니다 화면에 보이는 2개의 시나리오를 통해 앱과 서버에 구독 특가를 구현할 때 고려해야 할 사항을 다루겠습니다 첫 번째 시나리오에서는 자동 갱신을 해제했지만 서비스 기간이 아직 남아 앱을 사용할 수 있는 고객의 재참여를 유도합니다 여기서는 프로모션 특가를 도구로 사용하여 기존 구독자 그룹에 구독 특가를 생성하겠습니다 이 그룹에서 구독을 식별하려면 StoreKit의 ‘RenewalStateProperty = subscribed’ 속성 갱신 정보 속성 ‘willAutoRenew = false’를 사용합니다 서버에서는 Subscription Status API 속성 ‘status = 1’ ‘autoRenewStatus = 0’을 사용합니다 App Store 서버 알림을 활성화한 경우 고객이 구독 갱신을 취소하면 유형 ‘DID_CHANGE_RENEWAL_STATUS’ 하위 유형 ‘AUTO_RENEW_DISABLED’의 알림을 실시간으로 수신하게 됩니다 프로모션 특가를 구현할 때 고려할 모범 사례 중 하나는 특가 세부 정보를 하드코딩하거나 서버에서 가져오는 대신 StoreKit의 ‘promotionalOffers’ 속성을 사용하여 고객에게 제공하는 것입니다 프로모션 특가의 경우 특가 제공 직전 등 구입 시점에 서명을 보내는 것이 중요합니다 이를 통해 최근 타임스탬프가 있는지, 최신 특가 구성을 사용하고 있는지 확인하게 됩니다 Apple은 프로세스 간소화와 서명 생성을 위해 App Store Server 라이브러리를 도입하여 서명을 서버에서 안전하게 생성하는 프레임워크를 제공합니다 이는 App Store Server API 및 알림을 손쉽게 구현하는 데도 도움이 됩니다 프로모션 특가 사용을 식별하려면 JWSTransaction에서 ‘offerType’ 값을 2로 설정하고 ‘offerIdentifier’를 포함시킵니다 offerIdentifier에는 프로모션 특가 설정 시 App Store Connect에서 구성한 값이 포함됩니다 고객이 특가를 사용하면 해당되는 모든 하위 유형과 함께 ‘OFFER_REDEEMED’ 알림을 실시간으로 받게 됩니다 프로모션 특가 모범 사례의 자세한 내용은 WWDC 세션 ‘App Store Server 라이브러리 살펴보기’ ‘구독 특가 모범 사례’에서 시청하세요 이제 고객이 구독을 해지하여 앱을 사용하지 않고 있는 시나리오를 살펴보겠습니다 이 그룹에서 구독자를 식별하려면 StoreKit 속성을 ‘RenewalState = expired’로 설정하고, 갱신 정보 속성을 ‘willAutoRenew = false’로 설정합니다 서버에서는 Subscription Status API 속성을 ‘status = 2’ ‘autoRenewStatus = 0’으로 설정합니다 구독이 만료되면 유형 ‘EXPIRED’ 하위 유형 ‘VOLUNTARY’인 App Store 서버 알림을 받게 됩니다 이 시나리오에서는 2가지 이유로 고객 재확보에 특가 코드를 사용합니다 먼저 앱 내, 외부에서 고객에게 특가를 판매하고 제공하는 데 도움이 됩니다 또한 푸시 알림이나 이메일에 특가 코드 딥 링크를 임베드해 특가 사용 플로우를 시작하고 고객을 재확보할 수 있습니다 특가 코드 구현과 모범 사례에 관한 자세한 내용은 ‘구독 특가 코드’ ‘성공을 위한 구독 최적화: 구독자 확보’ Tech Talk에서 참고하세요 App Store는 개발자가 고객에게 정확한 권한을 부여하고 서비스를 제공하도록 기기와 서버에 유용한 모든 거래 정보를 제공합니다 나아가 개발자가 App Store 제품 및 특가 구성을 파악하는 데 도움이 되도록 ‘price’ ‘currency’ ‘offerDiscountType’ 등 새로운 속성을 도입했습니다 이 속성을 활용하면 프로모션 사용 세부 정보를 파악할 수 있습니다 또한 ‘recentSubscriptionStartDate’ 속성을 활용하여 고객의 전체 구독 기간을 계산할 수 있습니다 이를 통해 고객 충성도를 파악하고 구독 특가 제공 여부를 정할 수 있습니다 예를 들어 보겠습니다 고객이 1월 25일에 월간 구독을 구입하고 매달 계속 갱신했습니다 그러나 12월 5일에 구독 갱신을 비활성화하기로 하여 12월 25일에 구독이 해지될 것입니다 이 기간을 안전 기간으로 간주합니다 이 기간에 고객의 구독 기간에 따라 고객에게 구독 특가를 제시할지 사전에 결정할 수 있습니다 고객이 특가를 수락하면 구독이 12월 25일에 갱신됩니다 요약하자면 Apple은 청구 재시도 및 청구 문제 메시지와 같은 기능을 제공하며 청구 유예 기간 구독 특가 기능을 도입하면 구독자 해지를 방어하고 구독자를 유지하는 데 도움이 됩니다 구독을 시작하는 방법 또는 구독 도구에 관한 자세한 내용은 developer.apple.com의 자동 갱신 구독 문서에서 확인하시기 바랍니다 이 문서에서 유용한 리소스와 관련 링크를 모두 확인할 수 있습니다
-
-
찾고 계신 콘텐츠가 있나요? 위에 주제를 입력하고 원하는 내용을 바로 검색해 보세요.
쿼리를 제출하는 중에 오류가 발생했습니다. 인터넷 연결을 확인하고 다시 시도해 주세요.