SP-API Migration Validator Run free scan

Migration assurance

Finances listTransactions reconciliation validator

listTransactions replaces the v0 financial-event lists with a single transaction model that carries recursive breakdowns. This validator accepts a request manifest plus one or more page samples, then checks window safety, pagination progression, duplicate IDs and recursive breakdown totals against optional expected totals.

What it checks

postedAfter..postedBefore windows over the 180-day limit, which can return an empty response; two-minute safety windows for recent data; page-chain completeness; empty pages while nextToken exists; repeated tokens; preservation of original request arguments; duplicate transaction IDs; and recursive breakdown[] totals rolled up per transaction.

Why it matters

The validator checks whether the supplied pages and optional expected totals reconcile under deterministic reference rules. It does not execute or prove your production roll-up implementation.

Supported input formats and limits

InputFormatLimit
Request manifestJSON with postedAfter, postedBefore, requestedAt and optional pages[]Maximum 1 MB
Page samplesActual listTransactions response or {pages:[{payload:{transactions,nextToken}}]}Maximum 10 MB for transactions/pages and 1 MB for the request manifest
Transaction cappayload.transactions[] across supplied pagesMaximum 50,000 transactions
Breakdown depthRecursive breakdowns[] tree with breakdownAmount Currency objectsMaximum depth 25
Expected totalsOptional manifest totals for reconciliationOptional

Redaction behavior

The validator reports transaction IDs, issue codes and aggregate amounts needed for reconciliation. It never calls Amazon and does not export raw secret values.

Exact checks

Sample input

transactions: {
  "pages": [
    {
      "payload": {
        "transactions": [
          {
            "transactionId": "t1",
            "transactionStatus": "RELEASED",
            "totalAmount": {"currencyCode": "USD", "currencyAmount": 1.00},
            "breakdowns": []
          }
        ],
        "nextToken": null
      }
    }
  ]
}
manifest: {"postedAfter":"2026-01-01T00:00:00Z","postedBefore":"2026-01-31T12:00:00Z","requestedAt":"2026-01-31T12:05:00Z"}

Sample output

{
  "status": "PASS",
  "transactionsTotal": 1,
  "paginationComplete": true,
  "issues": []
}

PASS, PARTIAL, FAILED and NOT_VERIFIED logic

StatusMeaning
PASSThe supplied pages reconcile and pagination/window checks pass.
PARTIALMedium-severity reconciliation or coverage issues require review.
FAILEDHigh-severity window, pagination, duplicate or total issues are present.
NOT_VERIFIEDNo transactions or insufficient sample data were supplied.

Known limitations

Pricing entitlement

Single unlocks the Finances validator when Finances is the purchased module. Bundle and Agency include all three validators.

Frequently asked questions

What is the window limit?

If postedAfter and postedBefore are more than 180 days apart, Amazon returns an empty response. Split larger ranges into windows of 180 days or less.

Official sources

Recommended next action

Last reviewed: 2026-07-02.

Open the interactive scanner: /app#/validators