- Zasób: Order
- Stan
- BuyerAddress
- OrderDetails
- LineItem
- OneTimePurchaseDetails
- PreorderDetails
- RentalDetails
- SubscriptionDetails
- OfferPhase
- PaidAppDetails
- OrderHistory
- ProcessedEvent
- CancellationEvent
- RefundEvent
- RefundDetails
- RefundReason
- PartialRefundEvent
- Stan
- PointsDetails
- Metody
Zasób: Order
Zasób Order (Zamówienie) zawiera szczegółowe informacje o transakcji dokonanej w Google Play. Zawiera on różne atrybuty, które dostarczają szczegółowych informacji o samym zamówieniu, zakupionych produktach i historii zdarzeń związanych z zamówieniem.
Interfejsy API zamówień zapewniają dostęp w czasie rzeczywistym do danych o zamówieniach w ekosystemie Google Play. Możesz pobierać szczegółowe informacje i metadane zarówno w przypadku zamówień jednorazowych, jak i cyklicznych, w tym szczegóły transakcji, takie jak obciążenia, podatki i zwroty, a także metadane, np. etapy cenowe subskrypcji. Interfejsy Orders API umożliwiają automatyzację zadań związanych z zarządzaniem zamówieniami, co zmniejsza potrzebę ręcznego sprawdzania w Konsoli Play.
Oto niektóre przypadki użycia tego interfejsu API:
- Pobieranie danych zamówienia w czasie rzeczywistym – szczegóły i metadane zamówienia są dostępne natychmiast po zakupie za pomocą identyfikatora zamówienia. 
- Synchronizacja aktualizacji zamówień – okresowa synchronizacja aktualizacji zamówień w celu utrzymania aktualnych informacji o zamówieniach. 
Uwaga:
- Wywołania interfejsu Orders API są wliczane do limitu Play Developer API, który domyślnie wynosi 200 tys. dziennie i może być niewystarczający do synchronizacji rozbudowanej historii zamówień. 
- Każde wywołanie może pobrać maksymalnie 1000 zamówień. Aby zminimalizować wykorzystanie limitu, zalecamy używanie większych rozmiarów stron. Sprawdź limit w Cloud Console i w razie potrzeby poproś o jego zwiększenie. 
| Zapis JSON | 
|---|
| { "lineItems": [ { object ( | 
| Pola | |
|---|---|
| lineItems[] | 
 Poszczególne elementy zamówienia składające się na to zamówienie. | 
| orderId | 
 Identyfikator zamówienia. | 
| purchaseToken | 
 Token przekazany na urządzenie użytkownika w momencie zakupu subskrypcji lub produktu. | 
| state | 
 Stan zamówienia. | 
| createTime | 
 Data i godzina utworzenia zamówienia. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| lastEventTime | 
 Czas ostatniego zdarzenia, które wystąpiło w przypadku zamówienia. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| buyerAddress | 
 Informacje o adresie klienta do obliczania podatku. Gdy Google jest sprzedawcą w przypadku zamówienia, wyświetlany jest tylko kraj. | 
| total | 
 Ostateczna kwota zapłacona przez klienta z uwzględnieniem rabatów i podatków. | 
| tax | 
 Łączna kwota podatku zapłaconego w ramach tego zamówienia. | 
| orderDetails | 
 Szczegółowe informacje o zamówieniu w momencie jego utworzenia. | 
| orderHistory | 
 Szczegóły zdarzeń, które zmodyfikowały zamówienie. | 
| developerRevenueInBuyerCurrency | 
 Przychody uzyskane z tego zamówienia w walucie kupującego, z uwzględnieniem odliczeń za częściowe zwroty środków, podatki i opłaty. Google odejmuje od każdej sprzedaży standardowe opłaty transakcyjne i opłaty dla firm zewnętrznych, w tym VAT w niektórych regionach. | 
| pointsDetails | 
 Punkty Play zastosowane do zamówienia, w tym informacje o ofercie, wysokość rabatu i wartość punktów. | 
Stan
Stan zamówienia.
| Wartości w polu enum | |
|---|---|
| STATE_UNSPECIFIED | Stan nieokreślony. Ta wartość nie jest używana. | 
| PENDING | Zamówienie zostało utworzone i oczekuje na przetworzenie. | 
| PROCESSED | Zamówienie zostało przetworzone. | 
| CANCELED | Zamówienie zostało anulowane przed przetworzeniem. | 
| PENDING_REFUND | Prośba o zwrot środków jest w trakcie realizacji. | 
| PARTIALLY_REFUNDED | Część kwoty zamówienia została zwrócona. | 
| REFUNDED | Zwróciliśmy pełną kwotę zamówienia. | 
BuyerAddress
Informacje o adresie klienta do obliczania podatku.
| Zapis JSON | 
|---|
| { "buyerState": string, "buyerCountry": string, "buyerPostcode": string } | 
| Pola | |
|---|---|
| buyerState | 
 Najwyższy poziom podziału administracyjnego kraju adresu kupującego. Gdy Google jest sprzedawcą w przypadku zamówienia, te informacje nie są uwzględniane. | 
| buyerCountry | 
 Dwuliterowy kod kraju zgodny z normą ISO-3166-1 alfa-2 (kody krajów ONZ). | 
| buyerPostcode | 
 Kod pocztowy adresu. Gdy Google jest sprzedawcą w przypadku zamówienia, te informacje nie są uwzględniane. | 
OrderDetails
Szczegółowe informacje o zamówieniu w momencie jego utworzenia.
| Zapis JSON | 
|---|
| { "taxInclusive": boolean } | 
| Pola | |
|---|---|
| taxInclusive | 
 Wskazuje, czy podana cena zawierała podatek. | 
LineItem
Szczegóły elementu zamówienia.
| Zapis JSON | 
|---|
| { "productTitle": string, "productId": string, "listingPrice": { object ( | 
| Pola | |
|---|---|
| productTitle | 
 Nazwa produktu określona przez dewelopera. Wyświetlana w języku kupującego. Przykład: monety, subskrypcja miesięczna itp. | 
| productId | 
 Identyfikator zakupionego produktu lub kod SKU w aplikacji (np. „monthly001” lub „com.some.thing.inapp1”). | 
| listingPrice | 
 Cena produktu w Sklepie Play. Może zawierać podatek lub nie. Nie uwzględnia rabatów ani promocji. | 
| total | 
 Łączna kwota zapłacona przez użytkownika za ten element zamówienia z uwzględnieniem rabatów i podatku. | 
| tax | 
 Podatek zapłacony za ten element zamówienia. | 
| Pole zbiorcze  Pole  | |
| oneTimePurchaseDetails | 
 Szczegóły jednorazowego zakupu. | 
| subscriptionDetails | 
 Szczegóły zakupu subskrypcji. | 
| paidAppDetails | 
 Szczegóły zakupu płatnej aplikacji. | 
OneTimePurchaseDetails
Szczegóły jednorazowego zakupu.
| Zapis JSON | 
|---|
| { "quantity": integer, "offerId": string, "purchaseOptionId": string, "preorderDetails": { object ( | 
| Pola | |
|---|---|
| quantity | 
 Liczba kupionych produktów (w przypadku zakupu większej liczby produktów). | 
| offerId | 
 Identyfikator oferty zakupu jednorazowego. | 
| purchaseOptionId | 
 Identyfikator opcji zakupu. To pole jest ustawione zarówno dla opcji zakupu, jak i ofert wariantów. W przypadku opcji zakupu ten identyfikator określa samą opcję zakupu. W przypadku ofert wariantowych ten identyfikator odnosi się do powiązanej opcji zakupu i w połączeniu z offerId identyfikuje ofertę wariantową. | 
| preorderDetails | 
 Szczegóły zamówienia w przedsprzedaży. Ustaw tylko wtedy, gdy jest to zakup w przedsprzedaży. | 
| rentalDetails | 
 Szczegóły zakupu wypożyczenia. Ustawiana tylko w przypadku zakupu wypożyczenia. | 
PreorderDetails
Ten typ nie ma pól.
Szczegóły zakupu w przedsprzedaży.
RentalDetails
Ten typ nie ma pól.
Szczegóły zakupu wypożyczenia.
SubscriptionDetails
Szczegóły zakupu subskrypcji.
| Zapis JSON | 
|---|
| {
  "basePlanId": string,
  "offerId": string,
  "offerPhase": enum ( | 
| Pola | |
|---|---|
| basePlanId | 
 Identyfikator abonamentu podstawowego. | 
| offerId | 
 Identyfikator oferty bieżącej subskrypcji. | 
| offerPhase | 
 Etap cenowy okresu rozliczeniowego finansowanego przez to zamówienie. | 
| servicePeriodStartTime | 
 Początek okresu rozliczeniowego finansowanego przez to zamówienie. Jest to moment rozpoczęcia okresu rozliczeniowego lub okresu świadczenia usług w chwili przetwarzania zamówienia. Należy go używać tylko do celów księgowych. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| servicePeriodEndTime | 
 Koniec okresu rozliczeniowego finansowanego przez to zamówienie. Jest to zrzut czasu zakończenia okresu rozliczeniowego lub okresu świadczenia usługi w momencie przetwarzania zamówienia. Należy go używać tylko do celów księgowych. Aby uzyskać aktualny czas zakończenia okresu subskrypcji, użyj metody purchases.subscriptionsv2.get. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
OfferPhase
Etap cenowy okresu uprawnień finansowanego przez to zamówienie.
| Wartości w polu enum | |
|---|---|
| OFFER_PHASE_UNSPECIFIED | Nieokreślona faza oferty. Ta wartość nie jest używana. | 
| BASE | Zamówienie finansuje okres ceny podstawowej. | 
| INTRODUCTORY | Zamówienie finansuje okres ceny dla nowych subskrybentów. | 
| FREE_TRIAL | Zamówienie finansuje bezpłatny okres próbny. | 
PaidAppDetails
Ten typ nie ma pól.
Szczegóły zakupu płatnej aplikacji.
OrderHistory
Szczegóły zdarzeń, które zmodyfikowały zamówienie.
| Zapis JSON | 
|---|
| { "partialRefundEvents": [ { object ( | 
| Pola | |
|---|---|
| partialRefundEvents[] | 
 Szczegóły zdarzeń związanych z częściowym zwrotem środków za to zamówienie. | 
| processedEvent | 
 Szczegóły dotyczące czasu realizacji zamówienia. | 
| cancellationEvent | 
 Szczegóły anulowania zamówienia. | 
| refundEvent | 
 Szczegóły dotyczące pełnego zwrotu środków za zamówienie. | 
ProcessedEvent
Szczegóły dotyczące czasu realizacji zamówienia.
| Zapis JSON | 
|---|
| { "eventTime": string } | 
| Pola | |
|---|---|
| eventTime | 
 Czas przetworzenia zamówienia. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
CancellationEvent
Szczegóły anulowania zamówienia.
| Zapis JSON | 
|---|
| { "eventTime": string } | 
| Pola | |
|---|---|
| eventTime | 
 Data i godzina anulowania zamówienia. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
RefundEvent
Szczegóły dotyczące pełnego zwrotu środków za zamówienie.
| Zapis JSON | 
|---|
| { "eventTime": string, "refundDetails": { object ( | 
| Pola | |
|---|---|
| eventTime | 
 Data i godzina pełnego zwrotu środków za zamówienie. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| refundDetails | 
 Szczegóły pełnego zwrotu środków. | 
| refundReason | 
 Powód zwrotu środków za zamówienie. | 
RefundDetails
Szczegóły dotyczące częściowego lub pełnego zwrotu środków.
| Zapis JSON | 
|---|
| { "total": { object ( | 
| Pola | |
|---|---|
| total | 
 łączna kwota zwrotu środków, w tym podatek; | 
| tax | 
 Kwota zwróconego podatku. | 
RefundReason
Powód zwrotu środków za zamówienie.
| Wartości w polu enum | |
|---|---|
| REFUND_REASON_UNSPECIFIED | orders.refund reason unspecified. Ta wartość nie jest używana. | 
| OTHER | Zwrot środków został przyznany z innego powodu niż wymienione tutaj. | 
| CHARGEBACK | Zamówienie zostało obciążone zwrotnie. | 
PartialRefundEvent
Szczegóły zdarzeń związanych z częściowym zwrotem środków za to zamówienie.
| Zapis JSON | 
|---|
| { "createTime": string, "processTime": string, "state": enum ( | 
| Pola | |
|---|---|
| createTime | 
 Czas utworzenia częściowego zwrotu środków. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| processTime | 
 Czas przetworzenia częściowego zwrotu środków. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady:  | 
| state | 
 Stan częściowego zwrotu środków. | 
| refundDetails | 
 Szczegóły częściowego zwrotu środków. | 
Stan
Stan częściowego zwrotu środków.
| Wartości w polu enum | |
|---|---|
| STATE_UNSPECIFIED | Stan nieokreślony. Ta wartość nie jest używana. | 
| PENDING | Częściowy zwrot środków został utworzony, ale nie został jeszcze przetworzony. | 
| PROCESSED_SUCCESSFULLY | Częściowy zwrot środków został zrealizowany. | 
PointsDetails
Szczegóły dotyczące punktów Play zastosowanych w zamówieniu.
| Zapis JSON | 
|---|
| {
  "pointsOfferId": string,
  "pointsCouponValue": {
    object ( | 
| Pola | |
|---|---|
| pointsOfferId | 
 Unikalny identyfikator oferty punktów Play użytej w tym zamówieniu. | 
| pointsCouponValue | 
 Wartość pieniężna kuponu Play Points. Jest to rabat zapewniany przez kupon, który może nie być kwotą całkowitą. Ustawiana tylko wtedy, gdy użyto kuponów w Play Points. Np. w przypadku kuponu na 100 punktów za 2 zł jest to 2 zł. | 
| pointsDiscountRateMicros | 
 Wartość procentowa, o którą promocja w Play Points obniża koszt. Np. w przypadku kuponu na 100 punktów za 2 zł jest to 500 tys. Szacunkowa liczba punktów za 2 PLN wynosi 200, ale rzeczywista liczba punktów, czyli 100, to 50% tej wartości, a 50% w mikro to 500 000. Od 0 do 1 000 000. | 
| pointsSpent | 
 Liczba punktów Play zastosowanych w tym zamówieniu. Np. w przypadku kuponu na 100 punktów za 2 zł jest to 100. W przypadku kuponu połączonego z ofertą podstawową jest to łączna liczba punktów wydanych na obie oferty. | 
| Metody | |
|---|---|
| 
 | Wyświetlanie szczegółów zamówienia dla listy zamówień. | 
| 
 | Wyświetlanie szczegółów pojedynczego zamówienia. | 
| 
 | Zwraca środki za subskrypcję lub zamówienie zakupu w aplikacji. | 
Kody błędów
Operacje na tym zasobie zwracają te kody błędów HTTP:
| Kod błędu | Przyczyna | Rozdzielczość | 
|---|---|---|
| 5xx | Ogólny błąd serwera Google Play. | Ponów żądanie. Jeśli problem nie ustąpi, skontaktuj się z menedżerem konta Google Play lub prześlij prośbę o pomoc. Sprawdź Panel stanu Google Play, aby dowiedzieć się, czy występują znane awarie. | 
| 409 | Błąd aktualizacji współbieżnej. Podjęto próbę zaktualizowania obiektu, który jest aktualizowany. Na przykład zakup jest potwierdzany przez jednoczesne wywołanie metody  | Ponów żądanie. |