REST Resource: externaltransactions

리소스: ExternalTransaction

외부 거래의 세부정보입니다.

JSON 표현
{
  "packageName": string,
  "externalTransactionId": string,
  "originalPreTaxAmount": {
    object (Price)
  },
  "originalTaxAmount": {
    object (Price)
  },
  "currentPreTaxAmount": {
    object (Price)
  },
  "currentTaxAmount": {
    object (Price)
  },
  "testPurchase": {
    object (ExternalTransactionTestPurchase)
  },
  "transactionTime": string,
  "createTime": string,
  "transactionState": enum (TransactionState),
  "userTaxAddress": {
    object (ExternalTransactionAddress)
  },
  "transactionProgramCode": integer,
  "externalOfferInitialAcquisitionDetails": {
    object (ExternalOfferInitialAcquisitionDetails)
  },

  // Union field transaction_type can be only one of the following:
  "oneTimeTransaction": {
    object (OneTimeExternalTransaction)
  },
  "recurringTransaction": {
    object (RecurringExternalTransaction)
  }
  // End of list of possible types for union field transaction_type.
}
필드
packageName

string

출력 전용입니다. 외부 트랜잭션의 리소스 이름입니다. 인앱 상품이 판매된 애플리케이션의 패키지 이름입니다 (예: 'com.some.app').

externalTransactionId

string

출력 전용입니다. 이 거래의 ID입니다. 동일한 패키지 이름의 모든 거래 ID는 고유해야 합니다. 외부 트랜잭션을 만들 때 설정합니다.

originalPreTaxAmount

object (Price)

필수 항목입니다. 세전 원래 거래 금액입니다. 환불이 적용되기 전에 Google에 원래 고지된 세전 금액을 나타냅니다.

originalTaxAmount

object (Price)

필수 항목입니다. 원래 세액입니다. 환불이 적용되기 전에 Google에 처음 고지된 세액을 나타냅니다.

currentPreTaxAmount

object (Price)

출력 전용입니다. 세전 현재 거래 금액입니다. 이 거래에 적용되었을 수 있는 모든 환불을 포함한 현재 세전 금액을 나타냅니다.

currentTaxAmount

object (Price)

출력 전용입니다. 현재 세액입니다. 이 거래에 적용되었을 수 있는 모든 환불을 포함한 현재 세액을 나타냅니다.

testPurchase

object (ExternalTransactionTestPurchase)

출력 전용입니다. 설정된 경우 테스트 구매입니다. Google은 테스트 거래에 대해 비용을 청구하지 않습니다.

transactionTime

string (Timestamp format)

필수 항목입니다. 거래가 완료된 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 트랜잭션이 생성된 시간입니다. Google에서 거래에 대한 알림을 받은 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

transactionState

enum (TransactionState)

출력 전용입니다. 트랜잭션의 현재 상태입니다.

userTaxAddress

object (ExternalTransactionAddress)

필수 항목입니다. 세금 계산을 위한 사용자 주소입니다.

transactionProgramCode

integer

선택사항입니다. 파트너 프로그램에 참여하는 대상 앱의 서비스 수수료를 결정하는 데 사용되는 거래 프로그램 코드입니다. Play 미디어 경험 프로그램 (https://play.google.com/console/about/programs/mediaprogram/)에 참여하는 개발자는 개발자 제공 결제 거래를 신고할 때 프로그램 코드를 제공해야 합니다. 자격 요건을 충족하는 개발자인 경우 이 필드를 설정하는 방법에 관한 자세한 내용은 BDM에 문의하세요. 참고: 이 필드는 외부 제안 거래에 사용할 수 없습니다.

externalOfferInitialAcquisitionDetails

object (ExternalOfferInitialAcquisitionDetails)

선택사항입니다. 사용자/기기에서 외부 제안을 사용하여 처음으로 거래를 완료한 경우에 관한 세부정보입니다. 사용자 선택 결제 또는 개발자 제공 결제 전용을 사용한 거래에는 필요하지 않습니다.

통합 필드 transaction_type. 수행된 트랜잭션 유형입니다. transaction_type은 다음 중 하나여야 합니다.
oneTimeTransaction

object (OneTimeExternalTransaction)

이는 일회성 거래이며 정기 결제의 일부가 아닙니다.

recurringTransaction

object (RecurringExternalTransaction)

이 거래는 반복되는 일련의 거래에 포함되어 있습니다.

ExternalTransactionTestPurchase

이 유형에는 필드가 없습니다.

테스트 계정을 사용하여 수행된 거래를 나타냅니다. 이러한 거래는 Google에서 청구하지 않습니다.

OneTimeExternalTransaction

일회성 거래를 나타냅니다.

JSON 표현
{
  "externalTransactionToken": string
}
필드
externalTransactionToken

string

입력 전용입니다. Create 호출 중에 제공됩니다. 개발자 제공 결제 흐름이 시작될 때 클라이언트에서 가져옵니다.

RecurringExternalTransaction

반복적인 일련의 결제에 포함된 거래를 나타냅니다. 이는 정기 결제 또는 여러 번 결제가 진행되는 일회성 제품 (예: 선주문)일 수 있습니다.

JSON 표현
{

  // Union field source can be only one of the following:
  "initialExternalTransactionId": string,
  "externalTransactionToken": string,
  "migratedTransactionProgram": enum (ExternalTransactionProgram)
  // End of list of possible types for union field source.

  // Union field product_details can be only one of the following:
  "externalSubscription": {
    object (ExternalSubscription)
  },
  "otherRecurringProduct": {
    object (OtherRecurringProduct)
  }
  // End of list of possible types for union field product_details.
}
필드

통합 필드 source.

source는 다음 중 하나여야 합니다.

initialExternalTransactionId

string

이 반복 거래 중 첫 번째 트랜잭션의 외부 트랜잭션 ID입니다. 예를 들어 정기 결제의 경우 첫 번째 결제의 트랜잭션 ID입니다. 반복되는 외부 거래를 만들 때 필요합니다.

externalTransactionToken

string

입력 전용입니다. Create 호출 중에 제공됩니다. 개발자 제공 결제 흐름이 시작될 때 클라이언트에서 가져옵니다. 최초 구매에만 필요합니다.

migratedTransactionProgram

enum (ExternalTransactionProgram)

입력 전용입니다. Create 호출 중에 제공됩니다. 수동 월간 보고에서 자동 보고로 구독을 이전할 때만 사용해야 합니다.

통합 필드 product_details. 필수 항목입니다. 반복 외부 거래에 포함된 제품의 세부정보입니다. product_details은 다음 중 하나여야 합니다.
externalSubscription

object (ExternalSubscription)

외부 구독의 세부정보입니다.

otherRecurringProduct

object (OtherRecurringProduct)

다른 특정 카테고리에 속하지 않는 반복 외부 거래 제품의 세부정보입니다.

ExternalTransactionProgram

사용자가 거래를 완료하기 위해 경험한 외부 거래 프로그램을 나타냅니다.

열거형
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED 거래 프로그램이 지정되지 않았습니다. 사용되지 않음.
USER_CHOICE_BILLING 사용자가 Google Play 결제 개발자 관리 결제 중에서 선택할 수 있는 사용자 선택 결제
ALTERNATIVE_BILLING_ONLY 사용자가 개발자 관리자 결제만 사용할 수 있는 개발자 제공 결제 전용

ExternalSubscription

외부 구독의 세부정보입니다.

JSON 표현
{
  "subscriptionType": enum (SubscriptionType)
}
필드
subscriptionType

enum (SubscriptionType)

필수 항목입니다. 외부 구독의 유형입니다.

SubscriptionType

외부 구독 유형입니다.

열거형
SUBSCRIPTION_TYPE_UNSPECIFIED 명시되지 않음, 사용하지 마세요.
RECURRING 결제 주기마다 사용자에게 청구되는 반복 정기 결제입니다.
PREPAID 사용자가 선불로 결제하는 선불 정기 결제입니다.

OtherRecurringProduct

이 유형에는 필드가 없습니다.

더 구체적인 다른 카테고리에 속하지 않는 반복 외부 거래 제품의 세부정보입니다.

TransactionState

진행 중인 트랜잭션의 상태입니다.

열거형
TRANSACTION_STATE_UNSPECIFIED 트랜잭션 상태가 지정되지 않았습니다. 사용되지 않음.
TRANSACTION_REPORTED 거래가 Google에 보고되었습니다.
TRANSACTION_CANCELED 거래가 전액 환불되었습니다.

ExternalTransactionAddress

외부 거래를 위한 사용자 주소입니다.

JSON 표현
{
  "regionCode": string,
  "administrativeArea": string
}
필드
regionCode

string

필수 항목입니다. ISO-3166-1 Alpha-2 (UN 지역 코드)를 기반으로 하는 두 글자 지역 코드입니다.

administrativeArea

string

선택사항입니다. 국가/지역의 최상위 행정 구역 단위입니다. 인도에서 거래할 때만 필요합니다.

ExternalOfferInitialAcquisitionDetails

사용자/기기에서 외부 제안을 사용하여 처음으로 거래를 완료한 경우에 관한 세부정보입니다.

JSON 표현
{
  "externalTransactionId": string
}
필드
externalTransactionId

string

필수 항목입니다. 사용자가 처음으로 완료한 구매의 외부 거래 ID입니다.

메서드

createexternaltransaction

새 외부 트랜잭션을 만듭니다.

getexternaltransaction

기존 외부 트랜잭션을 가져옵니다.

refundexternaltransaction

기존 외부 거래를 환불하거나 부분 환불합니다.