Claro saves data every time a page is loaded using a "save completion" method. This method sets a bookmark and the progess measure (% complete), gathers and serializes completion data and then calls commit.
On the assessment summary page, Claro sends the whole course's score, sets the bookmark and then calls the "save completion" method from above. Each time a question/exercise is submitted by a learner the interaction data (question, choices, learners responses, attempt number, etc) are sent to the LMS.
On the last page of the course Claro sets the progress measure to 100%, evaluates the lesson status (Completion/Success status) and sets status as "Pass", "Fail", etc., and then calls commit.
Claro also commits data to the LMS at a timed interval (5000 milliseconds). Commit takes all the progress data (completions, status and scores) and sends that information to the LMS.