비갱신 구독은 만료도, 재구매도, 모든 환불도 당신에게 떠넘긴다. 그게 실제로 얼마나 큰 비용인지 살펴본다
App Store의 비갱신 구독과, 그 사촌인 Google Play의 선불 요금제는 한 번만 청구하고 다시는 갱신하지 않는다. 그래서 만료 카운트다운, 재구매, 환불이 모두 당신 몫이 된다. 각 스토어에서 환불이 어떻게 작동하는지, 미사용 선불 규칙, 그리고 기간 고정 모델이 실제로 얼마의 비용인지 설명한다.

핵심 요약
- 비갱신 구독은 일회성 청구로, 고정된 기간의 접근 권한을 부여한 뒤 멈춘다. Apple은 그것을 갱신하지 않고 만료도 추적하지 않으므로, 카운트다운, 재구매 유도, 그리고 판매 이후의 모든 것은 당신의 서버가 맡는다.
- 같은 발상에 대한 Google Play의 버전은 선불 요금제이며, 이것도 자동 갱신되지 않는다. 접근을 유지하려면 고객이 충전을 구매하는데, 이는 다시 전액을 청구하고 충전 기간만큼 권한을 연장한다.
- Google Play는 고객이 아직 사용하지 않은 선불 요금제에 대해 환불을 요청할 수 있게 한다. 사용된 선불 요금제는 대체로 환불할 수 없지만, 손대지 않은 것은 환불할 수 있으므로, 충전하고 앱을 한 번도 열지 않은 구매자는 돈을 되찾을 수 있다.
- 선불 구매에서 Google의 승인 기한을 놓치면 Google은 그 충전을 취소하고, 남은 구독을 취소하며, 고객에게 환불한다. 1주일 이상의 요금제는 3일 이내에, 그보다 짧은 요금제는 기간의 절반 이내에 승인해야 한다.
- Google Play에서는 단순 환불과 취소가 같지 않다. 환불은 기간이 만료될 때까지 고객의 접근을 유지할 수 있는 반면, 취소는 지불 거절을 포함해 접근을 즉시 끊는다.
- 기간 고정 모델은 실패할 갱신이 없기 때문에 비자발적 이탈을 없애지만, 리텐션을 당신에게 옮긴다. 모든 연장은 새로 지불하려는 결정이므로, 이탈한 고객은 재시도할 수 있는 실패한 청구가 아니라 조용히 잃은 매출이다.
- 두 스토어 모두에서 당신은 기간 전체의 가치를 첫날에 전달하므로, 거의 사용되지 않은 기간 고정에 대한 환불조차 당신이 이미 쓰기 시작한 돈을 도로 가져간다.
당신이 읽는 대부분의 구독 조언은 스토어가 갱신을 해준다고 가정한다. 비갱신 구독은 일부러 그 가정을 깬다. 비갱신 구독은 고객에게 한 번만 청구하고, 정해진 기간의 접근을 부여한 뒤, 그저 끝난다. Apple은 다시 청구하지 않고, 갱신을 보내지 않으며, 접근이 언제 소진되는지 기록조차 하지 않는다. 그 마지막 부분이 함정이다. 이 모델을 선택하는 순간, 만료 카운트다운, 재구매 유도, 그리고 환불 이후의 뒷정리가 모두 Apple의 서버에서 당신의 서버로 옮겨온다.
Google Play는 다른 이름으로 같은 형태를 지닌다. 선불 요금제다. 그리고 그것은, 산 것을 한 번도 쓰지 않은 고객에게 돈을 돌려줄 수 있는 환불상의 묘한 특징을 함께 가져온다. 여기서는 비갱신 구독과 선불 요금제가 각 스토어에서 실제로 어떻게 작동하는지, 환불이 그것에 무엇을 하는지, 그리고 첫날에 출하하는 가치를 계산하고 나면 기간 고정 모델이 당신에게 얼마의 비용인지 설명한다.
왜 비갱신 구독은 일회성 청구인데도 구독처럼 행동하는가
비갱신 구독은 인앱 구매 유형 가운데 묘한 자리를 차지한다. 그것은 소모형이 아니다. 어떤 수량이 아니라 시간을 부여하기 때문이다. 그것은 자동 갱신 구독도 아니다. 아무것도 갱신되지 않기 때문이다. Apple 자신의 설명은 분명하다. 비갱신 구독은 제한된 기간 동안 고객에게 콘텐츠나 서비스에 대한 접근을 주며, 자동으로 갱신되지 않는다. 시즌 패스, 한 달의 아카이브, 90일 동안 잠금 해제되는 강좌, 이런 것들이 자연스럽게 들어맞는다.
그것을 이름뿐인 구독으로 만드는 것은 누가 시간을 세느냐다. 자동 갱신 구독에서는 Apple이 만료를 추적하고, 카드에 청구하며, App Store Server Notifications를 통해 갱신이 성공했는지 실패했는지 당신에게 알린다. 비갱신 구독에서는 그중 아무것도 일어나지 않는다. Apple은 판매를 당신에게 넘기고 물러선다. 당신의 서버는 접근 기간이 언제 끝나는지 기록하고, 그 시점에 접근을 끊으며, 고객에게 다시 구매하도록 초대할지 그리고 어떻게 초대할지를 결정해야 한다. Apple이 카운트다운을 지켜보지 않으므로, Apple 쪽에는 고객이 같은 비갱신 구독을 두 번 사는 것을 막는 것이 아무것도 없고, 중복을 막는 것도 당신의 일이다.
각 스토어는 기간 고정 구독을 어떻게 운영하는가
Apple은 그것을 비갱신 구독이라 부른다
App Store에서는 다른 인앱 구매와 마찬가지로 App Store Connect에서 비갱신 구독을 설정하고, 기간을 주고, 판매한다. 청구는 단일 결제다. 기간이 끝나면 고객은 다시 사지 않는 한 아무것도 남지 않으며, 다시 사는 것은 Apple이 당신을 위해 예정하는 갱신이 아니라 완전히 새로운 구매다. 청구 재시도도, 유예 기간도, 계정 보류도 없다. 재시도할 반복 청구가 없기 때문이다. 그런 안전망은 자동 갱신 구독에만 존재한다.
Google Play는 그것을 선불 요금제라 부른다
Google Play의 선불 요금제는 Play Billing에 내장된 같은 기간 고정 발상이다. 선불 요금제는 스스로 갱신하지 않는다. 접근을 이어가려면 고객이 충전을 구매하며, Google은 그것이 어떻게 작동하는지 명확히 밝힌다. 충전은 즉시 전액을 청구하고, 충전 기간만큼 권한을 연장한다. 충전은 새로운 구매 토큰을 얻고, 이전 것은 linkedPurchaseToken 필드에 이어져서 당신이 이력을 꿰맞출 수 있다. 사용자는 자동 갱신을 해지하듯이 선불 요금제를 해지할 수 없다. 그것은 지불된 시간이 다하면 그냥 만료된다.
Google은 또한 선불 구매를 승인하는 데 엄격한 기한을 두었고, 그것을 놓친 벌은 환불이다. 1주일 이상의 선불 요금제는 3일 이내에 승인해야 한다. 1주일보다 짧은 선불 요금제는 기간의 절반 이내에 승인해야 하므로, 3일짜리 요금제는 당신에게 하루 반을 준다. 그 창을 놓치면 Google은 그 충전을 취소하고, 남은 구독을 취소하고 캔슬하며, 고객에게 환불한다. 그것은 고객이 마음을 바꾼 것이 아니다. 판매 전체를 풀어버리는 연동상의 실수다.
| 측면 | Apple 비갱신 구독 | Google Play 선불 요금제 |
|---|---|---|
| 자동 갱신 여부 | 안 함 | 안 함 |
| 고객은 어떻게 연장하나 | 새 구매로 다시 산다 | 전액으로 충전을 산다 |
| 만료를 추적하는 것은 누구인가 | 당신의 서버 | Google, API를 통해 읽음 |
| 청구 재시도나 유예 기간 | 없음 | 없음 |
| 승인 기한 | 표준 거래 완료 단계 | 3일, 또는 1주일 미만이면 요금제 기간의 절반 |
| 고객이 기간 중 해지 가능한가 | 해당 없음, 반복이 없음 | 안 됨, 스스로 만료됨 |
| 구매 토큰 유효 기간 | 당신이 관리 | 만료 후 60일까지 유효 |
환불은 기간 고정 구독에 무엇을 하는가
App Store에서는 환불이 Apple을 거친다
비갱신 구독의 돈을 돌려받고 싶은 고객은 당신에게 먼저 오지 않는다. reportaproblem.apple.com에서 신청하고, 이유를 고르면, Apple이 그 요청을 검토하고 결정한다. 당신은 그것을 승인하지 않으며, 비갱신 구독에는 소모형 환불처럼 결정 전에 당신에게 사용 증거를 요구하는 스토어 알림도 없다. Apple이 승인하면, 당신은 그것을 당신 쪽의 환불로, 그리고 보고서에서 알게 된다. 접근 기간이 기록되는 유일한 곳이 당신 자신의 서버이므로, 환불된 비갱신 구독이 접근에 무엇을 의미하는지도 당신이 결정하고 직접 집행해야 한다.
Google Play에서는 환불과 취소가 다른 작업이다
Google Play는 대부분의 사람들이 환불이라 부르는 것을 두 가지 다른 결과로 나누며, 그 차이가 고객이 당신의 앱을 계속 쓸 수 있는지를 결정한다. 곧바로 하는 환불은 지불된 기간이 만료될 때까지 고객의 접근을 그대로 남길 수 있다. 취소는 당신이 API를 통해 일으킬 수 있는 것이고 지불 거절이 하는 것이기도 한데, 접근을 즉시 끝내며, Google은 그것이 도착하는 순간 권한을 끊으라고 당신에게 지시한다. 그래서 환불된 선불 고객은 당신이 준 콘텐츠를 아직 쓰고 있을 수도, 그 자리에서 잠겨 나갔을 수도 있으며, 어느 경로를 택했는지에 달렸다.
예상할 수 없는, 미사용 선불 환불
Google은 놓치기 쉬운 예외를 하나 더한다. 사용된 선불 요금제는 대체로 환불할 수 없고 과거의 구독 청구도 보통은 유지되지만, 고객은 아직 사용하지 않은 선불 요금제에 대해 환불을 요청할 수 있다. 그 밖에는 Google Play의 셀프서비스 환불 경로는 짧고 좁다. 고객은 48시간 이내에 구매를 반품할 수 있고, 앱당 한 번뿐이다. 그것을 지나면 요청은 당신에게 넘어온다. 하지만 미사용 선불 규칙은 그 창 밖에 있으므로, 충전하고 앱을 한 번도 열지 않는 구매자에게는 지불 전액을 되찾는 깔끔한 길이 있다.
기간 고정 모델이 실제로 당신에게 얼마의 비용인가
기간 고정 구독의 돈 계산은 자동 갱신의 것과 다르며, 게다가 값을 너무 낮게 매기기 쉬운 방식으로 다르다.
당신은 첫날에 기간 전체를 출하한다
누군가 한 달의 접근, 시즌 패스, 또는 90일의 잠금 해제를 살 때, 당신은 첫 탭부터 그 기간 전체를 빚진다. 연산, API 호출, 저장, 그리고 앱이 짊어지는 사용자당 비용은, 당신이 처음에 한 번만 지불받은 창에 걸쳐 소비된다. 그 구매에 대한 환불은 당신이 이미 제공한 날들을 돌려주지 않는다. 고객이 30일 패스 중 이틀을 쓰고 Apple이 환불하거나 Google이 취소하면, 당신은 값을 잃고 그 이틀의 비용도 잃으며, 당신에게 한 조각을 돌려주는 일할 계산은 없다. 기간 고정 매출은 기간의 길이 동안 완전히 되돌릴 수 있는 상태로 남고, 그 뒤의 가치는 이미 당신의 예산에서 떠나고 있다.
당신 스스로 일으키는 환불
선불 승인 규칙은 코드 경로 하나를 환불로 바꾼다. 당신의 서버가 선불 구매나 충전을 제때 승인하지 않으면, Google은 단지 경고만 하지 않는다. 충전을 취소하고, 구독의 나머지를 캔슬하며, 고객에게 환불하는데, 이 모두를 한 번에 한다. 그것은 당신이 성사시켰다가 놓친 콜백 때문에 잃은 판매이며, 고침은 전적으로 당신 쪽에 있다. 서버 쪽에서, 빠르게 승인하고, 사용자가 앱을 다시 열어 그것을 촉발하는 것에 절대 기대지 마라. 창이 하루 반이 될 수 있는 짧은 선불 요금제에서는, 느린 승인 파이프라인이 상존하는 환불 위험이다.

비자발적 이탈은 없지만, 리텐션은 이제 수동이다
붙들 만한 진짜 이점이 있다. 기간 고정 구독은 실패할 갱신 청구가 없기 때문에 비자발적으로 이탈할 수 없다. 거절된 카드, 청구 재시도, 그리고 자동 갱신 구독의 일부를 조용히 끝내는 계정 보류는 그저 적용되지 않는다. 카드가 만료됐다고 아무도 잠겨 나가지 않는다. 그 대가는 리텐션이 더 이상 자동이 아니라는 것이다. 모든 연장은 새로 지불하려는 결정이므로, 이탈하는 고객은 당신이 회복할 수 있는 실패한 청구로 나타나지 않는다. 그들은 아무것도 아닌 것으로, 갱신이 있었을 자리에 무음의 공백으로 나타난다. 그들을 되찾는 것은 당신이 직접 만들고 직접 시점을 맞춰야 하는 유도이며, 당신이 쫓지 않는 매출은 그저 도착하지 않는 매출이다.
| 사건 | 접근에 무슨 일이 일어나나 | 당신의 돈에 무슨 일이 일어나나 |
|---|---|---|
| Apple이 비갱신 구독을 환불한다 | 당신이 자신의 서버에서 결정하고 집행한다 | 전액이 되돌려지고, 이미 제공한 날들은 돌아오지 않는다 |
| 취소 없는 Google 환불 | 기간이 만료될 때까지 접근이 이어질 수 있다 | 값은 환불되고, 권한은 아직 사용 중일 수 있다 |
| Google 취소 또는 지불 거절 | 접근이 즉시 끊긴다 | 값이 되돌려지고, 지불 거절은 은행 수수료를 더한다 |
| 선불 충전이 제때 승인되지 않음 | 남은 구독이 취소되고 캔슬된다 | 충전과 남은 잔액이 환불된다 |
| 미사용 선불 요금제, 고객이 환불을 요청 | 아무것도 사용되지 않았다 | 지불 전액이 반환된다 |
| 기간 고정이 그냥 만료된다 | 접근이 예정대로 끝난다 | 매출은 마침내 당신이 지킬 몫이다 |
이 사건들 하나하나, 환불, 취소, 지불 거절, 만료는, RefundHalt가 이미 지켜보고 있는 바로 그 App Store Server Notifications와 Real-time Developer Notifications에 도착한다. 비갱신 구독과 선불 요금제는 환불을 숨기지 않고, 다른 어떤 구매와도 마찬가지로 그것들을 보고한다. 그 피드를 읽는 것이, 스토어가 카운트다운 추적을 멈추는 모델을, 어떤 기간 고정 판매가 매출이 되었고 어떤 것이 되돌아왔는지 당신이 늘 아는 모델로 바꾸는 방법이다.
짧은 버전
App Store의 비갱신 구독과 Google Play의 선불 요금제는, 결코 갱신하지 않는 고정된 접근 기간에 대한 단일 청구다. Apple은 만료를 추적하지 않으므로 당신의 서버가 추적한다. Google은 미사용 선불 요금제를 고객이 환불하게 하고, 승인 기한을 놓치면 전부를 환불한다. Google의 환불은 접근을 계속 돌아가게 남길 수도, 취소나 지불 거절로 즉시 끊을 수도 있다. 맞서 싸울 비자발적 이탈은 없지만, 자동 갱신도 없으므로, 리텐션은 당신이 맡는 유도다. 당신은 기간 전체를 처음에 전달하고, 환불은 당신이 이미 쓰기 시작한 돈을 도로 가져가므로, 눈에 띄는 판매가 아니라 첫날의 비용으로 이 모델의 값을 매겨라.
자주 묻는 질문
- App Store의 비갱신 구독이란 무엇인가요?
- 비갱신 구독은 고정된 기간 동안 콘텐츠나 서비스에 대한 접근을 부여한 뒤 갱신 없이 끝나는 인앱 구매입니다. Apple은 고객에게 한 번만 청구하고 만료를 추적하지 않으므로, 당신의 앱이 접근 기간이 언제 끝나는지 기록하고, 접근을 끊고, 되찾고 싶다면 고객에게 다시 구매하도록 유도해야 합니다.
- 비갱신 구독과 자동 갱신 구독의 차이는 무엇인가요?
- 자동 갱신 구독은 스스로 갱신하고, Apple이 청구, 재시도, 만료 추적을 맡습니다. 비갱신 구독은 한 번 청구하고 멈추며, 판매 이후 수명 주기의 모든 부분, 만료, 재구매 유도, 그리고 환불 이후 접근을 집행하는 일은 개발자의 몫입니다. Google Play의 선불 요금제가 비갱신 구독에 가장 가까운 대응물입니다.
- Google Play 선불 요금제를 환불할 수 있나요?
- 특정한 경우에는 가능합니다. 사용된 선불 요금제는 대체로 환불할 수 없고 과거의 구독 청구도 보통은 유지되지만, 고객은 아직 사용하지 않은 선불 요금제에 대해 환불을 요청할 수 있습니다. Google의 셀프서비스 환불도 48시간 이내 그리고 앱당 한 번만 대부분의 구매를 다룹니다. 그리고 선불 구매의 승인 기한을 놓치면 Google이 자동으로 환불합니다.
- 환불은 고객의 기간 고정 구독에 대한 접근을 끝내나요?
- 항상 그렇지는 않습니다. Google Play에서는 단순 환불이 지불된 기간이 만료될 때까지 접근을 남길 수 있는 반면, 취소나 지불 거절은 접근을 즉시 끝내고, Google은 곧바로 권한을 제거하라고 지시합니다. App Store에서는 접근 기간이 존재하는 유일한 곳이 당신의 서버이므로, 환불된 비갱신 구독이 접근에 무엇을 의미하는지 당신이 결정하고 집행합니다.
- 비갱신 구독에 비자발적 이탈이 있나요?
- 없습니다. 비자발적 이탈은 실패하는 갱신 청구에서 나오는데, 비갱신 구독과 선불 요금제는 결코 자동 갱신하지 않으므로, 실패할 청구도, 청구 재시도나 계정 보류도 없습니다. 대가는 리텐션이 수동이라는 것입니다. 모든 연장은 새 구매이므로, 돌아오지 않는 고객은 당신이 회복할 수 있는 실패한 결제가 아니라 조용히 잃은 매출입니다.
출처 및 추가 자료
- Apple Developer Documentation: StoreKit Product.ProductType.nonRenewable (the non-renewing subscription product type, time-limited access that does not renew automatically)
- Apple App Store Connect Help: Create non-renewing subscriptions (non-renewing subscriptions give access to content or a service for a limited period and the developer manages renewal and expiry)
- Apple Support: Request a refund for apps or content that you bought from Apple (the reportaproblem.apple.com path Apple reviews and decides)
- Google Play Billing: About subscriptions (prepaid plans do not auto-renew, top-ups charge full price and extend entitlement, and the 3-day and half-duration acknowledgment deadlines that trigger a revoke and refund when missed)
- Google Play Billing: Subscription lifecycle (the purchase token is valid until 60 days after expiration, and a revoke or chargeback means removing the entitlement immediately)
- Google Play Help: Cancel, pause, or change a subscription on Google Play (a customer can request a refund on an unused prepaid plan, and access continues for the time already paid for)
- Google Play Help: Apps, games, and in-app purchases refund policies (the 48-hour self-service refund window and the once-per-app limit)
RefundHalt
App Store와 Google Play 환불 자동 처리
계속 읽기
앱 사전 주문은 출시 당일 전까지는 판매가 아니며, 그중 상당수는 결제가 이루어지기 전에 떨어져 나간다
App Store와 Google Play에서 앱 사전 주문은 출시 전까지 아무것도 청구하지 않으며, 구매자는 그때까지 무료로 취소할 수 있습니다. 출시 시점에 카드가 거절되면 더 많은 주문이 취소됩니다. 앱 사전 주문과 사전 등록이 실제로 어떻게 작동하는지, 그리고 이 격차가 당신의 출시에 얼마의 대가를 치르게 하는지 설명합니다.
Google Play는 모든 구매자에게 당신이 닫을 수 없는 환불 창을 주고, 그 대가가 무엇인지 여기서 설명한다
Google Play에서 구매자는 48시간의 창 안에서 환불을 요청할 수 있고, Google은 당신에게 묻지 않고 이를 승인할 수 있다. 48시간이 지나면 요청은 당신의 받은편지함으로 온다. 여기서는 Google Play 환불 창이 48시간의 양쪽에서 각각 어떻게 작동하는지, 그리고 환불 한 건이 당신의 지급액에서 무엇을 빼가는지 설명한다.