def is_valid_credit_card(card_num):
    """
    Checks if valid credit card by:
    1. Multiply every other digit by 2, starting with second-to-last digit, then add products digits together.
    2. For the ones not multiplied, add to other digits
    3. If total % 10 is 0, number is valid
    """
    first_total = second_total = 0
    for c, val in enumerate(reversed(card_num)):
        c += 1
        if c % 2 is 0:
            # Multiply value by two, then go through each character
            # and convert to an int then add to first total
            for i in str(int(val) * 2):
                first_total += int(i)
        else:
            second_total += int(val)
    
    if (first_total + second_total) % 10 is 0:
        # If the complete total is divisble by 10, we won!
        return True
    
    return False