SP-API Migration Validator Run free scan

Migration assurance

Supported scope and rule coverage

This is exactly what the scanner covers and what it deliberately does not. Deliberate exclusions are correct-by-design: flagging them would be a false positive.

What we never flag

Orders v0 operations outside the removal set (for example confirmShipment), listFinancialEventGroups, listTransactions and the Flat File V2 report type.

Active ruleset versions

Every scan snapshots these versions; the last-verified date states when the rule knowledge was checked.

ModuleRulesetReleasedLast verified
Ordersamazon-orders-1.0.0-r12026-07-022026-07-02
Settlementamazon-settlement-1.0.0-r12026-07-022026-07-02
Financesamazon-finances-1.0.0-r12026-07-022026-07-02

Complete active rule matrix

All active rule IDs are listed below. Confidence describes the detector, not a guarantee that a migration is correct; limitations identify where runtime behavior can hide evidence.

Rule IDModuleDetectionSupported filesConfidenceKnown limitation
AMZ-ORD-OPERATION-001OrdersDeprecated Orders v0 operation: Whole-word match on the in-scope operation names only.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-ENDPOINT-001OrdersOrders API v0 endpoint: Path pattern match.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-PARAM-001OrdersRenamed or semantically changed Orders parameter: Whole-word match against the known parameter map.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-PARAM-002OrdersOrders parameter with no replacement: Whole-word match against the no-replacement set.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-STATUS-001OrdersOrder status needs remap: Whole-word match against the status map.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-FULFILL-001OrdersFulfillment channel needs remap: Whole-word match against the fulfillment map.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-PROGRAM-001OrdersBoolean flag moves to programs[]: Whole-word match against the boolean-flag map.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-ORD-RDT-001OrdersRestricted Data Token workflow for Orders PII: RDT signal plus an Orders-PII signal in the same file (low confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textLow — requires verificationDynamic wrappers and generated code can require manual verification.
AMZ-ORD-PAGINATION-001OrdersLegacy NextToken pagination: NextToken match gated by an Orders context signal (low confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textLow — requires verificationCustom pagination abstractions can hide control flow.
AMZ-SET-REPORT-001SettlementLegacy settlement report type: Whole-word match against the deprecated report-type set.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-SET-XML-001SettlementXML settlement workflow: XML report-type or XML-parse signal in a settlement context.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighCustom parser wrappers can hide XML usage.
AMZ-SET-COLUMN-001SettlementLegacy settlement column assumption: Match against the legacy column-name map.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-SET-POSITIONAL-001SettlementPositional column parsing: Positional/index parsing pattern in a settlement context.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighGenerated parser code may be excluded as vendor output.
AMZ-SET-LOCALE-001SettlementLocale-unsafe amount parsing: parseFloat/Number/float pattern gated by settlement amount context; absence of a locale helper is not used as blocker evidence.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighDynamic wrappers and generated code can require manual verification.
AMZ-FIN-OP-001FinancesDeprecated Finances financial-event operation: Whole-word match that explicitly excludes listFinancialEventGroups.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-FIN-ENDPOINT-001FinancesDeprecated Finances v0 endpoint: Path pattern match on the v0 financialEvents endpoints.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textContext-capped: direct runtime/config may be High; plain strings Medium; docs/comments LowDynamic wrappers and generated code can require manual verification.
AMZ-FIN-WINDOW-001FinancesDate window exceeds 180 days: Numeric window literal over 180 near a window/range keyword (low confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textLow — requires verificationRuntime-generated dates can require manual verification.
AMZ-FIN-TIME-SAFETY-001FinancesPosted cutoff too close to request time: Request-time expression with no safe offset (medium confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textMediumRuntime-generated dates can require manual verification.
AMZ-FIN-COMPLETENESS-001FinancesRecent data treated as complete: Recent-48-hour assumption in a listTransactions context (low confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textLow — requires verificationDynamic serializers and generated clients can hide behavior.
AMZ-FIN-PAGINATION-001FinancesStops on an empty page: Empty-list break/return in a nextToken context.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighCustom pagination abstractions can hide control flow.
AMZ-FIN-PAGINATION-ARGS-001FinancesPaginated request omits original arguments: Inspect listTransactions object arguments on token calls.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighCustom pagination abstractions can hide control flow.
AMZ-FIN-STATUS-001FinancesIncomplete transaction-status handling: Released-only status branch in a transaction context.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighDynamic wrappers and generated code can require manual verification.
AMZ-FIN-IDENTIFIER-001FinancesUnsupported related identifier: Validate literal relatedIdentifierName values.TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textHighDynamic wrappers and generated code can require manual verification.
AMZ-FIN-BREAKDOWN-001FinancesFlat-only breakdown parsing: Flat map/reduce/forEach in a listTransactions context (medium confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textMediumCustom recursive helpers can require manual verification.
AMZ-FIN-DEDUP-001FinancesMissing transaction-ID deduplication: Absence check scoped to multi-fetch listTransactions code (low confidence).TS, JS, Python, Java, Kotlin, C#, Go, Ruby, PHP, config/textLow — requires verificationDynamic serializers and generated clients can hide behavior.

Supported files

Exact exclusions

ModuleExcluded itemWhy
OrdersOrders v0 operations outside the removal setOperations like confirmShipment are NOT flagged; they are not in this removal.
FinanceslistFinancialEventGroupsNot removed in this migration and never flagged as a blocker.
FinanceslistTransactions (v2024-06-19)The replacement operation is treated as compliant, never flagged.
SettlementFlat File V2 report typeThe replacement report type is treated as compliant, never flagged.

Global limitations

Official sources

Recommended next action

Last reviewed: 2026-07-02.

Open the interactive scanner: /app#/supported-scope