Electric vehicles (EVs) sales have grown rapidly recently, and more growth is expected over the coming years. A challenging problem arises when managing different battery requirements of moving EVs through reliable Charging Stations (CSs). Current concerns for EV users are long waiting lines at CSs and dropping below a predefined battery capacity limit. For this reason, this paper proposes an Internet of Things (IoT)-based EV charging scheduling system, which with the use of IoT technologies, decides the optimal assignment between EVs and Charging Points (CPs) located at different CSs at given time t. By using cloud computing and real time data such as number of EVs, number of CSs, number of CPs at different CSs … etc; the scheduling controller uses a recursive algorithm to generate all possible scenarios, and then shares the optimal assignment (that minimizes the average waiting time and fulfill battery constraints and charging needs) with all EVs. To test the validity of the IOT based scheduling system, sensitivity analysis by running different scenarios (pertaining to different parameters) was conducted. The different scenarios were compared to a base scenario where the system was not used and real-life random assignment is considered. The different run scenarios show superiority over the base scenario in terms of average waiting time (WT) and battery capacity threshold. For example, in the base scenario, violation of battery capacity threshold occurred 9.1% of the time, making random selection an unreliable choice versus no violations when the IOT scheduling system is used. Also, all tested scenarios under the IOT scheduling system show shorter average WT compared to the base scenario. For instance, scenarios 2 and 3 show more than 35% and 55% decrease in WT compared to the base scenario.