Inventory every extension surface in the source estate as a business capability, then give each one an explicit disposition — because none of them has a runtime in D365.
The extension estate is where a SAP Business One migration's cost actually lives. The executive material says so plainly: the extension estate drives cost, and user-defined fields, tables and objects, add-ons, Crystal layouts, formatted searches, B1if scenarios and database procedures frequently carry more business-critical behaviour…
The source package enumerates eleven extension surfaces. Each has its own discovery method and its own failure mode.
The source material names five patterns as high-risk. Each deserves a deliberate hunt rather than a passive inventory.
SBO_SP_TransactionNotification and SBO_SP_PostTransactionNotice deserve their own treatment because they represent a gap with no target equivalent at all.
Test retirement first. Many extensions exist for a process that has changed, a report nobody reads, or a source limitation the target does not have. Making the case for retirement first, rather than defaulting to rebuild, is what keeps the backlog deliverable.
The common case: an artefact exists, it clearly does something, and nobody can explain why.
For artefacts that survive triage, the target home follows from the capability's nature.
Third-party add-ons need the discipline of a product evaluation, because that is what they are. The guidance is specific: capture vendor, version, tables, APIs, licensing and exportability.
The low-code layer deserves specific attention because it is the one most reliably absent from IT inventories, and the source material describes it exactly that way: often low-code business logic hidden from IT inventories; recover user dependency carefully.
Discovery — inventory all eleven surfaces, extract database procedures, list add-ons with vendor detail. Capability recovery — convert artefacts into business capability statements with owners. Triage — one disposition per artefact, with a named owner and recorded reasoning. Design — target mechanism per retained capability.
The extension estate is the cost driver, and it is triaged as capability, never migrated as code.