SP-API Migration Validator Run free scan

Migration assurance

Settlement Report V2 migration: the closest Amazon SP-API deadline

On November 11, 2026 Amazon removes the legacy flat-file and XML settlement reports on every marketplace. The replacement is the tab-delimited Flat File V2 report. There is no XML replacement, so XML workflows must be rebuilt, not remapped.

Breaking changes

Discrete price and fee columns collapse into amount-type, amount-description and amount. Positional and index-based parsing breaks; parse by header name. Amounts can carry locale number formats, so naive parseFloat can silently corrupt values.

Exact scanner coverage

The scanner flags legacy report-type constants (AMZ-SET-REPORT-001), XML settlement workflows (AMZ-SET-XML-001), legacy column assumptions (AMZ-SET-COLUMN-001), positional parsing (AMZ-SET-POSITIONAL-001) and locale-unsafe amount parsing (AMZ-SET-LOCALE-001). The Flat File V2 report type is treated as compliant and never flagged.

Example finding

BLOCKER AMZ-SET-XML-001: XML settlement workflow detected. Evidence: new XmlParser().parse(settlementXml). Mapping: XML report -> Flat File V2, no XML replacement.

Settlement Flat File V2 Sample Validator preview

Paste a real Flat File V2 sample to validate tab-delimited structure, required headers, canonical row mapping and locale-safe decimal parsing before cutover.

CheckUnsafe behaviorExpected behavior
Header mappingRead column 12 by positionResolve amount fields by header name
Locale amountparseFloat('95,00') returns 95Normalize locale format and preserve 95.00
ReconciliationAccept parsed rows without totalsReconcile canonical totals to the report

Legacy header to Flat File V2 mapping

Legacy modelFlat File V2 modelMigration action
Discrete price and fee columnsamount-type, amount-description, amountNormalize into canonical amount entries
Column positionHeader nameBuild a header-index map for every report
XML elementsTab-delimited rowsReplace the XML workflow; there is no XML replacement

Locale-safe amount example

Amazon documents that EU output can use 95,00 instead of 95.00. A dot-decimal parser can silently turn this into 95 or fail, so normalization must be locale-aware.

raw amount: 95,00
unsafe parseFloat result: 95
canonical decimal: 95.00

Canonical settlement model

Normalize each row to settlement ID, transaction identity, posted time, currency, amount type, amount description and a decimal amount. Downstream accounting should consume this canonical model rather than report column positions.

Frequently asked questions

Is there an XML replacement for settlement reports?

No. Amazon does not provide an XML replacement. You must move to the tab-delimited Flat File V2 report.

What changes in the columns?

Discrete price and fee columns collapse into amount-type, amount-description and amount. Parse by header name, not position.

Why does locale matter?

Flat File V2 amounts can use locale number formats such as EU decimal commas. parseFloat can silently corrupt values.

Official sources

Recommended next action

Last reviewed: 2026-07-02.

Open the interactive scanner: /app#/settlement