REST Resource: purchases.subscriptions

Referensi: SubscriptionPurchase

Resource SubscriptionPurchase menunjukkan status pembelian langganan pengguna.

Representasi 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
}
Kolom
kind

string

Jenis ini mewakili objek subscriptionPurchase di layanan androidpublisher.

startTimeMillis

string (int64 format)

Waktu langganan diberikan, dalam milidetik sejak Epoch.

expiryTimeMillis

string (int64 format)

Waktu langganan akan berakhir, dalam milidetik sejak Epoch.

autoResumeTimeMillis

string (int64 format)

Waktu langganan akan dilanjutkan secara otomatis, dalam milidetik sejak Epoch. Hanya muncul jika pengguna telah meminta untuk menjeda langganan.

autoRenewing

boolean

Apakah langganan akan otomatis diperpanjang saat mencapai waktu habis masa berlakunya saat ini.

priceCurrencyCode

string

Kode mata uang ISO 4217 untuk harga langganan. Misalnya, jika harga ditentukan dalam pound sterling Inggris, priceCurrencyCode adalah "GBP".

priceAmountMicros

string (int64 format)

Harga langganan. Untuk negara sebelum pajak, harga tidak termasuk pajak. Untuk negara yang menyertakan pajak, harga sudah termasuk pajak. Harga dinyatakan dalam unit mikro, di mana 1.000.000 unit mikro mewakili satu unit mata uang. Misalnya, jika harga langganan adalah €1,99, priceAmountMicros adalah 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

Informasi harga perkenalan langganan. Ini hanya ada jika langganan dibeli dengan harga perkenalan.

Kolom ini tidak menunjukkan bahwa langganan saat ini sedang dalam periode harga perkenalan.

countryCode

string

Kode negara/wilayah penagihan ISO 3166-1 alpha-2 pengguna pada saat langganan diberikan.

developerPayload

string

String yang ditentukan developer yang berisi informasi tambahan tentang pesanan.

paymentState

integer

Status pembayaran langganan. Kemungkinan nilainya adalah: 0. Pembayaran tertunda 1. Pembayaran diterima 2. Uji coba gratis 3. Upgrade/downgrade yang ditangguhkan tertunda

Tidak ada untuk langganan yang dibatalkan dan kedaluwarsa.

cancelReason

integer

Alasan langganan dibatalkan atau bukan merupakan perpanjangan otomatis. Kemungkinan nilainya adalah: 0. Pengguna membatalkan langganan 1. Langganan dibatalkan oleh sistem, misalnya karena masalah penagihan 2. Langganan diganti dengan langganan baru 3. Langganan dibatalkan oleh developer

userCancellationTimeMillis

string (int64 format)

Waktu langganan dibatalkan oleh pengguna, dalam milidetik sejak epoch. Hanya ada jika cancelAlasan adalah 0.

cancelSurveyResult

object (SubscriptionCancelSurveyResult)

Informasi yang diberikan oleh pengguna saat mereka menyelesaikan alur pembatalan langganan (survei alasan pembatalan).

orderId

string

ID pesanan dari pesanan berulang terbaru yang terkait dengan pembelian langganan. Jika langganan dibatalkan karena pembayaran ditolak, ID ini akan menjadi ID pesanan dari pesanan pembayaran yang ditolak.

linkedPurchaseToken

string

Token pembelian dari pembelian asal jika langganan ini adalah salah satu dari yang berikut: 0. Pendaftaran ulang langganan yang dibatalkan tetapi tidak berakhir 1. Mengupgrade/mendowngrade dari langganan sebelumnya

Misalnya, anggaplah pengguna awalnya mendaftar dan Anda menerima token pembelian X, lalu pengguna tersebut membatalkan dan melalui alur pendaftaran ulang (sebelum langganan mereka berakhir) dan Anda menerima token pembelian Y, dan akhirnya pengguna meningkatkan langganan mereka dan Anda menerima token pembelian Z. Jika Anda memanggil API ini dengan token pembelian Z, kolom ini akan ditetapkan ke Y. Jika Anda memanggil API ini dengan token pembelian Y, kolom ini akan ditetapkan ke X. Jika Anda memanggil API ini dengan token pembelian X, kolom ini tidak akan ditetapkan.

purchaseType

integer

Jenis pembelian langganan. Kolom ini hanya ditetapkan jika pembelian ini tidak dilakukan menggunakan alur penagihan dalam aplikasi standar. Kemungkinan nilainya adalah: 0. Pengujian (yaitu yang dibeli dari akun pengujian lisensi) 1. Promo (yaitu dibeli menggunakan kode promo)

priceChange

object (SubscriptionPriceChange)

Informasi perubahan harga terbaru tersedia. Perubahan ini hanya muncul jika ada perubahan harga mendatang untuk langganan yang belum diterapkan.

Setelah langganan diperpanjang dengan harga baru atau langganan dibatalkan, informasi perubahan harga tidak akan ditampilkan.

profileName

string

Nama profil pengguna saat langganan dibeli. Hanya ada untuk pembelian yang dilakukan dengan 'Berlangganan dengan Google'.

emailAddress

string

Alamat email pengguna saat langganan dibeli. Hanya ada untuk pembelian yang dilakukan dengan 'Berlangganan dengan Google'.

givenName

string

Nama depan pengguna saat langganan dibeli. Hanya ada untuk pembelian yang dilakukan dengan 'Berlangganan dengan Google'.

familyName

string

Nama keluarga pengguna saat langganan dibeli. Hanya ada untuk pembelian yang dilakukan dengan 'Berlangganan dengan Google'.

profileId

string

ID profil Google pengguna saat langganan dibeli. Hanya ada untuk pembelian yang dilakukan dengan 'Berlangganan dengan Google'.

acknowledgementState

integer

Status konfirmasi produk langganan. Kemungkinan nilainya adalah: 0. Belum diakui 1. Dikonfirmasi

externalAccountId

string

ID akun pengguna di layanan pihak ketiga. Hanya ada jika penautan akun terjadi sebagai bagian dari alur pembelian langganan.

promotionType

integer

Jenis promosi yang berlaku pada pembelian ini. Kolom ini hanya ditetapkan jika promosi diterapkan saat langganan dibeli. Kemungkinan nilainya adalah: 0. Kode sekali pakai 1. Kode cantik

promotionCode

string

Kode promosi yang diterapkan pada pembelian ini. Kolom ini hanya disetel jika promosi kode cantik diterapkan saat langganan dibeli.

obfuscatedExternalAccountId

string

Versi ID yang di-obfuscate yang secara unik terkait dengan akun pengguna di aplikasi Anda. Ditampilkan untuk pembelian berikut: * Jika penautan akun terjadi sebagai bagian dari alur pembelian langganan. * Atribut ini ditentukan menggunakan https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid saat pembelian dilakukan.

obfuscatedExternalProfileId

string

Versi obfuscation dari ID yang secara unik terkait dengan profil pengguna di aplikasi Anda. Hanya tampilkan jika ditentukan menggunakan https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid saat pembelian dilakukan.

IntroductoryPriceInfo

Berisi informasi harga perkenalan untuk langganan.

Representasi JSON
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
Kolom
introductoryPriceCurrencyCode

string

Kode mata uang ISO 4217 untuk harga langganan perkenalan. Misalnya, jika harga ditentukan dalam pound sterling Inggris, priceCurrencyCode adalah "GBP".

introductoryPriceAmountMicros

string (int64 format)

Harga perkenalan langganan, tidak termasuk pajak. Mata uangnya sama dengan priceCurrencyCode. Harga dinyatakan dalam unit mikro, di mana 1.000.000 unit mikro mewakili satu unit mata uang. Misalnya, jika harga langganan adalah €1,99, priceAmountMicros adalah 1990000.

introductoryPricePeriod

string

Periode harga perkenalan, ditentukan dalam format ISO 8601. Nilai umum adalah (tetapi tidak terbatas pada) "P1W" (satu minggu), "P1M" (satu bulan), "P3M" (tiga bulan), "P6M" (enam bulan), dan "P1Y" (satu tahun).

introductoryPriceCycles

integer

Jumlah periode penagihan untuk menawarkan harga perkenalan.

SubscriptionCancelSurveyResult

Informasi yang diberikan oleh pengguna saat mereka menyelesaikan alur pembatalan langganan (survei alasan pembatalan).

Representasi JSON
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
Kolom
cancelSurveyReason

integer

Alasan pembatalan yang dipilih pengguna dalam survei tersebut. Kemungkinan nilainya adalah: 0. Lainnya 1. Saya jarang menggunakan layanan ini. Masalah teknis 3. Alasan terkait biaya 4. Ada aplikasi yang lebih baik

userInputCancelReason

string

Alasan pembatalan input yang disesuaikan dari pengguna. Hanya ada jika cancelAlasan adalah 0.

SubscriptionPriceChange

Berisi informasi perubahan harga langganan yang dapat digunakan untuk mengontrol perjalanan pengguna terkait perubahan harga di aplikasi. Hal ini dapat dalam bentuk meminta konfirmasi dari pengguna atau menyesuaikan pengalaman agar konversi berhasil.

Representasi JSON
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
Kolom
newPrice

object (Price)

Harga baru yang akan digunakan untuk perpanjangan langganan jika perubahan harga disetujui oleh pengguna.

state

integer

Status perubahan harga saat ini. Kemungkinan nilainya adalah: 0. Luar biasa: Status untuk perubahan harga tertunda yang menunggu persetujuan pengguna. Dalam status ini, Anda dapat secara opsional meminta konfirmasi dari pengguna menggunakan In-App API. 1. Diterima: Sebutkan perubahan harga yang diterima yang akan diperpanjang dengan langganan kecuali jika dibatalkan. Perubahan harga ini akan berlaku pada tanggal yang akan datang saat langganan diperpanjang. Perlu diperhatikan bahwa perubahan mungkin tidak terjadi saat langganan diperpanjang berikutnya.

Metode

acknowledge

Mengakui pembelian langganan.

cancel

Membatalkan pembelian langganan pengguna.

defer

Menunda pembelian langganan pengguna hingga masa berlaku mendatang yang ditentukan.

get

Memeriksa apakah pembelian langganan pengguna valid dan menampilkan waktu habis masa berlakunya.

refund

Mengembalikan dana pembelian langganan pengguna, tetapi langganan tetap berlaku hingga masa berlakunya habis dan langganan akan terus berulang.

revoke

Mengembalikan dana dan segera mencabut pembelian langganan pengguna.