- 리소스: SubscriptionPurchaseV2
- SubscriptionState
- PausedStateContext
- CanceledStateContext
- UserInitiatedCancellation
- CancelSurveyResult
- CancelSurveyReason
- SystemInitiatedCancellation
- DeveloperInitiatedCancellation
- ReplacementCancellation
- TestPurchase
- AcknowledgementState
- ExternalAccountIdentifiers
- SubscribeWithGoogleInfo
- SubscriptionPurchaseLineItem
- AutoRenewingPlan
- SubscriptionItemPriceChangeDetails
- PriceChangeMode
- PriceChangeState
- InstallmentPlan
- PendingCancellation
- PrepaidPlan
- OfferDetails
- DeferredItemReplacement
- SignupPromotion
- OneTimeCode
- VanityCode
- 메서드
리소스: SubscriptionPurchaseV2
사용자의 정기 결제 구매 상태를 나타냅니다.
JSON 표현 |
---|
{ "kind": string, "regionCode": string, "lineItems": [ { object ( |
필드 | |
---|---|
kind |
이 종류는 androidpublisher 서비스의 SubscriptionPurchaseV2 객체를 나타냅니다. |
regionCode |
정기 결제가 승인된 시점의 사용자의 ISO 3166-1 alpha-2 청구서 수신 국가/지역 코드입니다. |
lineItems[] |
정기 결제 구매의 항목 수준 정보입니다. 동일한 구매의 항목은 모두 AutoRenewingPlan이 있거나 모두 PrepaidPlan이 있어야 합니다. |
startTime |
정기 결제가 승인된 시간입니다. 대기 중인 정기 결제 (정기 결제가 생성되었지만 가입하는 동안 결제를 기다리는 중)에는 설정되지 않습니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
subscriptionState |
정기 결제의 현재 상태입니다. |
latestOrderId |
지원 중단됨: 대신 lineItems.latest_successful_order_id를 사용하세요. 정기 결제 구매와 관련된 최신 주문의 주문 ID입니다. autoRenewing 정기 결제의 경우에는 가입 주문의 주문 ID이거나(아직 갱신되지 않은 경우) 마지막 반복 주문 ID(성공, 대기 중 또는 거부된 주문)입니다. 선불 정기 결제의 경우 쿼리된 구매 토큰과 연결된 주문 ID입니다. |
linkedPurchaseToken |
이 정기 결제가 다음 중 하나인 경우 이전 정기 결제의 구매 토큰입니다. * 취소되었지만 만료되지 않은 정기 결제의 재가입 * 이전 정기 결제에서 업그레이드/다운그레이드 * 선불 정기 결제에서 자동 갱신 정기 결제로 전환 * 자동 갱신 정기 결제에서 선불 정기 결제로 전환 * 선불 정기 결제 잔액 충전 |
pausedStateContext |
일시중지된 정기 결제에 관한 추가 컨텍스트입니다. 현재 정기 결제의 subscriptionState가 SUBSCRIPTION_STATE_PAUSED인 경우에만 표시됩니다. |
canceledStateContext |
취소된 정기 결제에 관한 추가 컨텍스트입니다. 현재 정기 결제의 subscriptionState가 SUBSCRIPTION_STATE_CANCELED 또는 SUBSCRIPTION_STATE_EXPIRED인 경우에만 표시됩니다. |
testPurchase |
이 정기 결제 구매가 테스트 구매인 경우에만 표시됩니다. |
acknowledgementState |
정기 결제의 확인 상태입니다. |
externalAccountIdentifiers |
서드 파티 서비스의 사용자 계정 식별자입니다. |
subscribeWithGoogleInfo |
'Google을 통한 구독'을 사용해 이루어진 구매와 관련된 사용자 프로필입니다. |
SubscriptionState
정기 결제의 여러 잠재적인 상태이며 활성 또는 취소 상태를 예로 들 수 있습니다. 정기 결제 구매 내 항목은 모두 자동 갱신 요금제이거나 선불 요금제일 수 있습니다.
열거형 | |
---|---|
SUBSCRIPTION_STATE_UNSPECIFIED |
지정되지 않은 정기 결제 상태입니다. |
SUBSCRIPTION_STATE_PENDING |
정기 결제가 생성되었지만 가입하는 동안 결제를 기다리고 있습니다. 이 상태에서는 모든 항목이 결제를 기다리고 있습니다. |
SUBSCRIPTION_STATE_ACTIVE |
구독이 활성 상태입니다. - (1) 정기 결제가 자동 갱신 요금제인 경우 하나 이상의 항목이 autoRenewEnabled이고 만료되지 않았습니다. - (2) 정기 결제가 선불 요금제인 경우 하나 이상의 항목이 만료되지 않았습니다. |
SUBSCRIPTION_STATE_PAUSED |
정기 결제가 일시중지되었습니다. 이 상태는 정기 결제가 자동 갱신 요금제인 경우에만 제공됩니다. 이 상태에서는 모든 항목이 일시중지된 상태입니다. |
SUBSCRIPTION_STATE_IN_GRACE_PERIOD |
정기 결제가 유예 기간입니다. 이 상태는 정기 결제가 자동 갱신 요금제인 경우에만 제공됩니다. 이 상태에서는 모든 항목이 유예 기간입니다. |
SUBSCRIPTION_STATE_ON_HOLD |
정기 결제가 보류 중 (일시중지됨)입니다. 이 상태는 정기 결제가 자동 갱신 요금제인 경우에만 제공됩니다. 이 상태에서는 모든 항목이 보류 중입니다. |
SUBSCRIPTION_STATE_CANCELED |
정기 결제가 취소되었지만 아직 만료되지 않았습니다. 이 상태는 정기 결제가 자동 갱신 요금제인 경우에만 제공됩니다. 모든 항목에서 autoRenewEnabled가 false로 설정되어 있습니다. |
SUBSCRIPTION_STATE_EXPIRED |
정기 결제가 만료되었습니다. 모든 항목의 expiryTime이 지났습니다. |
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED |
정기 결제의 대기 중인 거래가 취소되었습니다. 이 대기 중인 구매가 기존 정기 결제에 관한 것이라면 linkedPurchaseToken을 사용하여 해당 정기 결제의 현재 상태를 가져옵니다. |
PausedStateContext
일시중지된 상태의 정기 결제와 관련된 정보입니다.
JSON 표현 |
---|
{ "autoResumeTime": string } |
필드 | |
---|---|
autoResumeTime |
정기 결제가 자동으로 재개되는 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
CanceledStateContext
SUBSCRIPTION_STATE_CANCELED 또는 SUBSCRIPTION_STATE_EXPIRED 상태의 정기 결제와 관련된 정보입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 cancellation_reason . 정기 결제가 취소된 이유입니다. cancellation_reason 은 다음 중 하나여야 합니다. |
|
userInitiatedCancellation |
사용자가 정기 결제를 취소했습니다. |
systemInitiatedCancellation |
시스템에서 정기 결제를 취소했습니다(예: 결제 문제로 인해). |
developerInitiatedCancellation |
개발자가 정기 결제를 취소했습니다. |
replacementCancellation |
새 정기 결제로 정기 결제를 대체했습니다. |
UserInitiatedCancellation
사용자가 시작한 취소와 관련된 정보입니다.
JSON 표현 |
---|
{
"cancelSurveyResult": {
object ( |
필드 | |
---|---|
cancelSurveyResult |
사용자가 정기 결제 취소 절차 (취소 사유 설문조사)를 완료할 때 제공하는 정보입니다. |
cancelTime |
사용자가 정기 결제를 취소한 시간입니다. 이 시간 후에도 사용자는 정기 결제 상품을 계속 사용할 수도 있습니다. lineItems.expiry_time을 사용하여 사용자가 계속 사용할 수 있는지 확인합니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
CancelSurveyResult
사용자가 정기 결제를 취소한 경우 취소 설문조사의 결과입니다.
JSON 표현 |
---|
{
"reason": enum ( |
필드 | |
---|---|
reason |
취소 설문조사에서 사용자가 선택한 이유입니다. |
reasonUserInput |
CANCEL_SURVEY_REASON_OTHERS의 경우에만 설정됩니다. 설문조사에 대한 사용자의 자유 형식 응답입니다. |
CancelSurveyReason
취소 설문조사에서 사용자가 선택한 이유입니다.
열거형 | |
---|---|
CANCEL_SURVEY_REASON_UNSPECIFIED |
지정되지 않은 취소 설문조사 이유입니다. |
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE |
정기 결제를 충분히 사용하지 않습니다. |
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES |
앱을 사용하는 동안 발생하는 기술적 문제입니다. |
CANCEL_SURVEY_REASON_COST_RELATED |
비용 관련 문제입니다. |
CANCEL_SURVEY_REASON_FOUND_BETTER_APP |
사용자가 더 나은 앱을 찾았습니다. |
CANCEL_SURVEY_REASON_OTHERS |
기타 이유입니다. |
SystemInitiatedCancellation
이 유형에는 필드가 없습니다.
Google 시스템에서 시작한 취소와 관련된 정보입니다.
DeveloperInitiatedCancellation
이 유형에는 필드가 없습니다.
개발자가 시작한 취소와 관련된 정보입니다.
ReplacementCancellation
이 유형에는 필드가 없습니다.
정기 결제 대체로 발생한 취소와 관련된 정보입니다.
TestPurchase
이 유형에는 필드가 없습니다.
이 정기 결제 구매가 테스트 구매인지 나타냅니다.
AcknowledgementState
정기 결제의 가능한 확인 상태입니다.
열거형 | |
---|---|
ACKNOWLEDGEMENT_STATE_UNSPECIFIED |
지정되지 않은 확인 상태입니다. |
ACKNOWLEDGEMENT_STATE_PENDING |
정기 결제가 아직 확인되지 않았습니다. |
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED |
정기 결제가 확인되었습니다. |
ExternalAccountIdentifiers
서드 파티 서비스의 사용자 계정 식별자입니다.
JSON 표현 |
---|
{ "externalAccountId": string, "obfuscatedExternalAccountId": string, "obfuscatedExternalProfileId": string } |
필드 | |
---|---|
externalAccountId |
서드 파티 서비스의 사용자 계정 식별자입니다. 계정 연결이 정기 결제 구매 흐름의 일환으로 이루어진 경우에만 값이 있습니다. |
obfuscatedExternalAccountId |
앱에서 사용자 계정과 고유하게 연결된 ID의 난독화된 버전입니다. 다음과 같은 구매인 경우에 값이 있습니다. * 계정 연결이 정기 결제 구매 흐름의 일환으로 이루어진 경우. * 구매 시 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid를 사용하여 지정되었습니다. |
obfuscatedExternalProfileId |
앱에서 사용자 프로필과 고유하게 연결된 ID의 난독화된 버전입니다. 구매 시 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid를 사용하여 지정된 경우에만 표시됩니다. |
SubscribeWithGoogleInfo
'Google을 통한 구독'을 사용해 이루어진 구매와 관련된 정보입니다.
JSON 표현 |
---|
{ "profileId": string, "profileName": string, "emailAddress": string, "givenName": string, "familyName": string } |
필드 | |
---|---|
profileId |
정기 결제를 구매한 시점의 사용자 Google 프로필 ID입니다. |
profileName |
정기 결제를 구매한 시점의 사용자 프로필 이름입니다. |
emailAddress |
정기 결제를 구매한 시점의 사용자 이메일 주소입니다. |
givenName |
정기 결제를 구매한 시점의 사용자 성명 중 이름입니다. |
familyName |
정기 결제를 구매한 시점의 사용자 성명 중 성입니다. |
SubscriptionPurchaseLineItem
정기 결제 구매의 항목 수준 정보입니다.
JSON 표현 |
---|
{ "productId": string, "expiryTime": string, // Union field |
필드 | |
---|---|
productId |
구매한 제품 ID (예: 'monthly001')입니다. |
expiryTime |
정기 결제가 만료된 시간 또는 사용이 연장 (예: 갱신)되지 않는 경우 만료될 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
통합 필드 plan_type . 정기 결제 요금제 유형입니다. plan_type 은 다음 중 하나여야 합니다. |
|
autoRenewingPlan |
항목이 자동 갱신 요금제입니다. |
prepaidPlan |
항목이 선불 요금제입니다. |
offerDetails |
이 항목의 혜택 세부정보입니다. |
통합 필드 deferred_item_change . 이 필드는 항목에 지연된 변경사항이 있는 경우 표시됩니다. 삭제하거나 대체할 수 있습니다. deferred_item_change 은 다음 중 하나여야 합니다. |
|
deferredItemReplacement |
지연된 상품 교체에 관한 정보입니다. |
signupPromotion |
이 상품에 대한 프로모션 세부정보입니다. 가입 중에 프로모션이 적용된 경우에만 설정됩니다. |
AutoRenewingPlan
자동 갱신 요금제 관련 정보입니다.
JSON 표현 |
---|
{ "autoRenewEnabled": boolean, "recurringPrice": { object ( |
필드 | |
---|---|
autoRenewEnabled |
정기 결제가 현재 자동 갱신으로 설정된 경우입니다(예: 사용자가 정기 결제를 취소하지 않음). |
recurringPrice |
자동 갱신 요금제의 현재 반복 가격입니다. |
priceChangeDetails |
정기 결제 가입 이후 항목의 마지막 가격 변경에 관한 정보입니다. |
installmentDetails |
자동 갱신 요금제의 할부 요금제 약정 및 상태 관련 정보입니다. |
SubscriptionItemPriceChangeDetails
정기 결제 항목의 가격 변경 관련 정보입니다.
JSON 표현 |
---|
{ "newPrice": { object ( |
필드 | |
---|---|
newPrice |
정기 결제 항목의 새로운 반복 가격입니다. |
priceChangeMode |
가격 변경 모드는 정기 결제 항목 가격이 변경되는 방식을 지정합니다. |
priceChangeState |
가격 변경의 현재 상태입니다. |
expectedNewPriceChargeTime |
가격 변경이 사용자에게 적용되는 갱신 시간입니다. 일시중지 등 갱신 시간이 변경되는 사례로 인해 이는 변경될 수 있습니다(나중으로 미뤄질 수 있음). 이 필드는 가격 변경이 적용되지 않은 경우에만 채워집니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
PriceChangeMode
가격 변경 모드입니다.
열거형 | |
---|---|
PRICE_CHANGE_MODE_UNSPECIFIED |
가격 변경 모드가 지정되지 않았습니다. 이 값은 설정하면 안 됩니다. |
PRICE_DECREASE |
정기 결제 가격이 인하되는 경우입니다. |
PRICE_INCREASE |
정기 결제 가격이 인상되고 사용자가 이를 수락해야 하는 경우입니다. |
OPT_OUT_PRICE_INCREASE |
정기 결제 가격이 인상되고 선택 해제 모드가 있는 경우입니다. |
PriceChangeState
가격 변경 상태입니다.
열거형 | |
---|---|
PRICE_CHANGE_STATE_UNSPECIFIED |
가격 변경 상태가 지정되지 않았습니다. 이 값은 사용하면 안 됩니다. |
OUTSTANDING |
사용자가 가격 변경에 동의할 때까지 기다립니다. |
CONFIRMED |
가격 변경이 사용자에게 발생하는 것으로 확인됩니다. |
APPLIED |
가격 변경이 적용됩니다. 즉, 사용자에게 새로운 가격으로 요금이 청구되기 시작했습니다. |
CANCELED |
가격 변경이 취소되었습니다. |
InstallmentPlan
할부 요금제 정보입니다.
JSON 표현 |
---|
{
"initialCommittedPaymentsCount": integer,
"subsequentCommittedPaymentsCount": integer,
"remainingCommittedPaymentsCount": integer,
"pendingCancellation": {
object ( |
필드 | |
---|---|
initialCommittedPaymentsCount |
사용자가 처음에 약정한 총 결제 횟수입니다. |
subsequentCommittedPaymentsCount |
사용자가 각 약정 기간 후에 약정할 총 결제 횟수입니다. 공백은 할부 요금제가 초기 약정 후 일반 자동 갱신 정기 결제로 대체됨을 의미합니다. |
remainingCommittedPaymentsCount |
이 갱신 주기에서 지불해야 할 남은 약정 결제 총횟수입니다. |
pendingCancellation |
표시되는 경우 이 할부 요금제는 취소 대기 중입니다. 취소는 사용자가 약정된 모든 결제를 완료한 후에만 발생합니다. |
PendingCancellation
이 유형에는 필드가 없습니다.
이는 가상 할부 요금제에 대기 중인 취소가 있는지에 관한 표시기입니다. 취소는 사용자가 약정된 모든 결제를 완료한 후에만 발생합니다.
PrepaidPlan
선불 요금제 관련 정보입니다.
JSON 표현 |
---|
{ "allowExtendAfterTime": string } |
필드 | |
---|---|
allowExtendAfterTime |
표시되는 경우 이 시간 후 선불 요금제의 충전 구매가 허용됩니다. 만료된 선불 요금제에는 표시되지 않습니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
OfferDetails
구매 항목 관련 혜택 세부정보입니다.
JSON 표현 |
---|
{ "offerTags": [ string ], "basePlanId": string, "offerId": string } |
필드 | |
---|---|
offerTags[] |
혜택과 연결된 최신 혜택 태그입니다. 기본 요금제에서 상속받은 태그가 포함됩니다. |
basePlanId |
기본 요금제 ID입니다. 모든 기본 요금제와 혜택에 표시됩니다. |
offerId |
오퍼 ID 할인된 혜택에만 표시됩니다. |
DeferredItemReplacement
지연된 항목 대체 관련 정보입니다.
JSON 표현 |
---|
{ "productId": string } |
필드 | |
---|---|
productId |
기존 productId를 대체할 productId입니다. |
SignupPromotion
구매 시 이 상품에 적용된 프로모션입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 promotion_type . 상품에 적용된 프로모션 유형입니다. promotion_type 은 다음 중 하나여야 합니다. |
|
oneTimeCode |
일회성 코드가 적용되었습니다. |
vanityCode |
배니티 코드가 적용되었습니다. |
OneTimeCode
이 유형에는 필드가 없습니다.
일회용 프로모션 코드입니다.
VanityCode
사전 정의된 다중 사용 프로모션 코드입니다.
JSON 표현 |
---|
{ "promotionCode": string } |
필드 | |
---|---|
promotionCode |
프로모션 코드입니다. |
메서드 |
|
---|---|
|
정기 결제에 관한 메타데이터 가져오기 |
|
사용자의 정기 결제 구매를 취소합니다. |