Geçersiz Satın Alma İşlemleri API'si

Google Play İptal Edilmiş Satın Almalar API'si, kullanıcının iptal ettiği satın alma işlemleriyle ilişkili siparişlerin listesini sağlar. Bu listedeki bilgilerden yararlanarak kullanıcının bu siparişlerdeki ürünlere erişmesini engelleyen bir iptal sistemi uygulayabilirsiniz.

Bu API, tek seferlik uygulama içi siparişler ve Uygulama Abonelikleri için geçerlidir.

Bir satın alma işlemi, aşağıdaki şekillerde geçersiz kılınabilir:

  • Kullanıcı, siparişi için geri ödeme talebinde bulunur.
  • Kullanıcı, siparişini iptal eder.
  • Bir sipariş için ödeme alınır.
  • Geliştirici, siparişi iptal eder veya geri ödeme yapar.

  • Google, siparişi iptal eder veya geri ödeme yapar.

Bu API'yi kullanarak, uygulamanızın tüm kullanıcılarına (özellikle de uygulamanız oyunsa) daha dengeli ve adil bir deneyim sunmaya yardımcı olursunuz.

Erişim Elde Etme

Voided Purchases API'si ile çalışmak için finansal bilgileri görüntüleme izniniz olmalıdır. Yetkilendirme işlemini bir OAuth istemcisi veya hizmet hesabı kullanarak yaparsınız. Hizmet hesabı kullanıyorsanız bu hesapta "Finansal raporları görüntüleme" iznini etkinleştirin.

Google Play Developer API'lerine yetkili erişim elde etme hakkında daha fazla bilgi için aşağıdaki kılavuzlara bakın:

Geçersiz Satın Alınanları Görüntüleme

İptal edilen satın alma işlemlerinin listesini istemek için GET yöntemini kullanın. İsteğinize, uygulamanızın tam nitelikli adını (ör. com.google.android.apps.maps) ve API'ye erişim elde ederken aldığınız yetkilendirme jetonunu ekleyin.

GET https://www.googleapis.com/androidpublisher/v3/applications/
your_package_name/purchases/voidedpurchases?access_token=your_auth_token

İsteğinize aşağıdaki parametreleri de ekleyebilirsiniz. Bunların her biri isteğe bağlıdır:

başlangıç zamanı

Unix döneminden sonra geçen ve yanıtta görmek istediğiniz en eski geçersiz kılma işleminin milisaniye cinsinden süresi. startTime varsayılan olarak 30 gün öncesidir.

API yalnızca son 30 gün içinde gerçekleşen geçersiz satın alma işlemlerini gösterebilir. startTime için belirttiğiniz değerden bağımsız olarak, geçersiz olan daha eski satın alma işlemleri yanıta dahil edilmez.

bitiş zamanı

Unix döneminden sonra milisaniye olarak, yanıtta görmek istediğiniz en yeni geçersiz satın alma işleminin süresi. endTime varsayılan olarak geçerli saate ayarlanmıştır.

maksSonuçlar
Her yanıtta gösterilen geçersiz satın alma işlemlerinin maksimum sayısı. Varsayılan olarak bu değer 1.000'dir. Bu parametre için maksimum değerin de 1.000 olduğunu unutmayın.
token
Önceki yanıta ait devam jetonu, daha fazla sonuç görüntülemenizi sağlar.
tür

Her yanıtta görünen geçersiz satın alma işlemlerinin türü. 0 olarak ayarlanırsa yalnızca geçersiz uygulama içi satın alma işlemleri döndürülür. 1 olarak ayarlanırsa hem geçersiz uygulama içi satın alma işlemleri hem de geçersiz abonelik satın alma işlemleri döndürülür. Varsayılan değer 0'dır.

Yanıt, geçersiz kılınan satın alma işlemlerinin listesini içeren bir JSON dizesidir. maxResults istek parametresinde belirtilen sayıdan daha fazla sonuç varsa yanıt, daha fazla sonuç görüntülemek için sonraki bir isteğe iletebileceğiniz bir nextPageToken değeri içerir. Listedeki ilk sonuç, geçersiz kılınan en eski satın alma işlemini gösterir.

{
  "tokenPagination": {
    "nextPageToken": "next_page_token"
  },
  "voidedPurchases": [
    {
      "kind": "androidpublisher#voidedPurchase",
      "purchaseToken": "some_purchase_token",
      "purchaseTimeMillis": "1468825200000",
      "voidedTimeMillis": "1469430000000",
      "orderId": "some_order_id",
      "voidedSource": "0",
      "voidedReason": "4"
    },
    {
      "kind": "androidpublisher#voidedPurchase",
      "purchaseToken": "some_other_purchase_token",
      "purchaseTimeMillis": "1468825100000",
      "voidedTimeMillis": "1470034800000",
      "orderId": "some_other_order_id",
      "voidedSource": "2",
      "voidedReason": "5"
    },
  ]
}

Kotalar

Voided Purchases API'si aşağıdaki paketleri paket bazında belirler:

  • Günde 6.000 sorgu. (Gün, Pasifik Saati'nde gece yarısında başlar ve biter.)
  • 30 saniyelik herhangi bir dönemde 30 sorgu.

İlk istekler için kurallar

İlk API isteğiniz sırasında uygulamanız için mevcut tüm verileri getirmek isteyebilirsiniz. Ancak bu süreç günlük bütçenizin tükenmesine neden olabilir. Geçersiz satın alma verilerini daha güvenli ve tutarlı bir şekilde elde etmek için aşağıdaki en iyi uygulamaları izleyin:

  • maxResults parametresi için varsayılan değeri kullanın. Bu şekilde, sorgu kotanızın tamamını bir gün boyunca kullanırsanız 6.000.000 geçersiz satın alma işleminin ayrıntılarını alabilirsiniz.
  • Yanıt, nextPageToken için bir değer içeriyorsa bir sonraki isteğiniz sırasında bu değeri token parametresine atayın.

En İyi Uygulamalar

Uygulamanızda bu API'yi nasıl kullanacağınızı belirlerken satın alma işlemini iptal etmek için birçok neden olduğunu ve her durumda işe yarayan tek bir çözüm olmadığını unutmayın. İptal politikalarınızı ve stratejilerinizi tasarlarken kullanıcılarınızı aklınızda bulundurmanız gerekir. Bunun için aşağıdaki önerilen uygulamalardan yararlanabilirsiniz:

  • Bu API'yi, istenmeyen davranışı ele almak için kapsamlı bir stratejideki birçok öğeden biri olarak kullanın. Uygulama içi ürünlere erişimi iptal etmek, genellikle uygulama içi satın alma işlemleri için makul fiyatlara sahip bir uygulamayla, istenmeyen davranışları teşvik eden bir uygulama tasarımıyla, bu tür davranışları reddeden güçlü bir kullanıcı tabanıyla ve duyarlı ve etkili kullanıcı desteği kanallarıyla birleştirilir.
  • Tüm kullanıcılar için adil kullanım sağlamak amacıyla iptal politikanızı eşit şekilde yönetin.
  • İstenmeyen davranışlarla başa çıkarken aşamalı bir politika oluşturun. Örneğin, ilk suçlar için uygulama içi uyarılarla başlayın, ardından kullanıcının istenmeyen davranışı devam ederken yanıtlarınızı üst birime iletin. Son çare olarak, kullanıcının uygulamanızla hiçbir şekilde etkileşimde bulunmasını engelleyebilirsiniz.
  • Bir iptal politikası kullanıma sunduğunuzda ve bunu her güncellediğinizde, kullanıcılarınızı değişiklikler konusunda bilgilendirmek için uygulamanızın erişim kanallarını kullanın. Kullanıcılarınıza uygulamanızda geçerli olmadan önce bu değişiklikleri anlamaları için zaman tanıyın.
  • Kullanıcılarınıza karşı şeffaf olun ve uygulama içi ürüne erişimlerini iptal etmek gibi işlemler yaptığınızda onları bilgilendirin. İdeal olarak, kullanıcıların kararlarınıza itiraz edebilmesi ve bu tür anlaşmazlıkların adil şekilde ele alınması gerekir.
  • Kullanıcıların istenmeyen davranışlarda bulunmalarına neyin sebep olduğunu ve bu tür davranışları nasıl gerçekleştirdiklerini anlamak için geri bildirim formlarını ve topluluk forumlarını izleyin. Bu analizlerden yola çıkarak ilk savunma hattınızı oluşturun.