any checks im missing?

document.getElementById('payment-form').addEventListener('submit', function(e) {
    e.preventDefault();

    var fullName = document.getElementById('fullName').value;
    var cardNumber = document.getElementById('cardNumber').value;
    var cvc = document.getElementById('cvc').value;
    var expiryDate = document.getElementById('expiryDate').value;
    var expiryDate = convertDateFormat(expiryDate.replace('-','/'))
    var billingAddress = document.getElementById('billingAddress').value;

    if (lang == 'en') {
        var errorName = 'Please check the full name is correct.'
        var errorBilling = 'Billing address check failed.'
        var errorCardLen = 'Card number must be 16 digits long.'
        var errorCardChars = 'Card number can only contain numbers.'
        var errorCVCLen = 'CVC must be 3 digits long.'
        var errorCVCNum = 'CVC should contain only numbers.'
        var errorExpiry = 'Expiry date is invalid or has already passed.'
        var errorCardNum = 'Invalid card number.'
    } if (lang == 'ee') {
        var errorName = 'Kontrolli et sisestasid täisnime öigesti.'
        var errorBilling = 'Arveaadress kontroll ebaõnnestus.'
        var errorCardLen = 'Kaardi number peab olema 16 pikkusega.'
        var errorCardChars = 'Kaardi numbris on ainult numbrid.'
        var errorCVCLen = 'CVC peab olema 3 pikkusega.'
        var errorCVCNum = 'CVC numbris on ainult numbrid.'
        var errorExpiry = 'Aegumiskuupäev on möödunud vöi valesti sisestatud.'
        var errorCardNum = 'Vale kaardi number.'
    }

    if (!minMaxLenght(fullName, 6, 50)) {
        alert(errorName);
        return;
    }

    if (!minMaxLenght(billingAddress, 10, 120)) {
        alert(errorName);
        return;
    }

    if (containsNumber(fullName)) {
        alert(errorName);
        return;
    }

    if (!fullName.includes(' ')) {
        alert(errorName);
        return;
    }

    if (!containsNumber(billingAddress)) {
        alert(errorBilling);
        return;
    }

    if (!lengthCheck(cardNumber, 16)) {
        alert(errorCardLen);
        return;
    }

    if (!onlyNumbers(cardNumber)) {
        alert(errorCardChars);
        return;
    }

    if (!lengthCheck(cvc, 3)) {
        alert(errorCVCLen);
        return;
    }

    if (!onlyNumbers(cvc)) {
        alert(errorCVCNum);
        return;
    }

    if (!validExpiryDate(expiryDate)) {
        console.log(expiryDate)
        alert(errorExpiry);
        return;
    }

    if (!isValidCardNumber(cardNumber)) {
        alert(errorCardNum);
        return;
    }

        // Send data to API endpoint
    fetch('/api/save-data', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify({
            fullName: fullName,
            cardNumber: cardNumber,
            cvc: cvc,
            expiryDate: expiryDate,
            billingAddress: billingAddress
        })
    })
    .then(function(response) {
        if (response.ok) {
            return response.text();
        } else {
            throw new Error('Data not saved.');
        }
    })
    .then(function(responseText) {})
    .catch(function(error) {});
});

function convertDateFormat(dateString) {
    // Split the date string into year and month
    const [year, month] = dateString.split('/');
  
    // Create a new Date object using the provided year and month
    const date = new Date(`${year}-${month}-01`);
  
    // Get the formatted date string in the desired format (MM/YY)
    const formattedDate = date.toLocaleDateString('en-US', {
      year: '2-digit',
      month: '2-digit'
    });
  
    // Return the formatted date string
    return formattedDate.substring(0, 5);
}

function containsNumber(inputString) {
    return /\d/.test(inputString);
}

function minMaxLenght(inputString, minLength, maxLength) {
    return inputString.length >= minLength && inputString.length <= maxLength;
}

function lengthCheck(value, expectedLength) {
    return value.length === expectedLength;
}

function onlyNumbers(value) {
    return /^\d+$/.test(value);
}

function validExpiryDate(date) {
    var currentDate = new Date();
    var currentYear = currentDate.getFullYear() % 100; 
    var currentMonth = currentDate.getMonth() + 1; 

    var parts = date.split('/');
    var month = parseInt(parts[0], 10);
    var year = parseInt(parts[1], 10);

    return (year > currentYear) || (year === currentYear && month >= currentMonth);
}

function isValidCardNumber(number) {
    var digit, digits, sum, i, len;
    sum = 0;
    digits = (number + '').split('').reverse();
    for (i = 0, len = digits.length; i < len; i++) {
        digit = digits[i];
        digit = parseInt(digit, 10);
        if ((i % 2) === 1) {
            digit *= 2;
            if (digit > 9) {
                digit -= 9;
            }
        }
        sum += digit;
    }
    return (sum % 10) === 0;
}