REST Resource: purchases.subscriptions

Tài nguyên: SubscriptionPurchase

Tài nguyên SubscriptionPurchase cho biết trạng thái giao dịch mua gói thuê bao của người dùng.

Biểu diễn dưới dạng JSON
{
  "kind": string,
  "startTimeMillis": string,
  "expiryTimeMillis": string,
  "autoResumeTimeMillis": string,
  "autoRenewing": boolean,
  "priceCurrencyCode": string,
  "priceAmountMicros": string,
  "introductoryPriceInfo": {
    object (IntroductoryPriceInfo)
  },
  "countryCode": string,
  "developerPayload": string,
  "paymentState": integer,
  "cancelReason": integer,
  "userCancellationTimeMillis": string,
  "cancelSurveyResult": {
    object (SubscriptionCancelSurveyResult)
  },
  "orderId": string,
  "linkedPurchaseToken": string,
  "purchaseType": integer,
  "priceChange": {
    object (SubscriptionPriceChange)
  },
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string,
  "profileId": string,
  "acknowledgementState": integer,
  "externalAccountId": string,
  "promotionType": integer,
  "promotionCode": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Trường
kind

string

Loại này đại diện cho đối tượng subscriptionPurchase trong dịch vụ androidpublisher.

startTimeMillis

string (int64 format)

Thời gian cấp gói thuê bao, tính bằng mili giây kể từ Thời gian bắt đầu của hệ thống.

expiryTimeMillis

string (int64 format)

Thời gian hết hạn gói thuê bao, tính bằng mili giây kể từ Thời gian bắt đầu của hệ thống.

autoResumeTimeMillis

string (int64 format)

Thời gian tự động tiếp tục gói thuê bao, tính bằng mili giây kể từ Thời gian bắt đầu của hệ thống. Chỉ hiển thị nếu người dùng đã yêu cầu tạm dừng gói thuê bao.

autoRenewing

boolean

Liệu gói thuê bao có tự động gia hạn khi đến thời gian hết hạn hiện tại hay không.

priceCurrencyCode

string

Mã tiền tệ theo ISO 4217 cho giá gói thuê bao. Ví dụ: nếu giá được chỉ định bằng bảng Anh, thì priceCurrencyCode là "GBP".

priceAmountMicros

string (int64 format)

Giá của gói thuê bao. Đối với các quốc gia không bao gồm thuế, giá này không bao gồm thuế. Đối với các quốc gia đã bao gồm thuế, giá đã bao gồm thuế. Giá được biểu thị bằng đơn vị một phần triệu, trong đó 1.000.000 đơn vị một phần triệu đại diện cho một đơn vị tiền tệ. Ví dụ: nếu giá gói thuê bao là 1, 99 euro, thì priceAmountMicros là 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

Thông tin giá ưu đãi của gói thuê bao. Ưu đãi này chỉ áp dụng khi người dùng mua gói thuê bao ở mức giá ưu đãi.

Trường này không thể hiện gói thuê bao hiện đang trong thời gian áp dụng giá ưu đãi.

countryCode

string

Mã quốc gia/khu vực thanh toán theo ISO 3166-1 alpha-2 của người dùng tại thời điểm cấp gói thuê bao.

developerPayload

string

Chuỗi do nhà phát triển chỉ định chứa thông tin bổ sung về đơn đặt hàng.

paymentState

integer

Trạng thái thanh toán của gói thuê bao. Các giá trị có thể là: 0. Khoản thanh toán đang chờ xử lý 1. Khoản thanh toán đã nhận 2. Dùng thử miễn phí 3. Đang chờ nâng cấp/hạ cấp

Không hiển thị đối với các gói thuê bao đã huỷ, hết hạn.

cancelReason

integer

Lý do gói thuê bao bị huỷ hoặc không tự động gia hạn. Các giá trị có thể là: 0. Người dùng đã huỷ gói thuê bao 1. Gói thuê bao đã bị hệ thống huỷ, chẳng hạn như do vấn đề thanh toán 2. Gói thuê bao đã được thay thế bằng gói thuê bao mới 3. Nhà phát triển đã huỷ gói thuê bao

userCancellationTimeMillis

string (int64 format)

Khoảng thời gian người dùng huỷ gói thuê bao, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống. Chỉ hiển thị nếu cancelReason là 0.

cancelSurveyResult

object (SubscriptionCancelSurveyResult)

Thông tin do người dùng cung cấp khi họ hoàn tất quy trình huỷ gói thuê bao (khảo sát về lý do huỷ).

orderId

string

Mã đơn hàng của đơn đặt hàng định kỳ mới nhất được liên kết với giao dịch mua gói thuê bao. Nếu gói thuê bao bị huỷ vì khoản thanh toán bị từ chối, thì đây sẽ là mã đơn hàng của đơn đặt hàng bị từ chối do khoản thanh toán bị từ chối.

linkedPurchaseToken

string

Mã thông báo giao dịch mua của giao dịch mua ban đầu nếu gói thuê bao này thuộc một trong các trường hợp sau: 0. Đăng ký lại một gói thuê bao đã bị huỷ nhưng không hết hạn 1. Nâng cấp/hạ cấp từ một gói thuê bao trước đó

Ví dụ: giả sử người dùng đăng ký lần đầu và bạn nhận được mã thông báo giao dịch mua X, sau đó người dùng huỷ và thực hiện quy trình đăng ký lại (trước khi đăng ký của họ hết hạn) và bạn nhận được mã thông báo giao dịch mua Y, cuối cùng người dùng nâng cấp đăng ký và bạn nhận được mã thông báo giao dịch mua Z. Nếu bạn gọi API này bằng mã thông báo giao dịch mua Z, trường này sẽ được đặt thành Y. Nếu bạn gọi API này bằng mã thông báo giao dịch mua Y, trường này sẽ được đặt thành X. Nếu bạn gọi API này bằng mã thông báo giao dịch mua X, thì trường này sẽ không được thiết lập.

purchaseType

integer

Loại giao dịch mua gói thuê bao. Trường này chỉ được thiết lập nếu giao dịch mua này không được thực hiện bằng quy trình thanh toán chuẩn trong ứng dụng. Các giá trị có thể là: 0. Thử nghiệm (tức là được mua từ một tài khoản thử nghiệm được cấp phép) 1. Khuyến mãi (tức là được mua bằng mã khuyến mãi)

priceChange

object (SubscriptionPriceChange)

Thông tin mới nhất về thay đổi giá. Thông tin này chỉ xuất hiện khi giá của gói thuê bao sắp thay đổi và chưa được áp dụng.

Sau khi gói thuê bao gia hạn theo mức giá mới hoặc gói thuê bao bị huỷ, sẽ không có thông tin nào về việc thay đổi giá được gửi lại.

profileName

string

Tên hồ sơ của người dùng khi người dùng mua gói thuê bao. Chỉ xuất hiện đối với những giao dịch mua được thực hiện bằng tính năng "Đăng ký bằng Google".

emailAddress

string

Địa chỉ email của người dùng khi người dùng mua gói thuê bao. Chỉ xuất hiện đối với những giao dịch mua được thực hiện bằng tính năng "Đăng ký bằng Google".

givenName

string

Tên của người dùng khi người dùng mua gói thuê bao. Chỉ xuất hiện đối với những giao dịch mua được thực hiện bằng tính năng "Đăng ký bằng Google".

familyName

string

Họ của người dùng khi người dùng mua gói thuê bao. Chỉ xuất hiện đối với những giao dịch mua được thực hiện bằng tính năng "Đăng ký bằng Google".

profileId

string

Mã hồ sơ trên Google của người dùng khi người dùng mua gói thuê bao. Chỉ xuất hiện đối với những giao dịch mua được thực hiện bằng tính năng "Đăng ký bằng Google".

acknowledgementState

integer

Trạng thái xác nhận của sản phẩm thuê bao. Các giá trị có thể là: 0. Cần được công nhận 1. Đã xác nhận

externalAccountId

string

Giá trị nhận dạng tài khoản người dùng trong dịch vụ bên thứ ba. Chỉ xuất hiện nếu hoạt động liên kết tài khoản diễn ra trong quy trình mua gói thuê bao.

promotionType

integer

Loại khuyến mãi được áp dụng cho giao dịch mua này. Trường này chỉ được thiết lập nếu có áp dụng chương trình khuyến mãi tại thời điểm mua gói thuê bao. Các giá trị có thể là: 0. Mã một lần 1. Mã đặc trưng

promotionCode

string

Mã khuyến mãi áp dụng cho giao dịch mua này. Trường này chỉ được đặt nếu chương trình khuyến mãi bằng mã ảo được áp dụng khi gói thuê bao được mua.

obfuscatedExternalAccountId

string

Một phiên bản mã nhận dạng bị làm rối mã nguồn, được liên kết duy nhất với tài khoản của người dùng trong ứng dụng của bạn. Hiển thị cho các giao dịch mua sau đây: * Nếu quá trình liên kết tài khoản diễn ra trong quy trình mua gói thuê bao. * Giao dịch được chỉ định bằng https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid khi thực hiện giao dịch mua.

obfuscatedExternalProfileId

string

Một phiên bản mã nhận dạng bị làm rối mã nguồn, được liên kết duy nhất với hồ sơ của người dùng trong ứng dụng của bạn. Chỉ hiển thị nếu được chỉ định bằng https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid khi giao dịch được thực hiện.

IntroductoryPriceInfo

Chứa thông tin về giá ưu đãi của một gói thuê bao.

Biểu diễn dưới dạng JSON
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
Trường
introductoryPriceCurrencyCode

string

Mã tiền tệ theo ISO 4217 cho giá ưu đãi của gói thuê bao. Ví dụ: nếu giá được chỉ định bằng bảng Anh, thì priceCurrencyCode là "GBP".

introductoryPriceAmountMicros

string (int64 format)

Giá ưu đãi của gói thuê bao, không bao gồm thuế. Đơn vị tiền tệ giống với priceCurrencyCode. Giá được biểu thị bằng đơn vị một phần triệu, trong đó 1.000.000 đơn vị một phần triệu đại diện cho một đơn vị tiền tệ. Ví dụ: nếu giá gói thuê bao là 1, 99 euro, thì priceAmountMicros là 1990000.

introductoryPricePeriod

string

Thời hạn giá ưu đãi, được chỉ định theo định dạng ISO 8601. Các giá trị phổ biến là (nhưng không giới hạn ở) "P1W" (một tuần), "P1M" (một tháng), "P3M" (ba tháng), "P6M" (sáu tháng) và "P1Y" (một năm).

introductoryPriceCycles

integer

Số kỳ thanh toán để áp dụng giá ưu đãi.

SubscriptionCancelSurveyResult

Thông tin do người dùng cung cấp khi họ hoàn tất quy trình huỷ gói thuê bao (khảo sát về lý do huỷ).

Biểu diễn dưới dạng JSON
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
Trường
cancelSurveyReason

integer

Lý do huỷ mà người dùng chọn trong bản khảo sát. Các giá trị có thể là: 0. Khác 1. Tôi không hay dùng dịch vụ này 2. Vấn đề kỹ thuật 3. Lý do liên quan đến chi phí 4. Tôi tìm thấy ứng dụng tốt hơn

userInputCancelReason

string

Lý do huỷ dữ liệu nhập tuỳ chỉnh từ người dùng. Chỉ hiển thị khi cancelReason là 0.

SubscriptionPriceChange

Chứa thông tin về việc thay đổi giá của một gói thuê bao có thể dùng để kiểm soát hành trình của người dùng đối với việc thay đổi giá trong ứng dụng. Bạn có thể tìm kiếm thông tin xác nhận của người dùng hoặc điều chỉnh trải nghiệm để có được lượt chuyển đổi thành công.

Biểu diễn dưới dạng JSON
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
Trường
newPrice

object (Price)

Mức giá mới mà gói thuê bao sẽ gia hạn nếu người dùng chấp nhận mức giá thay đổi.

state

integer

Trạng thái hiện tại của việc thay đổi giá. Các giá trị có thể là: 0. Chưa xử lý: Trạng thái thay đổi giá đang chờ xử lý đang chờ người dùng đồng ý. Ở trạng thái này, bạn có thể tuỳ ý yêu cầu người dùng xác nhận bằng cách sử dụng In-App API. 1. Đã chấp nhận: Nêu rõ một mức thay đổi giá được chấp nhận mà gói thuê bao sẽ gia hạn trừ phi bị huỷ. Thay đổi về giá sẽ có hiệu lực từ một ngày trong tương lai khi gói thuê bao gia hạn. Xin lưu ý rằng sự thay đổi này có thể không xảy ra vào lần tiếp theo bạn gia hạn gói thuê bao.

Phương thức

acknowledge

Xác nhận giao dịch mua gói thuê bao.

cancel

Huỷ giao dịch mua gói thuê bao của người dùng.

defer

Hoãn giao dịch mua gói thuê bao của người dùng cho đến một thời điểm hết hạn được chỉ định trong tương lai.

get

Kiểm tra xem giao dịch mua gói thuê bao của người dùng có hợp lệ hay không và trả về thời gian hết hạn.

refund

Hoàn tiền cho giao dịch mua gói thuê bao của người dùng, nhưng gói thuê bao vẫn có hiệu lực cho đến thời điểm hết hạn và sẽ tiếp tục gia hạn.

revoke

Hoàn tiền và ngay lập tức thu hồi giao dịch mua gói thuê bao của người dùng.