diff --git a/src/components/01_branch-management/FormBranchInformation.vue b/src/components/01_branch-management/FormBranchInformation.vue
index 28fd6004..9c8e0607 100644
--- a/src/components/01_branch-management/FormBranchInformation.vue
+++ b/src/components/01_branch-management/FormBranchInformation.vue
@@ -155,7 +155,7 @@ function formatCode(input: string | undefined, type: 'code' | 'number') {
? $t('branch.form.headofficeNameEN')
: $t('branch.form.branchNameEN')
"
- :rules="[(val) => val && val.length > 0]"
+ :rules="[(val) => val && /^[A-Za-z]+$/.test(val)]"
:error-message="$t('form.error.required')"
for="input-name-en"
/>
diff --git a/src/components/02_personnel-management/FormPerson.vue b/src/components/02_personnel-management/FormPerson.vue
index 4135c00a..58345721 100644
--- a/src/components/02_personnel-management/FormPerson.vue
+++ b/src/components/02_personnel-management/FormPerson.vue
@@ -217,7 +217,11 @@ watch(
class="col"
:label="$t('personnel.form.firstNameEN')"
v-model="firstNameEN"
- :rules="[(val: string) => !!val || $t('form.error.required')]"
+ :rules="[
+ (val: string) => !!val || $t('form.error.required'),
+ (val: string) =>
+ /^[A-Za-z]+$/.test(val) || $t('form.error.letterOnly'),
+ ]"
/>
diff --git a/src/components/upload-file/FormCitizen.vue b/src/components/upload-file/FormCitizen.vue
index 02e55179..c15b0b64 100644
--- a/src/components/upload-file/FormCitizen.vue
+++ b/src/components/upload-file/FormCitizen.vue
@@ -310,6 +310,8 @@ function formatCode(input: string | undefined, type: 'code' | 'number') {
:label="$t('customer.form.firstNameEN')"
for="input-first-name-en"
v-model="firstNameEN"
+ :rules="[(val) => /^[A-Za-z]+$/.test(val)]"
+ :error-message="$t('form.error.letterOnly')"
/>
diff --git a/src/pages/03_customer-management/components/employer/EmployerFormBusiness.vue b/src/pages/03_customer-management/components/employer/EmployerFormBusiness.vue
index 76d4e745..89e486f5 100644
--- a/src/pages/03_customer-management/components/employer/EmployerFormBusiness.vue
+++ b/src/pages/03_customer-management/components/employer/EmployerFormBusiness.vue
@@ -174,6 +174,8 @@ let jobPositionFilter = selectFilterOptionRefMod(
class="col-md-6 col-12"
:label="$t('customer.form.jobPositionEN')"
v-model="jobPositionEN"
+ :rules="[(val) => /^[A-Za-z]+$/.test(val)]"
+ :error-message="$t('form.error.letterOnly')"
/>