The matrix product is associative. That means you can put (decently) pairs of parentheses around the individual term at your desire. Now, when you choose parentheses so that you start with the product including the vector, e.g. like so for column vectors (i.e. the vector is on the right and the matrix on the left, typical for OpenGL)
M1 * M2 * ( M3 * v )
and continue to the outer terms, like so
= M1 * ( M2 * ( M3 * v ) )
Opengl reads in reverse order ...
As said above, "order" without further context is misleading here. For example, you can calculate
( ( M1 * M2 ) * M3 ) * v