expected_profit now uses the same net-revenue formula as price calculation (VAT, provision, fixed fee, package cost).
Backend (FBM):
FBM recalculation runs in a worker thread (same pattern as FBA), keeping the server responsive during long batch recalcs.
SP-API FeesEstimate failures raise SpApiFeeEstimateError and set per-country pricing errors plus article status=error with the real message (e.g. invalid/missing ASIN for SKU).
UVP export persists DE.ignore=true via deep-copy of international_pricing so JSONB updates are reliably saved.
Backend (UVP):
DELETE /{sku}/uvp accepts an optional body (channel flags) and clears min_uvp / max_uvp correctly.
Frontend:
Kaufland article table headers aligned with body columns (listing/min/max price, buybox, expected profit).
FBM table headers renamed to Min Price / Max Price with corrected column spans.