REST Resource: orders

Ressource : Order

La ressource Order contient des informations complètes sur une transaction effectuée sur Google Play. Il inclut différents attributs qui fournissent des informations sur la commande elle-même, les produits achetés et l'historique des événements liés à la commande.

Les API Orders permettent d'accéder en temps réel à vos données de commandes dans l'écosystème Google Play. Vous pouvez récupérer des informations détaillées et des métadonnées pour les commandes ponctuelles et récurrentes, y compris les détails des transactions comme les frais, les taxes et les remboursements, ainsi que les métadonnées telles que les phases de tarification pour les abonnements. Les API Orders vous permettent d'automatiser les tâches liées à la gestion des commandes, ce qui réduit le besoin de vérifications manuelles via la Play Console.

Voici quelques cas d'utilisation de cette API :

  • Récupération des données de commande en temps réel : récupérez les détails et les métadonnées d'une commande immédiatement après un achat à l'aide d'un ID de commande.

  • Synchronisation des mises à jour de commandes : synchronisez régulièrement les mises à jour de commandes pour tenir à jour les informations sur les commandes.

Remarque :

  • Les appels à l'API Orders sont comptabilisés dans votre quota d'API Play Developer, qui est de 200 000 par jour par défaut. Cela peut être insuffisant pour synchroniser des historiques de commandes volumineux.

  • Vous pouvez récupérer jusqu'à 1 000 commandes par appel. Il est recommandé d'utiliser des tailles de page plus importantes pour minimiser l'utilisation du quota. Vérifiez votre quota dans la console Cloud et demandez-en davantage si nécessaire.

Représentation JSON
{
  "lineItems": [
    {
      object (LineItem)
    }
  ],
  "orderId": string,
  "purchaseToken": string,
  "state": enum (State),
  "createTime": string,
  "lastEventTime": string,
  "buyerAddress": {
    object (BuyerAddress)
  },
  "total": {
    object (Money)
  },
  "tax": {
    object (Money)
  },
  "orderDetails": {
    object (OrderDetails)
  },
  "orderHistory": {
    object (OrderHistory)
  },
  "developerRevenueInBuyerCurrency": {
    object (Money)
  },
  "pointsDetails": {
    object (PointsDetails)
  }
}
Champs
lineItems[]

object (LineItem)

Éléments de campagne individuels composant cette commande.

orderId

string

ID de la commande.

purchaseToken

string

Jeton fourni à l'appareil de l'utilisateur lors de la souscription de l'abonnement ou de l'achat de l'article.

state

enum (State)

État de la commande.

createTime

string (Timestamp format)

Date et heure auxquelles la commande a été créée.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastEventTime

string (Timestamp format)

Heure du dernier événement survenu pour la commande.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

buyerAddress

object (BuyerAddress)

Informations sur l'adresse du client, à utiliser pour le calcul des taxes. Lorsque Google est le marchand officiel de la commande, seul le pays est indiqué.

total

object (Money)

Montant final payé par le client, en tenant compte des remises et des taxes.

tax

object (Money)

Montant total des taxes payées pour cette commande.

orderDetails

object (OrderDetails)

Informations détaillées sur la commande au moment de sa création.

orderHistory

object (OrderHistory)

Détails sur les événements qui ont modifié la commande.

developerRevenueInBuyerCurrency

object (Money)

Revenus générés par cette commande dans la devise de l'acheteur, y compris les déductions liées aux remboursements partiels, aux taxes et aux frais. Google déduit les frais de transaction standards et les frais tiers de chaque vente, y compris la TVA dans certaines régions.

pointsDetails

object (PointsDetails)

Points Play appliqués à la commande, y compris les informations sur l'offre, le taux de remise et les valeurs des points.

État

État de la commande.

Enums
STATE_UNSPECIFIED État non spécifié. Cette valeur n'est pas utilisée.
PENDING La commande a été créée et est en attente de traitement.
PROCESSED La commande a bien été traitée.
CANCELED La commande a été annulée avant d'être traitée.
PENDING_REFUND Le remboursement demandé est en attente de traitement.
PARTIALLY_REFUNDED Une partie du montant de la commande a été remboursée.
REFUNDED Le montant total de la commande a été remboursé.

BuyerAddress

Informations sur l'adresse du client, à utiliser pour le calcul des taxes.

Représentation JSON
{
  "buyerState": string,
  "buyerCountry": string,
  "buyerPostcode": string
}
Champs
buyerState

string

Sous-division administrative de niveau supérieur du pays de l'adresse de l'acheteur. Ces informations ne sont pas incluses lorsque Google est le marchand agréé pour la commande.

buyerCountry

string

Code pays à deux lettres basé sur la norme ISO-3166-1 Alpha-2 (codes pays de l'ONU).

buyerPostcode

string

Code postal d'une adresse. Ces informations ne sont pas incluses lorsque Google est le marchand agréé pour la commande.

OrderDetails

Informations détaillées sur la commande au moment de sa création.

Représentation JSON
{
  "taxInclusive": boolean
}
Champs
taxInclusive

boolean

Indique si le prix indiqué inclut les taxes ou non.

LineItem

Détails d'un élément de campagne.

Représentation JSON
{
  "productTitle": string,
  "productId": string,
  "listingPrice": {
    object (Money)
  },
  "total": {
    object (Money)
  },
  "tax": {
    object (Money)
  },

  // Union field details can be only one of the following:
  "oneTimePurchaseDetails": {
    object (OneTimePurchaseDetails)
  },
  "subscriptionDetails": {
    object (SubscriptionDetails)
  },
  "paidAppDetails": {
    object (PaidAppDetails)
  }
  // End of list of possible types for union field details.
}
Champs
productTitle

string

Nom du produit indiqué par le développeur. et affiché dans la langue de l'acheteur. Exemple : pièces, abonnement mensuel, etc.

productId

string

ID du produit ou SKU intégré acheté (par exemple, &39;monthly001' ou 'com.some.thing.inapp1').

listingPrice

object (Money)

Prix catalogue de l'article sur le Play Store. Il peut inclure ou non les taxes. Exclut les remises ou promotions.

total

object (Money)

Montant total payé par l'utilisateur pour cet élément de ligne, en tenant compte des remises et des taxes.

tax

object (Money)

Taxe payée pour cet élément de ligne.

Champ d'union details.

details ne peut être qu'un des éléments suivants :

oneTimePurchaseDetails

object (OneTimePurchaseDetails)

Détails d'un achat unique.

subscriptionDetails

object (SubscriptionDetails)

Informations sur un achat d'abonnement.

paidAppDetails

object (PaidAppDetails)

Détails d'un achat d'application payante.

OneTimePurchaseDetails

Détails d'un achat unique.

Représentation JSON
{
  "quantity": integer,
  "offerId": string,
  "purchaseOptionId": string,
  "rentalDetails": {
    object (RentalDetails)
  }
}
Champs
quantity

integer

Nombre d'articles achetés (pour les achats d'articles en quantité multiple).

offerId

string

ID de l'offre d'achat ponctuel.

purchaseOptionId

string

ID de l'option d'achat. Ce champ est défini pour les options d'achat et les offres de variantes. Pour les options d'achat, cet ID identifie l'option d'achat elle-même. Pour les offres de variantes, cet ID fait référence à l'option d'achat associée et, associé à offerId, il identifie l'offre de variante.

rentalDetails

object (RentalDetails)

Détails d'un achat de location. Ne définissez cette valeur que s'il s'agit d'un achat de location.

RentalDetails

Ce type ne comporte aucun champ.

Informations sur un achat de location.

SubscriptionDetails

Informations sur un achat d'abonnement.

Représentation JSON
{
  "basePlanId": string,
  "offerId": string,
  "offerPhase": enum (OfferPhase),
  "servicePeriodStartTime": string,
  "servicePeriodEndTime": string
}
Champs
basePlanId

string

ID du forfait de base de l'abonnement.

offerId

string

ID de l'offre d'abonnement actuelle.

offerPhase

enum (OfferPhase)

Phase de tarification pour la période de facturation financée par cette commande.

servicePeriodStartTime

string (Timestamp format)

Début de la période de facturation financée par cette commande. Il s'agit d'un instantané de l'heure de début de la période de facturation/du service au moment où la commande a été traitée. Il ne doit être utilisé qu'à des fins comptables.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

servicePeriodEndTime

string (Timestamp format)

Fin de la période de facturation financée par cette commande. Il s'agit d'un instantané de l'heure de fin de la période de facturation/de service au moment où la commande a été traitée. Il ne doit être utilisé que pour la comptabilité. Pour obtenir l'heure de fin actuelle de la période de service de l'abonnement, utilisez purchases.subscriptionsv2.get.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

OfferPhase

Phase de tarification pour la période de droits d'accès financée par cette commande.

Enums
OFFER_PHASE_UNSPECIFIED Phase de l'offre non spécifiée. Cette valeur n'est pas utilisée.
BASE La commande finance une période de prix de base.
INTRODUCTORY La commande finance une période de prix de lancement.
FREE_TRIAL La commande finance une période d'essai sans frais.

PaidAppDetails

Ce type ne comporte aucun champ.

Détails d'un achat d'application payante.

OrderHistory

Détails sur les événements qui ont modifié la commande.

Représentation JSON
{
  "partialRefundEvents": [
    {
      object (PartialRefundEvent)
    }
  ],
  "processedEvent": {
    object (ProcessedEvent)
  },
  "cancellationEvent": {
    object (CancellationEvent)
  },
  "refundEvent": {
    object (RefundEvent)
  }
}
Champs
partialRefundEvents[]

object (PartialRefundEvent)

Détails des événements de remboursement partiel pour cette commande.

processedEvent

object (ProcessedEvent)

Détails sur le traitement de la commande.

cancellationEvent

object (CancellationEvent)

Informations sur la date et l'heure d'annulation de la commande.

refundEvent

object (RefundEvent)

Date et heure auxquelles la commande a été entièrement remboursée.

ProcessedEvent

Détails sur le traitement de la commande.

Représentation JSON
{
  "eventTime": string
}
Champs
eventTime

string (Timestamp format)

Date et heure auxquelles la commande a été traitée.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

CancellationEvent

Informations sur la date et l'heure d'annulation de la commande.

Représentation JSON
{
  "eventTime": string
}
Champs
eventTime

string (Timestamp format)

Date et heure auxquelles la commande a été annulée.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

RefundEvent

Date et heure auxquelles la commande a été entièrement remboursée.

Représentation JSON
{
  "eventTime": string,
  "refundDetails": {
    object (RefundDetails)
  },
  "refundReason": enum (RefundReason)
}
Champs
eventTime

string (Timestamp format)

Date et heure auxquelles la commande a été intégralement remboursée.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

refundDetails

object (RefundDetails)

Détails du remboursement intégral.

refundReason

enum (RefundReason)

Raison du remboursement de la commande.

RefundDetails

Informations sur un remboursement partiel ou total.

Représentation JSON
{
  "total": {
    object (Money)
  },
  "tax": {
    object (Money)
  }
}
Champs
total

object (Money)

Montant total remboursé, taxes comprises.

tax

object (Money)

Montant des taxes remboursées.

RefundReason

Raison du remboursement de la commande.

Enums
REFUND_REASON_UNSPECIFIED orders.refund reason unspecified. Cette valeur n'est pas utilisée.
OTHER La commande a été remboursée pour une raison autre que celles listées ici.
CHARGEBACK La commande a été rejetée.

PartialRefundEvent

Détails des événements de remboursement partiel pour cette commande.

Représentation JSON
{
  "createTime": string,
  "processTime": string,
  "state": enum (State),
  "refundDetails": {
    object (RefundDetails)
  }
}
Champs
createTime

string (Timestamp format)

Heure à laquelle le remboursement partiel a été créé.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

processTime

string (Timestamp format)

Heure à laquelle le remboursement partiel a été traité.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

state

enum (State)

État du remboursement partiel.

refundDetails

object (RefundDetails)

Détails du remboursement partiel.

État

État du remboursement partiel.

Enums
STATE_UNSPECIFIED État non spécifié. Cette valeur n'est pas utilisée.
PENDING Le remboursement partiel a été créé, mais pas encore traité.
PROCESSED_SUCCESSFULLY Le remboursement partiel a bien été traité.

PointsDetails

Détails concernant les points Play appliqués à une commande.

Représentation JSON
{
  "pointsOfferId": string,
  "pointsCouponValue": {
    object (Money)
  },
  "pointsDiscountRateMicros": string,
  "pointsSpent": string
}
Champs
pointsOfferId

string

ID unique de l'offre de points Play utilisée pour cette commande.

pointsCouponValue

object (Money)

Valeur monétaire d'un bon de réduction Play Points. Il s'agit de la remise accordée par le bon de réduction, qui peut ne pas correspondre au montant total. Défini uniquement lorsque des bons de réduction Play Points ont été utilisés. Par exemple, pour un bon de réduction de 2 € pour 100 points, la valeur est de 2 €.

pointsDiscountRateMicros

string (int64 format)

Taux de pourcentage selon lequel la promotion Play Points réduit le coût. Par exemple, pour un bon de réduction de 2 $pour 100 points,la valeur est de 500 000. Étant donné que 2 $représentent environ 200 points, mais que le nombre de points requis (100) correspond à 50 % de cette valeur, et que 50 % en micros équivaut à 500 000. Entre 0 et 1 000 000.

pointsSpent

string (int64 format)

Nombre de points Play appliqués à cette commande. Par exemple, pour un bon de réduction de 2 $pour 100 points, la valeur est de 100. Pour un bon cumulé avec une offre de base, il s'agit du nombre total de points dépensés pour les deux.

Méthodes

batchget

Obtenez les détails d'une liste de commandes.

get

Obtenez les détails d'une seule commande.

refund

Rembourse la commande d'abonnement ou d'achat via une application d'un utilisateur.