Pick the integration layer before anything else. Point-to-point means a Magento module calls the ERP API directly, which is cheap to build and expensive to own: every ERP field rename becomes a Magento deployment. Third-party middleware, whether Celigo, Boomi or Jitterbit, adds a subscription and a mapping surface where retries, dead letters and field changes live outside the storefront release cycle. Adobe App Builder is a third option, Adobe's own extensibility platform rather than a third-party iPaaS, and it also moves mapping and event handling out of the storefront codebase. All three are defensible. An agency that cannot state which one it is proposing, and why, has not designed the integration yet.
1. Price index explosion. Symptom: the price reindex runs for hours and shared catalog changes take a day to appear. Cause: every shared catalog assignment creates a customer group, and price index rows scale as products multiplied by customer groups multiplied by websites, so 80,000 SKUs against 900 companies is a 72 million row table nobody should build. Fix: run `bin/magento indexer:set-mode schedule catalog_product_price` and `bin/magento indexer:set-dimensions-mode catalog_product_price customer_group`, then resolve contract price from the ERP at cart and quote time instead of materialising every combination.
2. Salable quantity drift. Symptom: the storefront sells stock the warehouse does not have. Cause: the ERP writes the legacy `cataloginventory_stock_item` quantity while Multi Source Inventory reads `inventory_source_item`, and reservations accumulate behind cancelled orders. Fix: write source items through the MSI API, then schedule `bin/magento inventory:reservation:list-inconsistencies` and `bin/magento inventory:reservation:create-compensations`.
3. HTTP 429 from NetSuite. Symptom: the nightly sync dies partway and nobody notices until invoices go missing. Cause: SuiteTalk concurrency is governed per account by service tier, with additional concurrent slots sold as SuiteCloud Plus licences. Fix: throttle to the licensed concurrency, apply exponential backoff, and move high-volume reads to saved search exports rather than record-by-record calls.
4. Company credit held in two places. Symptom: an account over its limit still checks out. Cause: Adobe Commerce B2B stores company credit locally while the binding limit lives in the ERP. Fix: revalidate against the ERP at order placement, fail closed, and keep the ERP as the only writer of the limit.
5. Synchronous bulk writes. Symptom: PHP timeouts and half-imported catalogs during price pushes. Cause: bulk operations sent through standard REST rather than async bulk. Fix: post to `/rest/all/async/bulk/V1/products` and keep RabbitMQ consumers alive under supervisor with `bin/magento queue:consumers:start async.operations.all`.
6. No graceful degradation. Symptom: the ERP takes its own maintenance window and the storefront loses pricing with it. Fix: cache last known good price and stock per company, show an explicit staleness state, and queue orders for replay.
Version and licence checks for a 2026 quote. Adobe publishes its version lifecycle policy and system requirements on Experience League, and the dates there set the terms of any 2026 quote. Adobe Commerce 2.4.4 and 2.4.5 are out of support entirely. Adobe Commerce 2.4.6 left regular support on 11 August 2026 and has extended support until 31 August 2027, so a merchant sitting on it is buying time on a published clock rather than standing still safely. Adobe Commerce 2.4.9 was released on 12 May 2026 with regular support running to 31 May 2029. Moving up the 2.4.x line moves PHP, the database and the search engine at the same time, which makes the hosting estimate and the code estimate a single decision rather than two. The B2B module ships as a separate Composer package pinned against core patch levels, so a core upgrade and a B2B upgrade are two changes, not one, and the connector needs a regression pass across both. PunchOut is not native: cXML and OCI catalogs require TradeCentric, Greenwing or a custom endpoint, priced separately. Hyva publishes its licence terms on hyva.io, so any theme licence line on a 2026 quote should be read against them before it is accepted.