As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Feed de dados do evento de faturamento
Este feed de dados fornece informações sobre eventos de faturamento, inclusive faturamento e desembolsos.
Por exemplo, você pode usar esse feed de dados para saber quando e qual comprador é cobrado. Você também pode usar as SQLconsultas de exemplo para analisar os dados desse feed de dados.
Este feed de dados contém informações associadas a eventos de faturamento dos quais você é o vendedor do registro. Para acordos feitos por meio de parceiros de canal, este feed de dados contém informações sobre eventos de faturamento entre o fabricante e o vendedor do registro.
O feed de dados do evento de faturamento é atualizado a cada 24 horas, para que novos dados estejam disponíveis diariamente.
Os dados dos eventos de faturamento são imutáveis.
A tabela a seguir explica os nomes e as descrições das colunas do feed de dados.
Nome da coluna | Descrição |
---|---|
billing_event_id | Um identificador de um evento de faturamento. Este ID é exclusivo no ambiente do vendedor. |
from_account_id |
A conta que iniciou o evento de faturamento. Se Pode ser usado para entrar no feed de dados |
to_account_id | A conta que recebe o valor da transação do produto. Esta é uma chave externa para o feed de dados da conta. Pode ser usado para entrar no feed de dados |
end_user_account_id | A conta que usa o produto. Esta conta pode ser diferente das contas pagante e do comprador. Pode ser usado para entrar no feed de dados |
product_id | O identificador do produto. Esta é uma chave externa para o feed de dados do produto. Pode ser usado para entrar no feed de dados |
ação |
O tipo de ação para este evento. Os valores possíveis são:
|
transaction_type |
O tipo de transação. Para ver exemplos, consulte Cenários de tributação. Os valores possíveis são:
|
parent_billing_event_id |
Quando o valor de Quando o valor de
Quando o valor de
Quando o valor de |
disbursement_billing_event_id |
O desembolso relacionado quando o valor de
Em todos os outros cenários, esse valor é nulo. |
valor | O valor do evento de faturamento. |
currency | O código da moeda ISO 639. |
balance_impacting | Se o valor é levado em conta no cálculo dos desembolsos do vendedor. Um valor de 0 indica que o valor é exibido para fins informativos e não tem efeito sobre o saldo. Um valor de 1 indica que esse valor é considerado na determinação dos desembolsos do vendedor. |
invoice_date | A data em que a fatura foi criada. |
payment_due_date |
Quando o valor de |
usage_period_start_date | A data inicial do período no registro. |
usage_period_end_date | A data final do período no registro. |
invoice_id |
O ID da AWS fatura. |
billing_address_id | A referência do endereço de faturamento do pagante no feed de dados do endereço. Pode ser usado para entrar no feed de dados |
transaction_reference_id |
Um identificador que permite que você faça referência cruzada de dados dos seguintes relatórios: |
bank_trace_id |
Para transações de desembolso ( |
broker_id |
Um identificador da entidade comercial que facilitou a transação. Os valores possíveis são:
|
buyer_transaction_reference_id |
Um identificador que agrupa todos os registros relacionados no feed de faturamento usando |
Cenários de tributação
O modelo de tributação que está em vigor para o país e o estado do comprador e do vendedor determina como os impostos são cobrados e enviados. Veja a seguir os cenários possíveis:
-
Os impostos são coletados e remetidos por AWS. Nestes casos, o
transaction_type
éAWS_TAX_SHARE
. -
Os impostos são cobrados pelo vendedor AWS, desembolsados e enviados pelo vendedor às autoridades fiscais. Nestes casos, o
transaction_type
éSELLER_TAX_SHARE
. -
Os impostos não são cobrados por AWS. O vendedor deve calcular os impostos e enviá-los para as autoridades fiscais. Nesses casos, AWS Marketplace não realiza cálculos fiscais nem recebe informações tributárias. O vendedor paga os impostos da participação na receita.
Exemplos de feed de dados do evento de faturamento
Esta seção mostra exemplos do período de dados do evento de faturamento no momento do faturamento e um mês depois. Observe o seguinte em todas as tabelas nesta seção:
-
Em feeds de dados, os valores
billing_event_id
são strings alfanuméricas de 40 caracteres. Eles são mostrados aqui como strings de dois caracteres por motivo de legibilidade. -
No feed de dados, essa informação é apresentada em uma única tabela. Para fins de legibilidade, os dados são mostrados em várias tabelas aqui, e as colunas não são mostradas.
Para os exemplos nesta seção, suponha o seguinte:
-
Arnav é comprador.
-
O ID da conta dele é
737399998888
. -
Ele está na França, que é sujeita às leis de facilitadores do mercado. Para obter mais informações, consulte Ajuda com impostos da Amazon Web Service
. -
Ele comprou
prod-o4grxfafcxxxx
e foi cobrado no valor de 120,60 USD pelo uso mensal desse produto. -
Ele pagou a fatura dentro de um mês.
-
-
Jane é fabricante.
-
O ID da conta dela é
111122223333
.
-
-
Paulo é vendedor de registros.
-
O ID da conta dele é
777788889999
. -
Ele mora no Kansas, que não está sujeito às leis de facilitadores do mercado.
-
Feed de dados do evento de faturamento para o vendedor de registro
Como vendedor de registro, Paulo cobra o comprador, Arnav.
As tabelas a seguir mostram as informações relevantes no feed de dados de Paulo quando ele cobra 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 | INVOICED | SELLER_REV_SHARE |
I1 | 737399998888 | AWS | 737399998888 | prod-o4grxfafcxxxx | INVOICED | AWS_TAX_SHARE |
I2 | 777788889999 | 111122223333 | 737399998888 | prod-o4grxfafcxxxx | INVOICED | SELLER_REV_SHARE |
I3 | 777788889999 | AWS | 737399998888 | prod-o4grxfafcxxxx | INVOICED | AWS_REV_SHARE |
parent_billing_event_id | disbursement_billing_event_id | amount | currency | 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 |
As tabelas a seguir mostram as informações relevantes no feed de dados de Paulo no final do mês, após Arnav fazer o pagamento da fatura.
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | action | transaction_type |
---|---|---|---|---|---|---|
I10 | 737399998888 | 777788889999 | 737399998888 | DISBURSED | SELLER_REV_SHARE | |
I12 | 777788889999 | 111122223333 | 737399998888 | DISBURSED | SELLER_REV_SHARE | |
I13 | 777788889999 | AWS | 737399998888 | prod-o4grxfafcxxxx | DISBURSED | AWS_REV_SHARE |
I14 | AWS | 777788889999 | DISBURSED | DISBURSEMENT |
parent_billing_event_id | disbursement_billing_event_id | amount | currency | 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 |
Feed de dados do evento de faturamento para o fabricante
As tabelas a seguir mostram as informações relevantes no feed de dados de Jane quando Paulo cobra Arnav.
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | action | transaction_type |
---|---|---|---|---|---|---|
I5 | 777788889999 | 111122223333 | prod-o4grxfafcxxxx | INVOICED | SELLER_REV_SHARE | |
I6 | 777788889999 | 111122223333 | prod-o4grxfafcxxxx | INVOICED | SELLER_TAX_SHARE | |
I7 | 111122223333 | AWS | prod-o4grxfafcxxxx | INVOICED | AWS_REV_SHARE |
parent_billing_event_id | disbursement_billing_event_id | amount | currency | 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 |
As tabelas a seguir mostram as informações relevantes no feed de dados de Jane no final do mês, após o pagamento da fatura.
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | action | transaction_type |
---|---|---|---|---|---|---|
I30 | 777788889999 | 111122223333 | prod-o4grxfafcxxxx | DISBURSED | SELLER_REV_SHARE | |
I31 | 777788889999 | 111122223333 | prod-o4grxfafcxxxx | DISBURSED | SELLER_TAX_SHARE | |
I32 | 111122223333 | AWS | prod-o4grxfafcxxxx | DISBURSED | AWS_REV_SHARE | |
I33 | AWS | 111122223333 | DISBURSED | DISBURSEMENT |
parent_billing_event_id | disbursement_billing_event_id | amount | currency | invoice_date | invoice_id |
---|---|---|---|---|---|
I5 | I33 | -73.5 | USD | ||
I6 | I33 | -6.5 | USD | ||
I7 | I33 | 7.35 | USD | ||
72.65 | USD |
Consultas de exemplo
Conforme descrito em Coletando e analisando dados com feeds de dados, é possível usar o Athena para executar consultas nos dados coletados e armazenados como feeds de dados no bucket gerenciado do Amazon S3. Esta seção fornece alguns exemplos de maneiras comuns de fazer isso. Todos os exemplos partem do princípio de que é utilizada uma moeda única.
Exemplo 1: valor faturado, incluindo impostos
Para descobrir o valor da cobrança dos compradores, incluindo impostos, é possível executar uma consulta como a mostrada no exemplo a seguir.
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' );
Exemplo 2: valor faturado aos compradores em nome do vendedor
Para descobrir o valor da cobrança dos compradores em nome de um vendedor, é possível executar uma consulta como a mostrada no exemplo a seguir.
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
' ;
Exemplo 3: O valor AWS pode ser cobrado em nome do vendedor
Para descobrir quanto AWS posso cobrar em nome de um vendedor, menos reembolsos, créditos e contas perdoadas, você pode executar uma consulta conforme mostrado no exemplo a seguir.
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') ;
Exemplo 4: valor que o vendedor pode cobrar
Para descobrir quanto os vendedores podem cobrar, é possível executar uma consulta como a mostrada no exemplo a seguir. Esse exemplo remove as taxas de listagem e os impostos AWS cobrados e adiciona quaisquer ajustes de saldo excepcionais.
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') ;
Você também pode usar a consulta a seguir para coletar as mesmas informações, conforme mostrado no exemplo a seguir.
SELECT sum(amount) FROM billing_event WHERE balance_impacting = 1 and action in ('INVOICED','FORGIVEN') ;
O exemplo a seguir mostra as mesmas informações, mas está restrito às transações de 2018 e assume que todos os compradores pagaram suas faturas.
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') ;
Exemplo 5: valor dos desembolsos
Para descobrir o valor que foi desembolsado, é possível executar uma consulta como a mostrada no exemplo a seguir.
select sum(amount) FROM billing_event WHERE action ='DISBURSED' and transaction_type like 'DISBURSEMENT%' ;
Exemplo 6: valor pendente para desembolso
Para descobrir o valor que está pendente para desembolso, é possível executar uma consulta como a mostrada no exemplo a seguir. Essa consulta remove valores que já foram desembolsados.
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 ) ) ;
Outra maneira de obter as mesmas informações é executar uma consulta para obter o saldo do vendedor, como a mostrada no exemplo a seguir.
SELECT sum(amount) FROM billing_event WHERE balance_impacting = 1 ;
A consulta a seguir estende nosso exemplo. Ela restringe os resultados às transações de 2018 e retorna mais detalhes sobre as transações.
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 );
Exemplo 7: saldo do conjunto de faturas
Para saber a soma de um conjunto de faturas, é possível executar uma consulta como a mostrada no exemplo a seguir.
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;