REST Resource: purchases.subscriptions

Tài nguyên: SubscriptionPurchase

Tài nguyên SubscriptionPurchase cho biết trạng thái của 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 điểm gói thuê bao hết hạn, 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 điểm gói thuê bao sẽ tự động tiếp tục, tính bằng mili giây kể từ Thời gian bắt đầu của hệ thống. Chỉ xuất hiện 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 điểm hết hạn hiện tại hay không.

priceCurrencyCode

string

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

priceAmountMicros

string (int64 format)

Giá của gói thuê bao. Đối với các quốc gia không tính thuế, giá này chưa bao gồm thuế. Đối với các quốc gia tính 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 tương đương với một đơn vị tiền tệ. Ví dụ: nếu giá gói thuê bao là 1,99 € thì priceAmountMicros là 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

Thông tin về giá ưu đãi của gói thuê bao. Mục này chỉ xuất hiện khi người dùng mua gói thuê bao với giá ưu đãi.

Trường này không cho biết 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ể có 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ờ xử lý yêu cầu nâng cấp/hạ cấp bị trì hoãn

Không xuất hiện đố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ể có là: 0. Người dùng đã huỷ gói thuê bao 1. Hệ thống đã huỷ gói thuê bao, ví dụ: 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)

Thời điểm 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ỉ xuất hiện 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 (bản 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ỷ do khoản thanh toán bị từ chối, thì đây sẽ là mã đơn đặt hàng của đơn đặt hàng bị từ chối thanh toán.

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 là một trong những gói sau: 0. Đăng ký lại gói thuê bao đã huỷ nhưng chưa hết hạn 1. Nâng cấp/hạ cấp từ gói thuê bao trước đó

Ví dụ: giả sử người dùng ban đầu đăng ký 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 gói thuê bao 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 gói thuê bao 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, thì 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, thì 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 đặt.

purchaseType

integer

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

priceChange

object (SubscriptionPriceChange)

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

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

profileName

string

Tên hồ sơ của người dùng khi mua gói thuê bao. Chỉ xuất hiện đối với các giao dịch mua được thực hiện bằng phương thức "Đă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 các giao dịch mua được thực hiện bằng phương thức "Đăng ký bằng Google".

givenName

string

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

familyName

string

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

profileId

string

Mã hồ sơ Google của người dùng khi họ mua gói thuê bao. Chỉ xuất hiện đối với các giao dịch mua được thực hiện bằng phương thức "Đă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ể có là: 0. Chưa được xác 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 quá trình liên kết tài khoản diễn ra trong quy trình mua gói thuê bao.

promotionType

integer

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

promotionCode

string

Mã khuyến mãi được á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 mã nhận dạng cá nhân được áp dụng khi người dùng mua gói thuê bao.

obfuscatedExternalAccountId

string

Phiên bản mã nhận dạng bị làm rối được liên kết duy nhất với tài khoản của người dùng trong ứng dụng. Xuất hiện trong các giao dịch mua sau: * 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. * Mã này được chỉ định bằng https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid khi giao dịch mua được thực hiện.

obfuscatedExternalProfileId

string

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

IntroductoryPriceInfo

Chứa thông tin về giá ưu đãi cho 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 đồng bảng Anh, thì priceCurrencyCode sẽ là "GBP".

introductoryPriceAmountMicros

string (int64 format)

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

introductoryPricePeriod

string

Thời gian áp dụng giá ưu đãi, được chỉ định ở định dạng ISO 8601. Các giá trị phổ biến bao gồm (nhưng không giới hạn ở) "P1W" (một tuần), "P1M" (một tháng), "P3M" (3 tháng), "P6M" (6 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 (bản 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ể có là: 0. Khác 1. Tôi không hay sử 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ỷ do người dùng nhập tuỳ chỉnh. Chỉ xuất hiện khi cancelReason là 0.

SubscriptionPriceChange

Chứa thông tin thay đổi giá của gói thuê bao có thể dùng để kiểm soát hành trình của người dùng khi thay đổi giá trong ứng dụng. Thông tin này có thể ở dạng yêu cầu người dùng xác nhận hoặc điều chỉnh trải nghiệm để 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)

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

state

integer

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

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

Trì 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ụ thể 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 của gói thuê bao đó.

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 được gia hạn.

revoke

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