diff --git a/internal/mappers/voucher_mapper.go b/internal/mappers/voucher_mapper.go index 7efa032..fdf85fc 100644 --- a/internal/mappers/voucher_mapper.go +++ b/internal/mappers/voucher_mapper.go @@ -107,21 +107,14 @@ func maskPhoneNumber(phone *string) string { } phoneStr := *phone - - // Normalize: replace leading "62" with "0" - if strings.HasPrefix(phoneStr, "62") { - phoneStr = "0" + phoneStr[2:] + if len(phoneStr) <= 4 { + return strings.Repeat("*", len(phoneStr)) } - // If phone length <= 8, just mask the middle - if len(phoneStr) <= 8 { - return phoneStr - } - - // Show first 4 and last 4 characters - start := phoneStr[:4] - end := phoneStr[len(phoneStr)-4:] - middle := strings.Repeat("*", len(phoneStr)-8) + // Show first 2 and last 2 characters, mask the middle + start := phoneStr[:2] + end := phoneStr[len(phoneStr)-2:] + middle := strings.Repeat("*", len(phoneStr)-4) return start + middle + end }