- Kaynak: Order
- Durum
- BuyerAddress
- OrderDetails
- LineItem
- OneTimePurchaseDetails
- PreorderDetails
- RentalDetails
- SubscriptionDetails
- OfferPhase
- OfferPhaseDetails
- FreeTrialDetails
- IntroductoryPriceDetails
- BaseDetails
- ProrationPeriodDetails
- PaidAppDetails
- OrderHistory
- ProcessedEvent
- CancellationEvent
- RefundEvent
- RefundDetails
- RefundReason
- PartialRefundEvent
- Durum
- PointsDetails
- Yöntemler
Kaynak: Sipariş
Order kaynağı, Google Play'de yapılan bir işlemle ilgili kapsamlı bilgileri kapsar. Siparişin kendisi, satın alınan ürünler ve siparişle ilgili etkinliklerin geçmişi hakkında ayrıntılar sağlayan çeşitli özellikler içerir.
Orders API'leri, Google Play ekosistemindeki sipariş verilerinize gerçek zamanlı erişim sağlar. Hem tek seferlik hem de yinelenen siparişlerle ilgili ayrıntılı bilgileri ve meta verileri (ör. ücretler, vergiler ve geri ödemeler gibi işlem ayrıntılarının yanı sıra abonelikler için fiyatlandırma aşamaları gibi meta veriler) alabilirsiniz. Orders API'leri, sipariş yönetimiyle ilgili görevleri otomatikleştirmenize olanak tanır. Böylece Play Console üzerinden manuel kontroller yapma ihtiyacı azalır.
Bu API'nin kullanım alanlarından bazıları şunlardır:
Anlık sipariş verilerini alma: orders.get işlevini kullanarak sipariş kimliğiyle satın alma işleminden hemen sonra sipariş ayrıntılarını ve meta verilerini alın.
Sipariş güncelleme senkronizasyonu: Sipariş bilgilerinin güncel kaydını tutmak için sipariş güncellemelerini düzenli olarak senkronize edin.
Not:
Orders API çağrıları, Play Developer API kotanıza dahil edilir. Bu kotanın varsayılan değeri günlük 200.000'dir ve kapsamlı sipariş geçmişlerini senkronize etmek için yetersiz kalabilir.
Çağrı başına en fazla 1.000 sipariş alınabilir. Kota kullanımını en aza indirmek için daha büyük sayfa boyutları kullanmanız önerilir. Cloud Console'da kotanızı kontrol edin ve gerekirse daha fazla kota isteyin.
| JSON gösterimi |
|---|
{ "lineItems": [ { object ( |
| Alanlar | |
|---|---|
lineItems[] |
Bu siparişi oluşturan ayrı satır öğeleri. |
orderId |
Sipariş kimliği. |
purchaseToken |
Abonelik veya öğe satın alındığında kullanıcının cihazına sağlanan jeton. |
state |
Siparişin durumu. |
createTime |
Siparişin oluşturulduğu zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
lastEventTime |
Siparişle ilgili son etkinliğin gerçekleştiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
buyerAddress |
Vergi hesaplamasında kullanılmak üzere müşterinin adres bilgileri. Google, siparişin kayıtlı satıcısı olduğunda yalnızca ülke gösterilir. |
total |
İndirimler ve vergiler dikkate alınarak müşterinin ödediği nihai tutar. |
tax |
Bu sipariş kapsamında ödenen toplam vergi. |
orderDetails |
Oluşturma sırasındaki siparişle ilgili ayrıntılı bilgiler. |
orderHistory |
Siparişin değiştirildiği etkinliklerle ilgili ayrıntılar. |
developerRevenueInBuyerCurrency |
Kısmi geri ödemeler, vergiler ve ücretler dahil olmak üzere bu sipariş için alıcının para birimindeki geliriniz. Google her satıştan standart işlem ve üçüncü taraf ücretlerini düşer (bazı bölgelerde KDV de düşülür). |
pointsDetails |
Teklif bilgileri, indirim oranı ve puan değerleri dahil olmak üzere siparişe uygulanan Play puanları. |
Eyalet
Siparişin durumu.
| Sıralamalar | |
|---|---|
STATE_UNSPECIFIED |
Durum belirtilmemiş. Bu değer kullanılmaz. |
PENDING |
Sipariş oluşturuldu ve işlenmeyi bekliyor. |
PROCESSED |
Sipariş başarıyla işlendi. |
CANCELED |
Sipariş işlenmeden önce iptal edilmiştir. |
PENDING_REFUND |
İstenen geri ödemenin işlenmesi bekleniyor. |
PARTIALLY_REFUNDED |
Sipariş tutarının bir kısmı geri ödendi. |
REFUNDED |
Sipariş tutarının tamamı geri ödendi. |
BuyerAddress
Vergi hesaplamasında kullanılmak üzere müşterinin adres bilgileri.
| JSON gösterimi |
|---|
{ "buyerState": string, "buyerCountry": string, "buyerPostcode": string } |
| Alanlar | |
|---|---|
buyerState |
Alıcı adresinin bulunduğu ülkenin en üst düzey idari alt bölümü. Google, siparişin kayıtlı satıcısı olduğunda bu bilgiler dahil edilmez. |
buyerCountry |
ISO-3166-1 Alpha-2'ye (BM ülke kodları) dayalı iki harfli ülke kodu. |
buyerPostcode |
Bir adresin posta kodu. Google, siparişin kayıtlı satıcısı olduğunda bu bilgiler dahil edilmez. |
OrderDetails
Oluşturma sırasındaki siparişle ilgili ayrıntılı bilgiler.
| JSON gösterimi |
|---|
{ "taxInclusive": boolean } |
| Alanlar | |
|---|---|
taxInclusive |
Listelenen fiyatın vergi dahil olup olmadığını gösterir. |
LineItem
Satır öğesinin ayrıntıları.
| JSON gösterimi |
|---|
{ "productTitle": string, "productId": string, "listingPrice": { object ( |
| Alanlar | |
|---|---|
productTitle |
Geliştiricinin belirlediği ürün adı. Alıcının yerel ayarında görüntülenir. Örnek: coins, monthly subscription vb. |
productId |
Satın alınan ürünün kimliği veya uygulama içi SKU (örneğin, "monthly001" veya "com.some.thing.inapp1"). |
listingPrice |
Öğenin Play Store'daki listelenen fiyatı. Bu fiyata vergi dahil olabilir veya olmayabilir. İndirimler veya promosyonlar hariçtir. |
total |
İndirimler ve vergi dikkate alınarak bu satır öğesi için kullanıcı tarafından ödenen toplam tutar. |
tax |
Bu satır öğesi için ödenen vergi. |
|
|
oneTimePurchaseDetails |
Tek seferlik satın alma işleminin ayrıntıları. |
subscriptionDetails |
Abonelik satın alma işleminin ayrıntıları. |
paidAppDetails |
Ücretli uygulama satın alma işleminin ayrıntıları. |
OneTimePurchaseDetails
Tek seferlik satın alma işleminin ayrıntıları.
| JSON gösterimi |
|---|
{ "quantity": integer, "offerId": string, "purchaseOptionId": string, "preorderDetails": { object ( |
| Alanlar | |
|---|---|
quantity |
Satın alınan öğelerin sayısı (çoklu miktar öğe satın alma işlemleri için). |
offerId |
Tek seferlik satın alma teklifinin teklif kimliği. |
purchaseOptionId |
Satın alma seçeneğinin kimliği. Bu alan, hem satın alma seçenekleri hem de varyant teklifleri için ayarlanır. Satın alma seçenekleri için bu kimlik, satın alma seçeneğini tanımlar. Varyant teklifleri için bu kimlik, ilişkili satın alma seçeneğini ifade eder ve offerId ile birlikte varyant teklifini tanımlar. |
preorderDetails |
Ön siparişin ayrıntıları. Yalnızca ön sipariş satın alma işlemiyse ayarlayın. |
rentalDetails |
Kiralama satın alma işleminin ayrıntıları. Yalnızca kiralama satın alma işlemiyse ayarlayın. |
PreorderDetails
Bu türde alan yok.
Ön sipariş satın alma işleminin ayrıntıları.
RentalDetails
Bu türde alan yok.
Kiralama satın alma işleminin ayrıntıları.
SubscriptionDetails
Abonelik satın alma işleminin ayrıntıları.
| JSON gösterimi |
|---|
{ "basePlanId": string, "offerId": string, "offerPhase": enum ( |
| Alanlar | |
|---|---|
basePlanId |
Aboneliğin temel plan kimliği. |
offerId |
Mevcut abonelik teklifinin teklif kimliği. |
offerPhase |
Bu siparişle finanse edilen fatura döneminin fiyatlandırma aşaması. Kullanımdan kaldırıldı. Bunun yerine offerPhaseDetails özelliğini kullanın. |
offerPhaseDetails |
Bu siparişle finanse edilen yararlanma dönemi için fiyatlandırma aşaması ayrıntıları. |
servicePeriodStartTime |
Bu siparişle finanse edilen fatura döneminin başlangıcı. Bu, sipariş işlendiği sırada faturalandırma/hizmet döneminin başlangıç zamanının anlık görüntüsüdür ve yalnızca muhasebe için kullanılmalıdır. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
servicePeriodEndTime |
Bu siparişle finanse edilen fatura döneminin sonu. Bu, sipariş işlendiği sırada faturalandırma/hizmet döneminin bitiş zamanının anlık görüntüsüdür ve yalnızca muhasebe için kullanılmalıdır. Abonelik hizmeti döneminin geçerli bitiş zamanını almak için purchases.subscriptionsv2.get yöntemini kullanın. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
OfferPhase
Bu siparişle finanse edilen hak kazanma döneminin fiyatlandırma aşaması.
| Sıralamalar | |
|---|---|
OFFER_PHASE_UNSPECIFIED |
Teklif aşaması belirtilmemiş. Bu değer kullanılmaz. |
BASE |
Sipariş, temel fiyat dönemini finanse eder. |
INTRODUCTORY |
Sipariş, tanıtım fiyatı dönemini finanse eder. |
FREE_TRIAL |
Sipariş, ücretsiz deneme süresini finanse ediyorsa. |
OfferPhaseDetails
Bu siparişle finanse edilen yararlanma dönemi için fiyatlandırma aşamasının ayrıntıları.
| JSON gösterimi |
|---|
{ // Union field |
| Alanlar | |
|---|---|
phase_details birleşik alanı. Fiyatlandırma aşaması ayrıntıları. phase_details aşağıdakilerden yalnızca biri olabilir: |
|
freeTrialDetails |
Sipariş, ücretsiz deneme süresini finanse ediyorsa. |
introductoryPriceDetails |
Sipariş, tanıtım fiyatı dönemini finanse eder. |
baseDetails |
Sipariş, temel fiyat dönemini finanse eder. |
prorationPeriodDetails |
Sipariş, orantılı ödeme dönemini finanse eder. |
FreeTrialDetails
Bu türde alan yok.
Ücretsiz deneme fiyatlandırma aşamasının ayrıntıları.
IntroductoryPriceDetails
Bu türde alan yok.
Tanıtım fiyatı fiyatlandırma aşamasının ayrıntıları.
BaseDetails
Bu türde alan yok.
Taban fiyatlandırma aşamasının ayrıntıları.
ProrationPeriodDetails
Orantılı ödeme döneminin ayrıntıları.
Orantılı dönem, mevcut hakları kapsayacak şekilde plan değişikliği sırasında hesaplanan bir dönem (Daha fazla bilgi için Kullanıcıların aboneliklerini yükseltmesine, düşürmesine veya değiştirmesine izin verme başlıklı makaleyi inceleyin) veya eklenti yenileme tarihlerini temel abonelikle aynı olacak şekilde ayarlamak için kullanılan orantılı bir dönem (Daha fazla bilgi için Satın alma işlemindeki öğeler için geçerli kurallar başlıklı makaleyi inceleyin) olabilir.
| JSON gösterimi |
|---|
{
"originalOfferPhase": enum ( |
| Alanlar | |
|---|---|
originalOfferPhase |
Orantılı ödeme dönemi bunlardan herhangi birini içeriyorsa satın alınan satır öğesindeki orijinal teklif aşamasını temsil edin. Örneğin, CHARGE_FULL_PRICE plan değişikliğinden kaynaklanan orantılı ödeme dönemi, yeni ürün kullanıcısının satın aldığı abonelik teklifinin 1. teklif aşamasıyla birleştirilebilir. Bu durumda, orijinal teklif aşaması burada ayarlanır. |
linkedOrderId |
Plan değişikliğinden önceki orijinal abonelik satın alma işleminin son sipariş kimliği. Bu alan yalnızca bu orantılı ödeme dönemi, önceki abonelikten yükseltme/düşürme işleminden kaynaklanıyorsa ve önceki aboneliğin bağlantılı siparişindeki kalan teklif aşamasını taşıyorsa doldurulur. |
PaidAppDetails
Bu türde alan yok.
Ücretli uygulama satın alma işleminin ayrıntıları.
OrderHistory
Siparişin değiştirildiği etkinliklerle ilgili ayrıntılar.
| JSON gösterimi |
|---|
{ "partialRefundEvents": [ { object ( |
| Alanlar | |
|---|---|
partialRefundEvents[] |
Bu siparişle ilgili kısmi geri ödeme etkinliklerinin ayrıntıları. |
processedEvent |
Siparişin işlendiği zamanla ilgili ayrıntılar. |
cancellationEvent |
Siparişin iptal edildiği zamanla ilgili ayrıntılar. |
refundEvent |
Siparişin tam olarak ne zaman geri ödendiğiyle ilgili ayrıntılar. |
ProcessedEvent
Siparişin işlendiği zamanla ilgili ayrıntılar.
| JSON gösterimi |
|---|
{ "eventTime": string } |
| Alanlar | |
|---|---|
eventTime |
Siparişin işlendiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
CancellationEvent
Siparişin iptal edildiği zamanla ilgili ayrıntılar.
| JSON gösterimi |
|---|
{ "eventTime": string } |
| Alanlar | |
|---|---|
eventTime |
Siparişin iptal edildiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
RefundEvent
Siparişin tam olarak ne zaman geri ödendiğiyle ilgili ayrıntılar.
| JSON gösterimi |
|---|
{ "eventTime": string, "refundDetails": { object ( |
| Alanlar | |
|---|---|
eventTime |
Siparişin tam olarak geri ödendiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
refundDetails |
Tam geri ödeme ayrıntıları |
refundReason |
Sipariş için geri ödeme yapılmasının nedeni. |
RefundDetails
Kısmi veya tam geri ödeme ayrıntıları.
| JSON gösterimi |
|---|
{ "total": { object ( |
| Alanlar | |
|---|---|
total |
Vergi dahil geri ödenen toplam tutar. |
tax |
Geri ödenen vergi tutarı. |
RefundReason
Sipariş için geri ödeme yapılmasının nedeni.
| Sıralamalar | |
|---|---|
REFUND_REASON_UNSPECIFIED |
orders.refund nedeni belirtilmedi. Bu değer kullanılmaz. |
OTHER |
Sipariş için burada listelenen nedenler dışında bir nedenle geri ödeme yapıldı. |
CHARGEBACK |
Sipariş için geri ödeme yapıldı. |
PartialRefundEvent
Bu siparişle ilgili kısmi geri ödeme etkinliklerinin ayrıntıları.
| JSON gösterimi |
|---|
{ "createTime": string, "processTime": string, "state": enum ( |
| Alanlar | |
|---|---|
createTime |
Kısmi geri ödemenin oluşturulduğu zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
processTime |
Kısmi geri ödemenin işlendiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
state |
Kısmi geri ödemenin durumu. |
refundDetails |
Kısmi geri ödemeyle ilgili ayrıntılar. |
Eyalet
Kısmi geri ödemenin durumu.
| Sıralamalar | |
|---|---|
STATE_UNSPECIFIED |
Durum belirtilmemiş. Bu değer kullanılmaz. |
PENDING |
Kısmi geri ödeme oluşturuldu ancak henüz işlenmedi. |
PROCESSED_SUCCESSFULLY |
Kısmi geri ödeme başarıyla işlendi. |
PointsDetails
Siparişlere uygulanan Play Points ile ilgili ayrıntılar.
| JSON gösterimi |
|---|
{
"pointsOfferId": string,
"pointsCouponValue": {
object ( |
| Alanlar | |
|---|---|
pointsOfferId |
Bu sipariş için kullanılan Play puanı teklifine özgü kimlik. |
pointsCouponValue |
Play Points kuponunun parasal değeri. Bu, kuponun sağladığı indirimdir ve toplam tutar olmayabilir. Yalnızca Play Points kuponları kullanıldığında ayarlanır. Örneğin, 2 ABD doları değerinde 100 puanlık bir kupon için bu değer 2 ABD dolarıdır. |
pointsDiscountRateMicros |
Play Points promosyonunun maliyeti düşürdüğü yüzde oranı. Örneğin, 2 ABD doları değerinde 100 puanlık bir kupon için bu değer 500.000'dir. 2 ABD doları için 200 puanlık bir tahmin yapılmış ancak gereken puan sayısı 100 olduğu için bu tahminin% 50'si kadar puan gerekiyor. Mikrolardaki% 50 ise 500.000'dir. 0 ile 1.000.000 arasında. |
pointsSpent |
Bu siparişte kullanılan Play puanlarının sayısı. Örneğin, 2 ABD doları değerinde 100 puanlık bir kupon için bu değer 100'dür. Temel teklifle birlikte kullanılan kupon için bu, her ikisinde de harcanan toplam puan sayısıdır. |
Yöntemler |
|
|---|---|
|
Bir sipariş listesi için sipariş ayrıntılarını alma. |
|
Tek bir siparişin ayrıntılarını alma |
|
Kullanıcının aboneliği veya uygulama içi satın alma siparişi için geri ödeme yapılması |
Hata kodları
Bu kaynağın işlemleri aşağıdaki HTTP hata kodlarını döndürür:
| Hata kodu | Neden | Çözünürlük |
|---|---|---|
5xx |
Google Play sunucusunda genel hata. | İsteğinizi yeniden deneyin.
Sorun devam ederse Google Play hesap yöneticinizle iletişime geçin veya destek isteği gönderin. Bilinen kesintiler için Play Durum Kontrol Paneli'ni kontrol edin. |
409 |
Eşzamanlılık güncelleme hatası.
Güncellenmekte olan bir nesne güncellenmeye çalışıldı. Örneğin, bir satın alma işlemi, Play Faturalandırma Kitaplığı'nın |
İsteğinizi yeniden deneyin. |