Skip to main content

Amazon Finance API V2

Amazon SP-API Financial transactions API connector

Written by Openbridge Support
Updated today

This document describes the Openbridge datasets derived from the Amazon Selling Partner API (SP-API) Finances API v2024-06-19. These datasets provide structured, tabular representations of financial transaction data for Amazon seller accounts.

The Finances API returns financial information relevant to a seller’s business, including transaction-level detail for orders, refunds, shipments, and other financial events. Openbridge normalizes the nested JSON response from this API into six relational CSV datasets that can be loaded into your data warehouse (Snowflake, BigQuery, Redshift, or Databricks) for analysis.

Key Concepts

Each API response returns a list of Transaction objects. A transaction represents a financial event on a seller’s account (e.g., an order payment, a refund, or an adjustment).

Transactions contain nested structures including items, breakdowns (hierarchical charge decompositions), related identifiers (order IDs, shipment IDs, etc.), and contexts (product details, deferral information, payment metadata).

Transaction statuses reflect the lifecycle of financial events. DEFERRED means the transaction is pending release, RELEASED means it is available, and DEFERRED_RELEASED means it was previously deferred but has since been released.

Data Model

Openbridge flattens the nested Finances API response into six normalized tables. The tables are linked by composite keys based on ob_seller_id and ob_transaction_id.

Item-level and breakdown-level tables use additional index columns (ob_idx, ob_item_idx, ob_level, ob_parent_idx) to preserve the hierarchical relationships from the source data.

Entity Relationship Summary

The six tables form a parent-child hierarchy:

  • sp_finances_transactions is the root table with one row per transaction.

  • sp_finances_transaction_related_identifiers contains identifiers linked to each transaction (ORDER_ID, SHIPMENT_ID, FINANCIAL_EVENT_GROUP_ID, etc.).

  • sp_finances_transaction_breakdowns provides the hierarchical charge breakdown at the transaction level.

  • sp_finances_items contains line-item detail within each transaction.

  • sp_finances_item_related_identifiers contains identifiers linked to each item (ORDER_ADJUSTMENT_ITEM_ID, COUPON_ID, etc.).

  • sp_finances_item_breakdowns provides the hierarchical charge breakdown at the item level.

Dataset Schemas

sp_finances_transactions

The primary transaction table. Each row represents a single financial transaction on the seller’s account. Context fields (contexts_0_*, contexts_1_*) are flattened from the nested contexts array in the API response.

Primary key: ob_seller_id + ob_transaction_id (mapped from transaction_id)

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier, used as a partition key across all tables.

selling_partner_id

string

The Amazon selling partner ID associated with the transaction.

account_type

string

The type of seller account (e.g., Standard Orders).

marketplace_id

string

The Amazon marketplace ID where the account is registered.

transaction_id

string

Unique identifier for the transaction, generated by Amazon.

transaction_type

string

The type of transaction (e.g., Shipment).

transaction_status

string

Status of the transaction: DEFERRED, RELEASED, or DEFERRED_RELEASED.

description

string

Human-readable description (e.g., Order Payment, Refund Order).

posted_date

datetime

The date and time the transaction was posted (ISO 8601).

marketplace_details_marketplace_id

string

Marketplace ID where the transaction occurred.

marketplace_details_marketplace_name

string

Name of the marketplace (e.g., Amazon.com).

total_amount_currency_code

string

Three-digit ISO 4217 currency code (e.g., USD).

total_amount_currency_amount

decimal

The total monetary amount of the transaction.

contexts_0_context_type

string

Type of the first context entry (e.g., DeferredContext, ProductContext).

contexts_0_asin

string

ASIN from the first context entry.

contexts_0_sku

string

SKU from the first context entry.

contexts_0_quantity_shipped

integer

Quantity shipped from the first context entry.

contexts_0_fulfillment_network

string

Fulfillment network (e.g., AFN for Amazon Fulfillment Network).

contexts_0_deferral_reason

string

Deferral policy code (e.g., DD7 for delivery date, B2B for invoiced).

contexts_0_maturity_date

datetime

Release date for deferred transactions.

contexts_0_payment_type

string

Payment type from the first context.

contexts_0_payment_method

string

Payment method from the first context.

contexts_0_payment_reference

string

Payment reference number from the first context.

contexts_0_payment_date

datetime

Payment date from the first context.

contexts_0_channel

string

Channel details from the first context.

contexts_0_order_type

string

Order type from the first context.

contexts_0_store_name

string

Store name from the first context.

contexts_0_start_time

datetime

Start time from the first context.

contexts_0_end_time

datetime

End time from the first context.

contexts_1_*

various

Repeated context fields for the second context entry (same schema as contexts_0_*).

sp_finances_transaction_related_identifiers

Stores the related identifiers for each transaction. Each row represents a single identifier associated with a transaction, such as an order ID, shipment ID, or financial event group ID.

Composite key: ob_seller_id + ob_transaction_id + ob_idx

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier.

ob_transaction_id

string

References the parent transaction.

ob_idx

integer

Zero-based index of the identifier within the transaction.

related_identifier_name

string

The identifier type. Possible values: ORDER_ID, SHIPMENT_ID, FINANCIAL_EVENT_GROUP_ID, REFUND_ID, INVOICE_ID, DISBURSEMENT_ID, TRANSFER_ID, DEFERRED_TRANSACTION_ID, RELEASE_TRANSACTION_ID, SETTLEMENT_ID.

related_identifier_value

string

The value of the related identifier.

sp_finances_transaction_breakdowns

Contains the hierarchical charge breakdown at the transaction level. Breakdowns describe how the transaction’s total amount is decomposed into constituent charges (e.g., Sales, ProductCharges, Tax). The ob_level and ob_parent_idx columns encode the tree structure.

Composite key: ob_seller_id + ob_transaction_id + ob_level + ob_idx

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier.

ob_transaction_id

string

References the parent transaction.

ob_level

integer

Depth level in the breakdown hierarchy (0 = top level).

ob_parent_idx

integer

Index of the parent breakdown at the previous level. Empty for top-level entries.

ob_idx

integer

Zero-based index of this breakdown within its level and parent.

breakdown_type

string

The type of charge (e.g., Sales, ProductCharges, Tax, FBAFees).

breakdown_amount_currency_code

string

Three-digit ISO 4217 currency code.

breakdown_amount_currency_amount

decimal

The monetary amount of this breakdown component.

sp_finances_items

Contains line-item detail for each transaction. Each row represents a single item within a transaction. Context fields are flattened from the item-level contexts array, following the same pattern as the transaction-level contexts.

Composite key: ob_seller_id + ob_transaction_id + ob_idx

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier.

ob_transaction_id

string

References the parent transaction.

ob_idx

integer

Zero-based index of the item within the transaction.

description

string

Description of the item.

total_amount_currency_code

string

Three-digit ISO 4217 currency code.

total_amount_currency_amount

decimal

The total monetary amount for this item.

contexts_0_context_type

string

Type of the first item-level context entry (e.g., ProductContext).

contexts_0_asin

string

ASIN of the item from the first context.

contexts_0_sku

string

SKU of the item from the first context.

contexts_0_quantity_shipped

integer

Quantity shipped from the first context.

contexts_0_fulfillment_network

string

Fulfillment network (e.g., AFN).

contexts_0_*

various

Additional context fields following the same pattern as the transaction contexts.

contexts_1_*

various

Repeated context fields for the second context entry.

sp_finances_item_related_identifiers

Stores identifiers related to individual items within transactions. Each row represents a single identifier associated with a specific item.

Composite key: ob_seller_id + ob_transaction_id + ob_item_idx + ob_idx

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier.

ob_transaction_id

string

References the parent transaction.

ob_item_idx

integer

Index of the parent item within the transaction.

ob_idx

integer

Zero-based index of the identifier within the item.

item_related_identifier_name

string

The identifier type. Possible values: ORDER_ADJUSTMENT_ITEM_ID, COUPON_ID, REMOVAL_SHIPMENT_ITEM_ID, TRANSACTION_ID.

item_related_identifier_value

string

The value of the related identifier.

sp_finances_item_breakdowns

Contains the hierarchical charge breakdown at the item level. Structure mirrors the transaction-level breakdowns but scoped to a specific line item.

Composite key: ob_seller_id + ob_transaction_id + ob_item_idx + ob_level + ob_idx

Column Name

Type

Description

ob_seller_id

string

Openbridge-assigned seller identifier.

ob_transaction_id

string

References the parent transaction.

ob_item_idx

integer

Index of the parent item within the transaction.

ob_level

integer

Depth level in the breakdown hierarchy (0 = top level).

ob_parent_idx

integer

Index of the parent breakdown at the previous level. Empty for top-level entries.

ob_idx

integer

Zero-based index of this breakdown within its level and parent.

breakdown_type

string

The type of charge (e.g., ProductCharges, OurPricePrincipal, FBAFees).

breakdown_amount_currency_code

string

Three-digit ISO 4217 currency code.

breakdown_amount_currency_amount

decimal

The monetary amount of this breakdown component.

Join Patterns

Below are the standard join keys for combining these datasets in your warehouse.

Column Name

Type

Description

transactions ↔ transaction_related_identifiers

JOIN ON

ob_seller_id AND ob_transaction_id

transactions ↔ transaction_breakdowns

JOIN ON

ob_seller_id AND ob_transaction_id

transactions ↔ items

JOIN ON

ob_seller_id AND ob_transaction_id

items ↔ item_related_identifiers

JOIN ON

ob_seller_id AND ob_transaction_id AND ob_idx = ob_item_idx

items ↔ item_breakdowns

JOIN ON

ob_seller_id AND ob_transaction_id AND ob_idx = ob_item_idx

Reference

Context Types

The contexts array in both transactions and items can contain multiple typed context objects. Each context type provides different metadata about the transaction or item.

Column Name

Type

Description

ProductContext

Product info

Contains ASIN, SKU, quantity shipped, and fulfillment network.

DeferredContext

Deferral info

Contains the deferral reason code and maturity (release) date.

PaymentsContext

Payment info

Contains payment type, method, reference, and date.

AmazonPayContext

Amazon Pay

Contains store name, order type, and channel.

BusinessContext

Business line

Contains the store name associated with the transaction.

TimeRangeContext

Time range

Contains start and end times for the transaction.

AddressContext

Address info

Contains address-related metadata for the transaction.

Transaction Statuses

Column Name

Type

Description

DEFERRED

Active

Transaction is currently deferred and pending release.

RELEASED

Final

Transaction has been released and funds are available.

DEFERRED_RELEASED

Final

Transaction was previously deferred but has now been released.

Related Identifier Names - Transaction-Level Identifiers

Column Name

Type

Description

ORDER_ID

Filterable

The Amazon order ID associated with the transaction.

SHIPMENT_ID

Informational

The shipment ID associated with the transaction.

FINANCIAL_EVENT_GROUP_ID

Filterable

The financial event group ID (settlement cycle).

REFUND_ID

Informational

The refund ID for refund transactions.

INVOICE_ID

Informational

The invoice ID associated with the transaction.

DISBURSEMENT_ID

Informational

Disbursement ID for Amazon bank transfers.

TRANSFER_ID

Informational

The transfer ID associated with the transaction.

DEFERRED_TRANSACTION_ID

Informational

Transaction ID of the related deferred transaction.

RELEASE_TRANSACTION_ID

Informational

Transaction ID of the related released transaction.

SETTLEMENT_ID

Informational

The settlement group ID associated with the transaction.

Item-Level Identifiers

Column Name

Type

Description

ORDER_ADJUSTMENT_ITEM_ID

Adjustment

Amazon-defined identifier for refunds, guarantee claims, and chargebacks.

COUPON_ID

Promotion

Identifier for a coupon applied to the transaction.

REMOVAL_SHIPMENT_ITEM_ID

Removal

Identifier for an item in a removal shipment.

TRANSACTION_ID

Reference

The transaction ID of the item.

Finances API v0 vs. v2024-06-19: Key Differences

The legacy Finances API (v0) and the current version (v2024-06-19) take fundamentally different approaches to modeling financial data. Understanding these differences is important both for users migrating from v0-based datasets and for interpreting the structure of the new datasets documented here.

API surface area

The v0 API exposed four separate operations: listFinancialEventGroups, listFinancialEventsByGroupId, listFinancialEventsByOrderId, and listFinancialEvents.

The v2024-06-19 API consolidates all of this into a single listTransactions operation, with query parameters (relatedIdentifierName, relatedIdentifierValue, transactionStatus, marketplaceId) replacing the need for dedicated per-group or per-order endpoints.

Data model architecture

This is the biggest structural change. The v0 API returned a FinancialEvents object that contained over 20 separate event-type-specific arrays — ShipmentEventList, RefundEventList, GuaranteeClaimEventList, ChargebackEventList, ServiceFeeEventList, PayWithAmazonEventList, LoanServicingEventList, RemovalShipmentEventList, AdjustmentEventList, and many more.

Each of these event types had its own unique schema with different field names and nesting structures. This meant consumers had to parse and handle dozens of distinct object types, and the downstream data model required a separate table (or wide union) for each event category.

The v2024-06-19 API replaces this with a unified Transaction object. Every financial event — regardless of type — uses the same structure: a transaction with a transactionType, transactionStatus, description, totalAmount, plus nested items, breakdowns, relatedIdentifiers, and contexts arrays. The variation that was previously expressed through separate event-type arrays is now expressed through the breakdowns hierarchy (which decomposes charges into typed categories like Sales, ProductCharges, Tax, FBAFees) and through typed contexts entries (ProductContext, DeferredContext, PaymentsContext, etc.).

Charge decomposition

In v0, charges, fees, and promotions were spread across separate flat lists within each event (e.g., OrderChargeList, ShipmentFeeList, OrderFeeList, PromotionList, DirectPaymentList). In v2024-06-19, all of this is handled through the recursive breakdowns tree, where each breakdown has a breakdownType, a monetary amount, and optionally its own child breakdowns. This gives a cleaner, hierarchical view of how a transaction's total decomposes into its components.

Transaction status and deferral tracking

The v0 API had no explicit concept of transaction status or deferral. The v2024-06-19 API introduces transactionStatus (DEFERRED, RELEASED, DEFERRED_RELEASED) and the DeferredContext type, which includes a deferralReason code and a maturityDate. This makes it straightforward to track when funds will be or have been released.

Related identifiers

In v0, identifiers like order IDs and shipment IDs were top-level fields on each event type (e.g., AmazonOrderId on ShipmentEvent). In v2024-06-19, these are normalized into a relatedIdentifiers array with name-value pairs, supporting a broader set of identifier types (ORDER_ID, SHIPMENT_ID, FINANCIAL_EVENT_GROUP_ID, REFUND_ID, INVOICE_ID, DISBURSEMENT_ID, TRANSFER_ID, DEFERRED_TRANSACTION_ID, RELEASE_TRANSACTION_ID, SETTLEMENT_ID).

Role requirements

The v0 API accepted multiple roles depending on the operation — Finance and Accounting, Account Information Service Provider (EU only), and Amazon Fulfillment (NA/FE only). The v2024-06-19 API requires only Finance and Accounting for its single listTransactions operation.

Availability

The v0 API is a legacy version. The v2024-06-19 API is the current version and is available for Sellers only (not Vendors) across NA, EU, and FE regions.

Important Notes

  • Data latency: Financial events may not include orders from the last 48 hours.

  • Date range limit: If postedAfter and postedBefore are more than 180 days apart, the API returns an empty response.

  • Breakdown hierarchy: Breakdown tables use ob_level and ob_parent_idx to represent a tree structure. Level 0 entries are top-level categories (e.g., Sales). Level 1 entries are children of level 0 (e.g., ProductCharges under Sales), and so on.

  • Context flattening: The contexts array is flattened into indexed columns (contexts_0_*, contexts_1_*). The number of context slots depends on the maximum observed contexts per transaction. Not all context fields will be populated for every row.

  • Filtering: At the API level, only FINANCIAL_EVENT_GROUP_ID and ORDER_ID are supported as filtering parameters via relatedIdentifierName. Other identifier types are informational only.

  • Seller availability: The Finances API v2024-06-19 is available for Sellers only (not Vendors).

Did this answer your question?