Skip to main content

List FBA Reimbursement Reconciliation Exceptions

GET 

/api/amazon/unified/fba-reimbursement-reconciliation

Lists the exceptions from reconciling three sources against each other: settlement cash, the FBA reimbursements report and the FBA inventory ledger. Only material mismatches old enough that Amazon has had a fair chance to close them are raised; a loss within a week of its claim deadline is raised whatever its age. Exceptions are re-detected daily and resolve themselves when the missing payment, stock or settlement arrives. Returns the standard Laravel paginator.

Not yet available to API tokens

This endpoint currently requires session authentication; Personal Access Token scope support is in progress.

Filters:

  • filter[integration_instance_ids] — comma-separated Amazon integration IDs.
  • filter[type] — comma-separated: cash_without_loss, loss_never_paid, reversed_not_returned, paid_not_settled, settlement_without_report, double_compensation.
  • filter[status] — comma-separated: open, explained, resolved.
  • filter[date_from], filter[date_to] — subject date on or after / on or before (m/d/Y).
  • filter[search] — searches id (exact match), fnsku, sku, reference and the product SKU (product.sku), partial match. Restrict it with search_columns (comma-separated: id, fnsku, sku, reference, product.sku) and force exact matching per column with search_strict_columns.

Sorting: sort=<field> ascending or sort=-<field> descending. Allowed: id, subject_date, value, quantity, claim_deadline, detected_at, type, status. Default: -value.

Advanced operator filters use the syntax filter[column.operator]=value; a bare filter[column]=value is treated as the is operator (except type and status, whose bare key is the comma-separated filter above).

  • Text columns (type, status, fnsku, sku, reference, currency) support: contains, does_not_contain, is, is_not, is_one_of, is_not_one_of, starts_with, does_not_start_with, ends_with, does_not_end_with, is_empty, is_not_empty.
  • Numeric columns (id, quantity, value) support: is, is_not, is_one_of, is_not_one_of, greater_than, less_than, greater_than_or_equal, less_than_or_equal, between, is_empty, is_not_empty.
  • Date columns (subject_date, claim_deadline, detected_at) support: is, is_not, before, after, on_or_before, on_or_after, between, is_empty, is_not_empty, today, yesterday, tomorrow, past_week, past_month, past_year, next_week, next_month, next_year, days_ago, days_from_now, past_days, next_days. Date values use Y-m-d; between takes two comma-separated values.

Complex AND/OR filter trees can be sent as filter_groups: a base64-encoded JSON tree of the form {"conjunction": "and", "children": [{"type": "condition", "condition": {"column": "value.greater_than", "operator": "greater_than", "value": "100"}}, {"type": "group", "group": {"conjunction": "or", "children": [...]}}]}. Each condition's column is the column.operator key and operator the operator, from the columns and operators above. Other flat filters still apply alongside the tree (AND). An unknown column/operator pair returns 400.

Exception fields:

  • type — cash_without_loss (a unit payment no loss explains after 45 days), loss_never_paid (a confirmed loss unpaid after the settle window, claim window still open), reversed_not_returned (Amazon took a payment back but the units have not reappeared; it carries only the clawbacks still outstanding and overdue — older than 30 days, or the account's settle window if longer — with found units paying off the oldest clawbacks first, so quantity and value are the overdue outstanding units and subject_date the oldest of those clawbacks), paid_not_settled (a report payment no settlement carried after 60 days), settlement_without_report (settlement reimbursement cash no report row explains), double_compensation (cash plus replacement units exceed the units lost). type_label and type_description are readable versions.
  • subject_type and subject_id — the record the exception is about: amazon_fba_loss_event, amazon_fba_reimbursement or amazon_report_settlement_data; amazon_fba_loss_event_id — the related loss event, when there is one.
  • reference — the Amazon reimbursement ID, the loss event's reference, or the settlement ID and description.
  • quantity, value (in currency; null when unknown). Money in several currencies is never summed: when the exception spans more than one currency, mixed_currency is true, value and currency are null, and values lists each currency's amount (currency, amount); otherwise mixed_currency is false and values is null.
  • subject_date, age_days, claim_deadline and days_to_deadline (negative once passed; null when there is no deadline).
  • status — open, explained (someone recorded why it is not a problem; detection leaves it alone) or resolved (the mismatch no longer holds). detected_at, resolved_at, explained_at, explained_by (user ID) and note.

Request​

Responses​

OK

Response Headers
    Content-Type