

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Flux de données d'événement de facturation
<a name="data-feed-billing-event"></a>

Ce flux de données fournit des informations sur les événements de facturation, y compris la facturation et les débours. 

Par exemple, vous pouvez utiliser ce flux de données pour savoir quand et pour quoi un acheteur est facturé. Vous pouvez également utiliser l'[exemple de requêtes SQL](#data-feeds-billing-event-query-examples) pour analyser les données de ce flux de données.

Ce flux de données contient des informations associées aux événements de facturation pour lesquels vous êtes le vendeur inscrit. Pour les accords conclus par l'intermédiaire de partenaires de distribution, ce flux de données contient des informations sur les événements de facturation enregistrés entre le fabricant et le vendeur.

Le flux de données d'événement de facturation est actualisé toutes les 24 heures, de sorte que de nouvelles données sont disponibles tous les jours.

Les données d'événement de facturation sont immuables. 

Le tableau suivant explique les noms et les descriptions des colonnes du flux de données. 


| Nom de la colonne  | Description  | 
| --- | --- | 
| billing\_event\_id | Identificateur d'un événement de facturation. Cet ID est unique dans l'environnement du vendeur.  | 
| from\_account\_id | Compte qui a initié l'événement de facturation. Si `transaction_type` est `SELLER_REV_SHARE`, il s'agit du compte payeur de l'acheteur. Il s'agit d'une clé étrangère du flux de données du [compte](data-feed-account.md).<br />Peut être utilisé pour rejoindre le flux de `Account` données sur le `account_id` terrain. | 
| to\_account\_id | Compte qui reçoit le montant du mouvement pour le produit. Il s'agit d'une clé étrangère du flux de données du compte.Peut être utilisé pour rejoindre le flux de `Account` données sur le `account_id` terrain. | 
| end\_user\_account\_id | Compte qui utilise le produit. Ce compte peut être différent des comptes acheteur et payeur.Peut être utilisé pour rejoindre le flux de `Account` données sur le `account_id` terrain. | 
| product\_id | Identificateur de chemin du produit. Il s'agit d'une clé étrangère du flux de données du [produit](data-feed-product.md).Peut être utilisé pour rejoindre le flux de `Product` données sur le `product_id` terrain. | 
| action | Type d'action pour cet événement. Les valeurs possibles sont les suivantes :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html) | 
| transaction\_type | Type de transaction. Pour obtenir des exemples, consultez [Scénarios de taxation](#data-feeds-billing-event-tax-examples). Les valeurs possibles sont les suivantes : [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html) | 
| parent\_billing\_event\_id | Lorsque la valeur de `broker_id` is`AWS_INC`, la valeur de `action` is `DISBURSED` ou`FORGIVEN`, et la valeur de `transaction_type` is`DISBURSEMENT`, `parent_billing_event_id` font référence à l'original à l'origine de `billing_event_id` cet événement de facturation. Si `action` a une autre valeur, ce champ est null. <br />Lorsque la valeur de `broker_id` est`AWS_EUROPE`, elle `parent_billing_event_id` fait référence à l'original `billing_event_id` à l'origine de cet événement de facturation dans les scénarios suivants : [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html)<br />Lorsque la valeur de `broker_id` est`AWS_EUROPE`, elle `parent_billing_event_id` fait référence à l'original `billing_event_id` du précédent événement de facturation des versements réussi dans le scénario suivant :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html)<br />Lorsque la valeur de `broker_id` est est`AWS_EUROPE`, ce champ est nul pour tous les scénarios restants. | 
| disbursement\_billing\_event\_id | Le décaissement correspondant lorsque la valeur de `action` est `DISBURSED` et que l'une des conditions suivantes est vraie : [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html)<br />Dans tous les autres scénarios, cette valeur est nulle. | 
| montant | Montant de l'événement de facturation.  | 
| currency | Le code de devise ISO 639. | 
| montant\_décaissement | Le montant du déboursement. Pour les scénarios de double facturation, ce champ contient le montant du versement. Pour les scénarios de facturation unifiée, ce champ est nul. | 
| monnaie\_de versement | Le code de devise ISO 639 pour le montant du versement. Pour les scénarios de double facturation, ce champ contient le code de devise du versement. Pour les scénarios de facturation unifiée, ce champ est nul. | 
| balance\_impacting | Si le montant est pris en compte dans le calcul des débours du vendeur. Une valeur de 0 indique que le montant est mentionné à titre informatif et n'a aucun effet sur le solde. Une valeur de 1 indique que ce montant est pris en compte pour déterminer les débours du vendeur.  | 
| invoice\_date | Date de création de la facture. | 
| payment\_due\_date | Lorsque la valeur de `action` est`INVOICED`, la date d'échéance de la facture. | 
| usage\_period\_start\_date | Date de début de la période de l'enregistrement. | 
| usage\_period\_end\_date | Date de fin de la période de l'enregistrement. | 
| invoice\_id | Le numéro AWS de facture. | 
| billing\_address\_id | Référence de l'adresse de facturation du payeur dans le flux de données d'adresse.Peut être utilisé pour rejoindre le flux de `Address` données sur le `address_id` terrain. | 
| transaction\_reference\_id | Identificateur qui vous permet de recouper les données des rapports suivants :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html) | 
| bank\_trace\_id | Pour les transactions de versement (`transaction_type`=is `DISBURSEMENT` et action est`DISBURSED`), le numéro de suivi attribué par la banque. L'identifiant de trace peut être utilisé pour établir une corrélation avec les rapports fournis par la banque du vendeur. | 
| identifiant\_courtier | Identifiant de l'entité commerciale qui a facilité la transaction. Les valeurs possibles sont les suivantes :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html) | 
| identifiant\_référence\_de\_transaction de l'acheteur | Identifiant qui regroupe tous les enregistrements associés du flux de facturation à l'aide `GROUP BY` de la structure des fonctions de fenêtre en SQL. Ces enregistrements connexes peuvent contenir la facture de l'acheteur, la facture du vendeur et les taxes sur la valeur ajoutée (VATs) sur les frais de mise en vente. | 
| date\_action | Date à laquelle l'événement de transaction s'est produit. La date précise dépend du type d'action :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/marketplace/latest/userguide/data-feed-billing-event.html) | 
| identifiant\_compte\_destinataire | Le compte du vendeur qui reçoit les données dans les flux. <br />Peut être utilisé pour rejoindre le flux de `Account` données sur le `account_id` terrain. | 
| offer\_id | L'identifiant convivial de l'offre associé à la ligne de facture de l'acheteur.<br />Peut être utilisé pour rejoindre le flux de `Offer` données sur le `offer_id` terrain. | 
| date\_de\_facture de l'acheteur | Date de facturation de la ligne de facture de l'acheteur associée. | 
| line\_item\_id | L'identifiant de la ligne de facture, au moment de la granularité du versement. | 
| buyer\_line\_item\_id | Numéro de ligne de facture de l'acheteur au moment de la granularité du versement. | 
| variante de charge | Indique ce qui est acheté ou vendu.  | 
| charge\_side | Indique si le vendeur achète ou vend la variante de facturation.  | 

## Scénarios de taxation
<a name="data-feeds-billing-event-tax-examples"></a>

Le modèle de taxation qui est en place pour le pays et l'état de l'acheteur et du vendeur dicte la façon dont les taxes sont perçues et remises. Voici les scénarios possibles :
+ Les taxes sont collectées et versées par AWS. Dans ces cas, `transaction_type` est `AWS_TAX_SHARE`. 
+ Les taxes sont collectées par le vendeur AWS, versées au vendeur et remises par le vendeur aux autorités fiscales. Dans ces cas, `transaction_type` est `SELLER_TAX_SHARE`.
+ Les taxes ne sont pas collectées par AWS. Le vendeur doit calculer les taxes et les remettre aux autorités fiscales. Dans ces cas, AWS Marketplace n'effectue pas de calculs fiscaux et ne reçoit pas d'informations fiscales. Le vendeur paie les impôts sur la part des revenus.

## Exemples de flux de données d'événements de facturation
<a name="data-feed-billing-event-sample-scenario"></a>

Cette section présente des exemples de la période de données de l'événement de facturation au moment de la facturation et un mois plus tard. Notez ce qui suit pour tous les tableaux de cette section : 
+ Dans les flux de données, les valeurs `billing_event_id` sont des chaînes alphanumériques de 40 caractères. Elles sont affichées ici sous forme de chaînes à deux caractères pour la lisibilité. 
+ Dans le flux de données, ces informations sont présentées dans un seul tableau. Pour plus de lisibilité, les données sont présentées ici dans plusieurs tableaux et toutes les colonnes ne sont pas affichées. 

Pour les exemples présentés dans cette section, supposons ce qui suit : 
+ Arnav est l'acheteur.
  + Son ID de compte est `737399998888`.
  + Il est situé en France, où il est assujetti aux lois sur les facilitateurs du marché. Pour de plus amples informations, veuillez consulter l'[aide fiscale d'Amazon Web Service](https://aws.amazon.com/tax-help/).
  + Il a acheté `prod-o4grxfafcxxxx` et reçu une facture de 120,60 USD pour son utilisation mensuelle de ce produit.
  + Il a payé la facture au cours du mois.
+ Jane est le fabricant.
  + Son ID de compte est `111122223333`.
+ Paulo est le vendeur de disques.
  + Son ID de compte est `777788889999`. 
  + Il vit au Kansas, qui n'est pas soumis aux lois sur les facilitateurs du marché. 

### Flux de données d'événement de facturation pour le vendeur enregistré
<a name="billing-event-example-seller-of-record"></a>

En tant que vendeur officiel, Paulo facture l'acheteur, Arnav. 

Les tableaux suivants montrent les informations pertinentes dans le flux de données de Paulo lorsqu'il facture Arnav.


| billing\_event\_id  | from\_account\_id  | to\_account\_id  | end\_user\_account\_id | product\_id | action | transaction\_type | 
| --- | --- | --- | --- | --- | --- | --- | 
| I0 | 737399998888 | 777788889999 | 737399998888 | prod-o4grxfafcxxxx | FACTURÉ | SELLER\_REV\_SHARE | 
| I1 | 737399998888 | AWS | 737399998888 | prod-o4grxfafcxxxx | FACTURÉ | AWS\_TAX\_PARTAGER | 
| I2 | 777788889999 | 111122223333 | 737399998888 | prod-o4grxfafcxxxx | FACTURÉ | SELLER\_REV\_SHARE | 
| I3 | 777788889999 | AWS | 737399998888 | prod-o4grxfafcxxxx | FACTURÉ | AWS\_REV\_PARTAGER | 




| parent\_billing\_event\_id | disbursement\_billing\_event\_id | amount | devise | invoice\_date | invoice\_id | 
| --- | --- | --- | --- | --- | --- | 
|  |  | 100 | USD | 2018-12-31T00:00:00Z | 781216640 | 
|  |  | 20,6 | USD | 2018-12-31T00:00:00Z | 781216640 | 
|  |  | -80 | USD | 2018-12-31T00:04:07Z | 788576665 | 
|  |  | -0,2 | USD | 2018-12-31T00:04:07Z | 788576665 | 

Les tableaux suivants présentent les informations pertinentes dans le flux de données de Paulo à la fin du mois, après le paiement de la facture par Arnav.


| billing\_event\_id  | from\_account\_id  | to\_account\_id  | end\_user\_account\_id | product\_id | action | transaction\_type | 
| --- | --- | --- | --- | --- | --- | --- | 
| I10 | 737399998888 | 777788889999 | 737399998888 |  | DÉCAISSÉS | SELLER\_REV\_SHARE | 
| I12 | 777788889999 | 111122223333 | 737399998888 |  | DÉCAISSÉS | SELLER\_REV\_SHARE | 
| I13 | 777788889999 | AWS | 737399998888 | prod-o4grxfafcxxxx | DÉCAISSÉS | AWS\_REV\_PARTAGER | 
| I14 | AWS | 777788889999 |  |  | DÉCAISSÉS | DÉCAISSEMENT | 




| parent\_billing\_event\_id | disbursement\_billing\_event\_id | amount | devise | invoice\_date | invoice\_id | 
| --- | --- | --- | --- | --- | --- | 
| I0 | I14 | -100 | USD | 2018-12-31T00:00:00Z | 781216640 | 
| I2 | I14 | 80 | USD | 2018-12-31T00:04:07Z | 788576665 | 
| I3 | I14 | 0.2 | USD | 2018-12-31T00:04:07Z | 788576665 | 
|  |  | 19,8 | USD |  |  | 

### Flux de données d'événement de facturation pour le fabricant
<a name="billing-event-example-manufacturer"></a>

Les tableaux suivants présentent les informations pertinentes dans le flux de données de Jane lorsque Paulo facture Arnav.


| billing\_event\_id  | from\_account\_id  | to\_account\_id  | end\_user\_account\_id | product\_id | action | transaction\_type | 
| --- | --- | --- | --- | --- | --- | --- | 
| I5 | 777788889999 | 111122223333 |  | prod-o4grxfafcxxxx | FACTURÉ | SELLER\_REV\_SHARE | 
| I6 | 777788889999 | 111122223333 |  | prod-o4grxfafcxxxx | FACTURÉ | SELLER\_TAX\_SHARE | 
| I7 | 111122223333 | AWS |  | prod-o4grxfafcxxxx | FACTURÉ | AWS\_REV\_PARTAGER | 




| parent\_billing\_event\_id | disbursement\_billing\_event\_id | amount | devise | invoice\_date | invoice\_id | 
| --- | --- | --- | --- | --- | --- | 
|  |  | 73,5 |  | 2018-12-31T00:04:07Z | 788576665 | 
|  |  | 6,5 |  | 2018-12-31T00:04:07Z | 788576665 | 
|  |  | -7,35 |  | 2018-12-31T00:04:07Z | 788576665 | 

Les tableaux suivants présentent les informations pertinentes dans le flux de données de Jane à la fin du mois, après le paiement de la facture.


| billing\_event\_id  | from\_account\_id  | to\_account\_id  | end\_user\_account\_id | product\_id | action | transaction\_type | 
| --- | --- | --- | --- | --- | --- | --- | 
| I30 | 777788889999 | 111122223333 |  | prod-o4grxfafcxxxx | DÉCAISSÉS | SELLER\_REV\_SHARE | 
| I31 | 777788889999 | 111122223333 |  | prod-o4grxfafcxxxx | DÉCAISSÉS | SELLER\_TAX\_SHARE | 
| I32 | 111122223333 | AWS |  | prod-o4grxfafcxxxx | DÉCAISSÉS | AWS\_REV\_PARTAGER | 
| I33 | AWS | 111122223333 |  |  | DÉCAISSÉS | DÉCAISSEMENT | 




| parent\_billing\_event\_id | disbursement\_billing\_event\_id | amount | devise | invoice\_date | invoice\_id | 
| --- | --- | --- | --- | --- | --- | 
| I5 | I33 | -73,5 | USD |  |  | 
| I6 | I33 | -6,5 | USD |  |  | 
| I7 | I33 | 7,35 | USD |  |  | 
|  |  | 72,65 | USD |  |  | 

## Exemples de requêtes
<a name="data-feeds-billing-event-query-examples"></a>

Comme décrit dans[Collecte et analyse de données à l'aide de flux de données](data-feed-using.md), vous pouvez utiliser [Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html) pour exécuter des requêtes sur les données collectées et stockées sous forme de flux de données dans votre compartiment Amazon S3 géré. Cette section fournit quelques exemples de façons courantes de le faire. Tous les exemples supposent qu'une devise unique est utilisée.

## Exemple 1 : Montant facturé, taxes comprises
<a name="data-feed-example-query-tax-invoice"></a>

Pour connaître le montant facturé aux acheteurs, taxes comprises, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant. 

```
SELECT sum(amount) FROM billing_event 
WHERE 
  action = 'INVOICED'
  AND
  (
    (transaction_type in ('SELLER_REV_SHARE', 'SELLER_TAX_SHARE')
      -- to discard SELLER_REV_SHARE from Manufacturer to Channel Partner, aka cost of goods
      AND to_account_id='{{seller-account-id}}'
    )
  OR transaction_type= 'AWS_TAX_SHARE'
  );
```

## Exemple 2 : Montant facturé aux acheteurs pour le compte du vendeur
<a name="data-feed-example-query-invoice-for-seller"></a>

Pour savoir combien les acheteurs ont été facturés au nom d'un vendeur, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant.

```
SELECT sum(amount) FROM billing_event 
WHERE
  action = 'INVOICED'
  AND transaction_type in ('SELLER_REV_SHARE', 'SELLER_TAX_SHARE')
  AND to_account_id='{{seller-account-id}}'
;
```

## Exemple 3 : montant AWS pouvant être collecté pour le compte du vendeur
<a name="data-feed-example-query-aws-collect"></a>

Pour connaître le montant que AWS vous pouvez collecter pour le compte d'un vendeur, déduction faite des remboursements, des crédits et des comptes annulés, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant.

```
SELECT sum(amount) FROM billing_event 
WHERE
  -- what is invoiced on behalf of SELLER, incl. refunds/ credits and cost of goods
  transaction_type like 'SELLER_%' 
  -- FORGIVEN action records will "negate" related INVOICED
  and action in ('INVOICED','FORGIVEN') 
;
```

## Exemple 4 : Montant que le vendeur peut collecter
<a name="data-feed-example-query-seller-collect"></a>

Pour connaître le montant que les vendeurs peuvent collecter, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant. Cet exemple supprime les frais de mise en vente et les AWS taxes perçus, et ajoute tout ajustement de solde exceptionnel. 

```
SELECT sum(amount) FROM billing_event
WHERE
  (transaction_type like 'SELLER_%' -- what is invoiced on behalf of SELLER
  or transaction_type like 'AWS_REV_%' -- what is owed to AWS
  or transaction_type = 'BALANCE_ADJUSTMENT' -- exceptionnal case
  )
  and action in ('INVOICED','FORGIVEN')
;
```

Vous pouvez également utiliser la requête suivante pour collecter les mêmes informations, comme indiqué dans l'exemple suivant.

```
SELECT sum(amount) FROM billing_event
WHERE
  balance_impacting = 1
  and action in ('INVOICED','FORGIVEN')
;
```

L'exemple suivant présente les mêmes informations, mais est limité aux transactions de 2018 et suppose que tous les acheteurs ont payé leurs factures. 

```
SELECT sum(amount) FROM billing_event
WHERE
  invoice_date between '2018-01-01' and '2018-12-31'
  and balance_impacting = 1
  and action in ('INVOICED','FORGIVEN')
;
```

## Exemple 5 : Montant des décaissements
<a name="data-feed-example-query-disbursements"></a>

Pour connaître le montant déboursé, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant.

```
select sum(amount) FROM billing_event
WHERE
  action ='DISBURSED'
  and transaction_type like 'DISBURSEMENT%'
;
```

## Exemple 6 : Montant en attente de décaissement
<a name="data-feed-example-query-pending-disbursement"></a>

Pour connaître le montant en attente de versement, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant. Cette requête supprime les montants déjà décaissés. 

```
SELECT sum(amount) FROM billing_event targeted 
WHERE
   (transaction_type like 'SELLER_%'  -- what is invoiced on behalf of SELLER
    or transaction_type like 'AWS_REV_%'  -- what is owed to AWS
    or transaction_type = 'BALANCE_ADJUSTMENT' -- exceptionnal case
   ) 
  -- DISBURSEMENT action records will "negate" 'INVOICED'
  -- but do not take into account failed disbursements
   AND 
    (not exists
      (select 1 
        from billing_event disbursement
          join billing_event failed_disbursement
           on disbursement.billing_event_id=failed_disbursement.parent_billing_event_id
        where
         disbursement.transaction_type='DISBURSEMENT'
         and failed_disbursement.transaction_type='DISBURSEMENT_FAILURE'
         and targeted.disbursement_billing_event_id=disbursement.billing_event_id
      )
    ) 
;
```

Une autre méthode pour obtenir les mêmes informations consiste à exécuter une requête pour obtenir le solde du vendeur, comme indiqué dans l'exemple suivant.

```
SELECT sum(amount) FROM billing_event
WHERE
 balance_impacting = 1
;
```

La requête suivante étend notre exemple. Il limite les résultats aux transactions de 2018 et renvoie des détails supplémentaires sur les transactions.

```
select sum(residual_amount_per_transaction)
from
 (SELECT
    max(billed_invoices.amount) invoiced_amount,
    sum(nvl(disbursed_invoices.amount,0)) disbursed_amount,
    -- Exercise left to the reader:
    -- use transaction_type to distinguish listing fee vs seller-owed money
    -- still pending collection
    max(transaction_type) transaction_type,
    max(billed_invoices.amount) 
      + sum(nvl(disbursed_invoices.amount,0)) residual_amount_per_transaction
  FROM billing_event billed_invoices
    -- find related disbursements
    left join billing_event disbursed_invoices
      on disbursed_invoices.action='DISBURSED'
      and disbursed_invoices.parent_billing_event_id=billed_invoices.billing_event_id
  WHERE
    billed_invoices.invoice_date between '2018-01-01' and '2018-12-31'
    and billed_invoices.transaction_type like 'SELLER_%' -- invoiced on behalf of SELLER
    and billed_invoices.action in ('INVOICED','FORGIVEN')
    -- do not take into account failed disbursements
    AND not exists
      (select 1 from billing_event failed_disbursement
       where disbursed_invoices.disbursement_billing_event_id = failed_disbursement.parent_billing_event_id
      )
   GROUP BY billed_invoices.billing_event_id
);
```

## Exemple 7 : Solde de l'ensemble de factures
<a name="data-feed-example-query-balance-invoice-set"></a>

Pour connaître la somme d'un ensemble de factures, vous pouvez exécuter une requête comme indiqué dans l'exemple suivant.

```
SELECT invoice_id, sum(amount) FROM billing_event targeted
WHERE
  -- invoice_id is only not null for invoiced records AND disbursed records 
  -- linking them to related disbursement -> no need to filter more precisely
  invoice_id in ('XXX','YYY') 
  -- filter out failed disbursements 
  AND not exists
      (select 1 
        from billing_event disbursement
          join billing_event failed_disbursement
           on disbursement.billing_event_id=failed_disbursement.parent_billing_event_id
        where
         disbursement.transaction_type='DISBURSEMENT'
         and failed_disbursement.transaction_type='DISBURSEMENT_FAILURE'
         and targeted.disbursement_billing_event_id=disbursement.billing_event_id
      ) 
  group by invoice_id;
```