- 리소스: 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 객체를 나타냅니다. |
region |
정기 결제가 승인된 시점에 사용자의 ISO 3166-1 alpha-2 청구서 수신 국가/지역 코드입니다. |
line |
정기 결제 구매의 항목 수준 정보입니다. 동일한 구매의 항목은 모두 AutoRenewingPlan이 있거나 모두 PrepaidPlan이 있어야 합니다. |
start |
정기 결제가 승인된 시간입니다. 대기 중인 정기 결제 (정기 결제가 생성되었지만 가입하는 동안 결제를 기다리는 중)에는 설정되지 않습니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
subscription |
정기 결제의 현재 상태입니다. |
latest |
정기 결제 구매와 관련된 최신 주문의 주문 ID입니다. autoRenewing 정기 결제의 경우에는 가입 주문의 주문 ID이거나(아직 갱신되지 않은 경우) 마지막 반복 주문 ID(성공, 대기 중 또는 거부된 주문)입니다. 선불 정기 결제의 경우 쿼리된 구매 토큰과 연결된 주문 ID입니다. |
linked |
이 정기 결제가 다음 중 하나인 경우 이전 정기 결제의 구매 토큰입니다. * 취소되었지만 만료되지 않은 정기 결제의 재가입 * 이전 정기 결제에서 업그레이드/다운그레이드 * 선불 정기 결제에서 자동 갱신 정기 결제로 전환 * 자동 갱신 정기 결제에서 선불 정기 결제로 전환 * 선불 정기 결제 잔액 충전 |
paused |
일시중지된 정기 결제에 관한 추가 컨텍스트입니다. 현재 정기 결제의 subscriptionState가 SUBSCRIPTION_STATE_PAUSED인 경우에만 표시됩니다. |
canceled |
취소된 정기 결제에 관한 추가 컨텍스트입니다. 현재 정기 결제의 subscriptionState가 SUBSCRIPTION_STATE_CANCELED 또는 SUBSCRIPTION_STATE_EXPIRED인 경우에만 표시됩니다. |
test |
이 정기 결제 구매가 테스트 구매인 경우에만 표시됩니다. |
acknowledgement |
정기 결제의 확인 상태입니다. |
external |
서드 파티 서비스의 사용자 계정 식별자입니다. |
subscribe |
'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 } |
필드 | |
---|---|
auto |
정기 결제가 자동으로 재개되는 시간입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
CanceledStateContext
SUBSCRIPTION_STATE_CANCELED 또는 SUBSCRIPTION_STATE_EXPIRED 상태의 정기 결제와 관련된 정보입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 cancellation_reason . 정기 결제가 취소된 이유입니다. cancellation_reason 은 다음 중 하나여야 합니다. |
|
user |
사용자가 정기 결제를 취소했습니다. |
system |
시스템에서 정기 결제를 취소했습니다(예: 결제 문제로 인해). |
developer |
개발자가 정기 결제를 취소했습니다. |
replacement |
새 정기 결제로 정기 결제를 대체했습니다. |
UserInitiatedCancellation
사용자가 시작한 취소와 관련된 정보입니다.
JSON 표현 |
---|
{
"cancelSurveyResult": {
object ( |
필드 | |
---|---|
cancel |
사용자가 정기 결제 취소 흐름 (취소 사유 설문조사)을 완료할 때 제공하는 정보입니다. |
cancel |
사용자가 정기 결제를 취소한 시간입니다. 이 시간 후에도 사용자는 정기 결제 상품을 계속 사용할 수도 있습니다. lineItems.expiry_time을 사용하여 사용자가 계속 사용할 수 있는지 확인합니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
CancelSurveyResult
사용자가 정기 결제를 취소한 경우 취소 설문조사의 결과입니다.
JSON 표현 |
---|
{
"reason": enum ( |
필드 | |
---|---|
reason |
취소 설문조사에서 사용자가 선택한 이유입니다. |
reason |
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 } |
필드 | |
---|---|
external |
서드 파티 서비스의 사용자 계정 식별자입니다. 정기 결제 구매 흐름의 일부로 계정 연결이 발생한 경우에만 표시됩니다. |
obfuscated |
앱에서 사용자 계정과 고유하게 연결된 ID의 난독화된 버전입니다. 다음과 같은 구매의 경우 표시됩니다. * 정기 결제 구매 흐름의 일부로 계정 연결이 발생한 경우 * 구매 시 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid를 사용하여 지정되었습니다. |
obfuscated |
앱에서 사용자 프로필과 고유하게 연결된 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 } |
필드 | |
---|---|
profile |
정기 결제를 구매했을 때 사용자의 Google 프로필 ID입니다. |
profile |
정기 결제를 구매했을 때 사용자의 프로필 이름입니다. |
email |
정기 결제를 구매했을 때 사용자의 이메일 주소입니다. |
given |
정기 결제를 구매했을 때 사용자의 이름입니다. |
family |
정기 결제를 구매했을 때 사용자의 성입니다. |
SubscriptionPurchaseLineItem
정기 결제 구매의 항목 수준 정보입니다.
JSON 표현 |
---|
{ "productId": string, "expiryTime": string, // Union field |
필드 | |
---|---|
product |
구매한 제품 ID (예: 'monthly001')입니다. |
expiry |
정기 결제가 만료된 시간 또는 사용이 연장 (예: 갱신)되지 않는 경우 만료될 시간입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
통합 필드 plan_type . 정기 결제 요금제 유형입니다. plan_type 은 다음 중 하나여야 합니다. |
|
auto |
항목이 자동 갱신 요금제입니다. |
prepaid |
항목이 선불 요금제입니다. |
offer |
이 항목의 혜택 세부정보입니다. |
통합 필드 deferred_item_change . 이 필드는 항목에 지연된 변경사항이 있는 경우 표시됩니다. 삭제하거나 대체할 수 있습니다. deferred_item_change 은 다음 중 하나여야 합니다. |
|
deferred |
지연된 항목 대체에 관한 정보입니다. |
signup |
이 상품에 대한 프로모션 세부정보입니다. 가입 중에 프로모션이 적용된 경우에만 설정됩니다. |
AutoRenewingPlan
자동 갱신 요금제 관련 정보입니다.
JSON 표현 |
---|
{ "autoRenewEnabled": boolean, "recurringPrice": { object ( |
필드 | |
---|---|
auto |
정기 결제가 현재 자동 갱신으로 설정된 경우입니다(예: 사용자가 정기 결제를 취소하지 않음). |
recurring |
자동 갱신 요금제의 현재 반복 가격입니다. |
price |
정기 결제 가입 이후 항목의 마지막 가격 변경에 관한 정보입니다. |
installment |
자동 갱신 요금제의 할부 요금제 약정 및 상태 관련 정보입니다. |
SubscriptionItemPriceChangeDetails
정기 결제 항목의 가격 변경 관련 정보입니다.
JSON 표현 |
---|
{ "newPrice": { object ( |
필드 | |
---|---|
new |
정기 결제 항목의 새로운 반복 가격입니다. |
price |
가격 변경 모드는 정기 결제 항목 가격이 변경되는 방식을 지정합니다. |
price |
가격 변경의 현재 상태입니다. |
expected |
가격 변경이 사용자에게 적용되는 갱신 시간입니다. 일시중지 등 갱신 시간이 변경되는 사례로 인해 이는 변경될 수 있습니다(나중으로 미뤄질 수 있음). 이 필드는 가격 변경이 적용되지 않은 경우에만 채워집니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
PriceChangeMode
가격 변경 모드입니다.
열거형 | |
---|---|
PRICE_CHANGE_MODE_UNSPECIFIED |
가격 변경 모드가 지정되지 않았습니다. 이 값은 설정하면 안 됩니다. |
PRICE_DECREASE |
정기 결제 가격이 인하되는 경우입니다. |
PRICE_INCREASE |
정기 결제 가격이 인상되고 사용자가 이를 수락해야 하는 경우입니다. |
OPT_OUT_PRICE_INCREASE |
정기 결제 가격이 인상되고 선택 해제 모드가 있는 경우입니다. |
PriceChangeState
가격 변경 상태입니다.
열거형 | |
---|---|
PRICE_CHANGE_STATE_UNSPECIFIED |
가격 변경 상태가 지정되지 않았습니다. 이 값은 사용하면 안 됩니다. |
OUTSTANDING |
사용자가 가격 변경에 동의할 때까지 기다립니다. |
CONFIRMED |
가격 변경이 사용자에게 발생하는 것으로 확인됩니다. |
APPLIED |
가격 변경이 적용됩니다. 즉, 사용자에게 새로운 가격으로 요금이 청구되기 시작했습니다. |
InstallmentPlan
할부 요금제 정보입니다.
JSON 표현 |
---|
{
"initialCommittedPaymentsCount": integer,
"subsequentCommittedPaymentsCount": integer,
"remainingCommittedPaymentsCount": integer,
"pendingCancellation": {
object ( |
필드 | |
---|---|
initial |
사용자가 처음에 약정한 총 결제 횟수입니다. |
subsequent |
사용자가 각 약정 기간 후에 약정할 총 결제 횟수입니다. 공백은 할부 요금제가 초기 약정 후 일반 자동 갱신 정기 결제로 대체됨을 의미합니다. |
remaining |
이 갱신 주기에서 지불해야 할 남은 약정 결제 총횟수입니다. |
pending |
표시되는 경우 이 할부 요금제는 취소 대기 중입니다. 취소는 사용자가 약정된 모든 결제를 완료한 후에만 발생합니다. |
PendingCancellation
이 유형에는 필드가 없습니다.
이는 가상 할부 요금제에 대기 중인 취소가 있는지에 관한 표시기입니다. 취소는 사용자가 약정된 모든 결제를 완료한 후에만 발생합니다.
PrepaidPlan
선불 요금제 관련 정보입니다.
JSON 표현 |
---|
{ "allowExtendAfterTime": string } |
필드 | |
---|---|
allow |
표시되는 경우 이 시간 후 선불 요금제의 충전 구매가 허용됩니다. 만료된 선불 요금제에는 표시되지 않습니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
OfferDetails
구매 항목 관련 혜택 세부정보입니다.
JSON 표현 |
---|
{ "offerTags": [ string ], "basePlanId": string, "offerId": string } |
필드 | |
---|---|
offer |
혜택과 연결된 최신 혜택 태그입니다. 기본 요금제에서 상속받은 태그가 포함됩니다. |
base |
기본 요금제 ID입니다. 모든 기본 요금제와 혜택에 표시됩니다. |
offer |
오퍼 ID 할인된 혜택에만 표시됩니다. |
DeferredItemReplacement
지연된 항목 대체 관련 정보입니다.
JSON 표현 |
---|
{ "productId": string } |
필드 | |
---|---|
product |
기존 productId를 대체할 productId입니다. |
SignupPromotion
구매 시 이 상품에 적용된 프로모션입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 promotion_type . 상품에 적용된 프로모션 유형입니다. promotion_type 은 다음 중 하나여야 합니다. |
|
one |
일회성 코드가 적용되었습니다. |
vanity |
배니티 코드가 적용되었습니다. |
OneTimeCode
이 유형에는 필드가 없습니다.
일회용 프로모션 코드입니다.
VanityCode
사전 정의된 다중 사용 프로모션 코드입니다.
JSON 표현 |
---|
{ "promotionCode": string } |
필드 | |
---|---|
promotion |
프로모션 코드입니다. |
메서드 |
|
---|---|
|
정기 결제에 관한 메타데이터 가져오기 |
|
사용자의 정기 결제 구매를 취소합니다. |