Import vendors from CSV
Expected columns: name (required), tax_id, payment_terms,
gl_code, default_currency, contact_email. Existing vendors
are matched by tax ID first, then by normalized name, and updated in place.
Expected columns: name (required), tax_id, payment_terms,
gl_code, default_currency, contact_email. Existing vendors
are matched by tax ID first, then by normalized name, and updated in place.