## ✅ Issue #1: Shipping Fields - Addon Responsibility
Created SHIPPING_FIELD_HOOKS.md documenting:
**The Right Approach:**
- ❌ NO hardcoding (if country === ID → show subdistrict)
- ✅ YES listen to WooCommerce hooks
- ✅ Addons declare their own field requirements
**How It Works:**
1. Addon adds field via `woocommerce_checkout_fields` filter
2. WooNooW fetches fields via API: `GET /checkout/fields`
3. Frontend renders fields dynamically
4. Validation based on `required` flag
**Benefits:**
- Addon responsibility (not WooNooW)
- No hardcoding assumptions
- Works with ANY addon (Indonesian, UPS, custom)
- Future-proof and extensible
**Example:**
```php
// Indonesian Shipping Addon
add_filter('woocommerce_checkout_fields', function($fields) {
$fields['shipping']['shipping_subdistrict'] = [
'required' => true,
// ...
];
return $fields;
});
```
WooNooW automatically renders it!
## ✅ Issue #2: Tax - Grab Selling Locations
Updated TAX_SETTINGS_DESIGN.md:
**Your Brilliant Idea:**
- Read WooCommerce "Selling location(s)" setting
- Show predefined tax rates for those countries
- No re-selecting!
**Scenarios:**
1. **Specific countries** (ID, MY) → Show both rates
2. **All countries** → Show store country + add button
3. **Continent** (Asia) → Suggest all Asian country rates
**Smart Detection:**
```php
$selling_locations = get_option('woocommerce_allowed_countries');
if ($selling_locations === 'specific') {
$countries = get_option('woocommerce_specific_allowed_countries');
// Show predefined rates for these countries
}
```
**Benefits:**
- Zero re-selection (data already in WooCommerce)
- Smart suggestions based on user's actual selling regions
- Scales for single/multi-country/continent
- Combines your idea + my proposal perfectly!
## Next: Implementation Plan Ready