Может отправлять данные на сервер, может получать с сервера, а может и нет. И все это без перезагрузки страницы.
У меня JS отправляет данные на сервер, php-скрипту. То есть пользщователь вводит телефон, у него поле телефона меняется на поле для пароля, в это время JS-передал номер телефона php скрипту, который отправил смс и обратно сообщает js-скрипту этот пароль. Проверка происходит сначала на пользовательском уровне, то есть JS-скриптом на соответствеие пароля выданного для телефона. если все ок, проверка происходит на уровне сервера. Если все ок, то отправляется сигнал JS что все збс, и отправляется сигнал микротику что все збс. То есть все работает не на микротике, а на внешнем веб-сервере.