翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
請求イベントデータフィード
このデータフィードは、請求や支払いなど、請求イベントに関する情報を提供します。
たとえば、このデータフィードを使用して、購入者への請求日や請求内容を確認できます。サンプルの SQL クエリを使用して、このデータフィードのデータを分析することもできます。
このデータフィードは、登録販売者としての請求イベントに関連する情報を示します。チャネルパートナーを介して締結された契約の場合、このデータフィードはメーカーと登録販売者との請求イベントに関する情報を示します。
請求イベントデータフィードは 24 時間ごとに更新されるため、新しいデータを毎日利用できます。
請求イベントデータはイミュータブルです。
以下の表では、データフィードの列の名前と説明を示しています。
列名 | 説明 |
---|---|
billing_event_id | 請求イベントの識別子。この ID は、販売者の環境内で一意です。 |
from_account_id |
請求イベントを開始したアカウント。
|
to_account_id | 製品の取引金額を受け取るアカウント。これは、アカウントデータフィードへの外部キーです。
|
end_user_account_id | 製品を使用するアカウント。このアカウントは、購入者アカウントや支払者アカウントとは異なる場合があります。
|
product_id | 製品の識別子。これは 製品データフィードへの外部キーです。
|
アクション |
このイベントのアクションのタイプ。可能な値は以下のとおりです。
|
transaction_type |
取引のタイプ。例については、「課税シナリオ」を参照してください。可能な値は以下のとおりです。
|
parent_billing_event_id |
|
disbursement_billing_event_id |
他のすべてのシナリオでは、この値は null です。 |
amount | 請求イベントの金額。 |
currency | ISO 639 通貨コード。 |
balance_impacting | 販売者の支払いを計算する際に該当金額を考慮するかどうか。0 の値は、該当金額が情報提供のために表示されており、残高には影響しないことを示します。1 の値は、該当金額が販売者の支払いを決定する際に考慮されることを示します。 |
invoice_date | 請求書が作成された日付。 |
payment_due_date |
|
usage_period_start_date | レコードの期間の開始日。 |
usage_period_end_date | レコードの期間の終了日。 |
invoice_id |
AWS の請求書 ID。 |
billing_address_id | 住所データフィードにおける支払人の請求連絡先の参照。
|
transaction_reference_id |
以下のレポートのデータを相互参照できる識別子。 |
bank_trace_id |
支払い取引 ( |
broker_id |
取引を促進した事業体の識別子。可能な値は以下のとおりです。
|
buyer_transaction_reference_id |
|
課税シナリオ
購入者と販売者の国および州に適用されている課税モデルによって、税金の徴収と支払の方法が決まります。考えられるシナリオは次のとおりです。
-
AWS が税金を徴収して納税します。この場合、
transaction_type
はAWS_TAX_SHARE
です。 -
AWS が税金を徴収して販売者に支出し、販売者が税務当局に納税します。この場合、
transaction_type
はSELLER_TAX_SHARE
です。 -
AWS は税金を徴収しません。販売者が税金を計算して税務当局に納税する必要があります。この場合、AWS Marketplace は税額計算を行ったり、課税情報を受け取ったりしません。販売者が収益分配金から納税します。
請求イベントデータフィードの例
このセクションでは、請求時と 1 か月後の請求イベントデータ期間の例を示します。このセクションのすべての表について、次の点に注意してください。
-
データフィードの
billing_event_id
値は 40 文字の英数字文字列です。ここでは、見やすいように 2 文字の文字列として表示しています。 -
この情報は、データフィードの単一のテーブルに表示されます。見やすいように、ここではデータを複数のテーブルに表示し、一部の列を省略しています。
このセクションの例では、以下を前提とします。
-
Arnav は購入者です。
-
アカウント ID は
737399998888
です。 -
居住国のフランスでは、マーケットプレイスファシリテーター法が適用されます。詳細については、「アマゾン ウェブ サービス税務ヘルプ
」を参照してください。 -
prod-o4grxfafcxxxx
を購入し、この製品の月間使用料として 120.60 USD を請求されました。 -
当月内に請求額を支払いました。
-
-
Jane はメーカーです。
-
アカウント ID は
111122223333
です。
-
-
Paulo は登録販売者です。
-
アカウント ID は
777788889999
です。 -
居住しているカンザス州は、マーケットプレイスファシリテーター法の対象ではありません。
-
登録販売者の請求イベントデータフィード
Paulo は、登録販売者として購入者の Arnav に請求を行います。
次の表は、Paulo が Arnav に請求した際のデータフィードの関連情報を示しています。
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | アクション | 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 |
次の表は、Arnav が請求額を支払った後の月末における Paulo のデータフィードの関連情報を示しています。
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | アクション | 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 |
メーカーの請求イベントデータフィード
次の表は、Paulo が Arnav に請求した際の Jane のデータフィードの関連情報を示しています。
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | アクション | 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 |
次の表は、請求額が支払われた後の月末における Jane のデータフィードの関連情報を示しています。
billing_event_id | from_account_id | to_account_id | end_user_account_id | product_id | アクション | 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 |
クエリの例
データフィードを使用したデータ収集と分析 で説明しているように、 Athena を使用して、マネージド Amazon S3 バケットにデータフィードとして収集されて保存されたデータに対してクエリを実行できます。このセクションでは、これを行う一般的な方法の例をいくつか示します。すべての例で、単一の通貨を使用するものとします。
例 1: 請求金額 (税込み)
購入者への請求金額 (税込み) を確認するには、次の例に示すようなクエリを実行できます。
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' );
例 2: 販売者に代わって購入者に請求する金額
販売者に代わって購入者に請求した金額を確認するには、次の例に示すようなクエリを実行できます。
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
' ;
例 3: 販売者に代わって AWS が徴収できる金額
販売者に代わって AWS が徴収できる金額 (返金、クレジット、免除アカウントを除く) を確認するには、次の例に示すようなクエリを実行できます。
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') ;
例 4: 販売者が徴収できる金額
販売者が徴収できる金額を確認するには、次の例に示すようなクエリを実行できます。この例では、AWS が徴収する出品手数料と税額を除外し、例外的な残高調整を追加します。
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') ;
また、次の例に示すように、次のクエリを使用して同じ情報を収集することもできます。
SELECT sum(amount) FROM billing_event WHERE balance_impacting = 1 and action in ('INVOICED','FORGIVEN') ;
次の例は同じ情報を示していますが、2018 年の取引に限定し、すべての購入者が請求額を支払ったと仮定しています。
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') ;
例 5: 支払い額
支払われた金額を確認するには、次の例に示すようなクエリを実行できます。
select sum(amount) FROM billing_event WHERE action ='DISBURSED' and transaction_type like 'DISBURSEMENT%' ;
例 6: 保留中の支払い金額
保留中の支払い金額を確認するには、次の例に示すようなクエリを実行できます。このクエリでは、支払い済みの金額を除外します。
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 ) ) ;
同じ情報を取得する別の方法としては、次の例に示すようなクエリを実行して販売者の残高を取得します。
SELECT sum(amount) FROM billing_event WHERE balance_impacting = 1 ;
次のクエリでは、この例を拡張します。クエリ結果を 2018 年の取引に限定し、これらの取引に関する追加の詳細を返します。
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 );
例 7: 一連の請求書の残高
一連の請求書の合計額を確認するには、次の例に示すようなクエリを実行できます。
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;