플레이스토어/ 앱스토어 구독 갱신

Adam·2024년 7월 17일
0

개발일지

목록 보기
3/15

Google Play Store

갱신 시점

구독 갱신은 billing cycle에 따라 자동적으로 청구가 됩니다

1일에 구독을 시작했다면 다음달 1일에 갱신을 시도

결제 재시도

설정한 Grace Period 동안 여러차래 결제 재시도를 합니다

  • Grace Period
    • 결제가 실패해도 구독 기능을 유지하는 기간
    • 플레이 콘솔을 통해서 설정 가능
    • 0일로 설정을 할 수 있지만 구글에서 최소 하루 동안 결제가 정상적으로 됐는지 확인 하는 기간을 갖기 때문에 사실상 최소 Grace Period은 1일
    • Grace Period가 지난 후에도 결제에 문제가 있을 시 구독 상태를 잃게 됩니다 → Account Hold 상태로 전환
  • Account Hold
    • Grace Period 종료 시 해당 상태로 전환
    • 구독 복구는 받을 수 있는 상태
    • 최대 30일 까지 설정 가능
    • 장기 구독 혜택 같은 것을 줄때 고려하라고 만든 것인것 같음

알림 여부

Grace Period 돌입 시: SUBSCRIPTION_IN_GRACE_PERIOD

Account Hold 돌입 시: SUBSCRIPTION_ON_HOLD

Account Hold 만료 시: SUBSCRIPTION_CANCELED

시나리오

  1. 1월 1일 구독 → 2월 1일 재구독 신청했지만 실패 → grace period 안에 결제 수단 수정 → 결제 성공 → 3월 1일 재구독
  2. 1월 1일 구독 → 2월 1일 재구독 신청했지만 실패 → grace period 안에 결제 수단 수정 X → 결제 실패 → Account Hold 기간에 수정해 2월 20일 결제 → 3월 20일 재구독

참고

https://developer.android.com/google/play/billing/lifecycle/subscriptions

https://developer.android.com/google/play/billing/subscriptions

애플

갱신 시점

구독 갱신은 billing cycle에 따라 자동적으로 청구가 됩니다

구독 갱신일 10일 전에 구독에 문제가 없는지 확인

결재 재시도

구독 만료 24시간 전 부터 갱신을 여러 번 시도, 여러번 시도 후 에도 실패면 결제 시도를 멈춤(공식 문서에도 여러 번이라고 나옴)

구글과 마찬가지로 Grace Period을 선택적으로 줄 수 있음

알림 여부

자동 결제 상태가 변경 되었을때 notification_type이 DID_CHANGE_RENEWAL_STATUS가 옵니다

구독 상태는 서버에서 auto_renew_status와 auto_renew_status_change_date을 고려해서 판단이 필요

참고

https://developer.apple.com/documentation/storekit/in-app_purchase/original_api_for_in-app_purchase/subscriptions_and_offers/handling_subscriptions_billing?language=objc

https://developer.apple.com/help/app-store-connect/manage-subscriptions/enable-billing-grace-period-for-auto-renewable-subscriptions/

profile
Keep going하는 개발자

0개의 댓글