diff --git a/frontend/src/pages/Products/Products.js b/frontend/src/pages/Products/Products.js
index b47a2f5..65896d0 100644
--- a/frontend/src/pages/Products/Products.js
+++ b/frontend/src/pages/Products/Products.js
@@ -537,6 +537,18 @@ const CreateProductModal = ({ onSubmit, onCancel, sharedProducts, categories })
const [seedBlend, setSeedBlend] = useState([]); // [{cultivar:'', percent:0}]
const [seedNewRate, setSeedNewRate] = useState('');
const [seedOverRate, setSeedOverRate] = useState('');
+ // Sync default rate field as average for compatibility
+ useEffect(() => {
+ if (formData.productType === 'seed') {
+ const n = parseFloat(seedNewRate);
+ const o = parseFloat(seedOverRate);
+ let avg = '';
+ if (!isNaN(n) && !isNaN(o)) avg = ((n + o) / 2).toFixed(2);
+ else if (!isNaN(n)) avg = n;
+ else if (!isNaN(o)) avg = o;
+ setFormData(prev => ({ ...prev, customRateAmount: avg }));
+ }
+ }, [formData.productType, seedNewRate, seedOverRate]);
const [availableSpreaders, setAvailableSpreaders] = useState([]);
const [loadingSpreaders, setLoadingSpreaders] = useState(false);
const [newSpreaderSetting, setNewSpreaderSetting] = useState({
@@ -713,19 +725,7 @@ const CreateProductModal = ({ onSubmit, onCancel, sharedProducts, categories })
{formData.productType === 'seed' && (
- <>
-