I am working on an payroll application in which date input fields are used in different types of user scenarios (for example, entering your date of birth, but also entering the start/end date of a contract, the start date of a change in wage, ...);
We use 1 input field with the format DD/MM/YYYY, allowing formats such as DDMMYYYY, DD-MM-YYYY, DDMMYY, etc., combined with a date picker. The above formats all support cases in which the user enters 6 digits, but my question is on the use case in which a user would enter only 4 digits, for example 0103. Up until now, the system autocompletes the date to 0103(current year), in this case 01/03/2023. This would seem logic in some cases, but when entering a date of birth or a date in the past, this seems more strange. Also, when entering a totally random number like 1234, the system corrects it to random dates as 01/07/2025 etc. I was therefore thinking of, instead of the autocomplete, give an error message saying the date format should be DD/MM/YYYY. Or is it more user friendly to stick with the autocomplete function to the current year, and let the user change it when necessary?