Skip to content

1.10.7

⚙️ Patch 1.10.7 — Otto above-max reactivate, Sellerlogic FBA export verify

🚀 Summary

Otto · sale above max — Before full Otto price monitoring, articles with sale_price > max_price are set back to status=active and unpause_date=NULL. UVP articles are excluded; targeted wave/manual items with use_min_max_rules=false are reactivated.

Sellerlogic · FBA export — Post-update bounds verification used the default FBM stock type when reading the product back. FBA updates then looked empty (Fetched 0 FBM products), every region failed with “bounds not applied”, and status stayed update_needed even though the PUT had succeeded. Verify now uses the same fulfillment method as the update. Belgium marketplace id AMEN7PMS3EDWL (returned by Sellerlogic) is mapped to BE / EUR instead of being skipped as unknown / mislabeled Turkey.

FBA · null bounds — Export crashed with AttributeError when a region had min_bound or max_bound as JSON null (.get("min_bound", {}) still returns None if the key is present). Those regions are skipped; other regions with real bounds still export.

✨ Details

Area Behavior
Otto · pre-monitor reactivate_items_sale_above_max after due unpause on full monitor runs
Otto · include sale_price > max_price, use_min_max_rules=false/true, no min_uvp/max_uvp
Otto · action status=active, unpause_date=NULL
Sellerlogic · verify _verify_product_bounds / _apply_reprice_to_product pass fullfilment_methode (FBA or FBM)
Sellerlogic · BE AMEN7PMS3EDWL → region BE, currency EUR (aligned with Plenty Sellerlogic mapping)
Sellerlogic · symptom fixed False Exported: 0 / stuck update_needed after successful min/max PUT
FBA · null min/max_bound Treat null bounds as missing; skip region instead of crashing export

📌 Notes

  • Redeploy service_multi-repricer (and Sellerlogic-using export path).
  • Re-run FBA export (or base cron with update_prices=true) to clear articles stuck on update_needed from the false verify failures.
  • Shopify / Kaufland / FBM update_needed piles are not covered by this FBA verify fix — investigate those channels separately if they remain after a successful export.

📁 Files

  • backend/service_multi-repricer/app/api/v1/endpoints/otto_articles.py
  • backend/service_multi-repricer/app/api/v1/endpoints/fba_articles.py
  • backend/service_multi-repricer/app/crud/repricer_article.py
  • backend/service_multi-repricer/app/services/sellerlogic/sellerlogic_manager.py
  • backend/service_multi-repricer/app/tests/test_reactivate_sale_above_max.py
  • backend/service_multi-repricer/app/tests/test_sellerlogic_reprice_verify.py
  • backend/service_multi-repricer/app/tests/test_exports.py
  • docs/docs/patchnotes/1.10/1.10.7.md — this file