We are given that \( A \) is a matrix of order \( m \times n \), i.e., \( A \) has \( m \) rows and \( n \) columns.
The matrix multiplication \( A^T B \) is defined, which means the number of columns of \( A^T \) (which is \( m \)) must match the number of rows of \( B \). Therefore, \( B \) must have \( m \) rows.
Next, the matrix multiplication \( B A^T \) is also defined, which means the number of columns of \( B \) (which is \( n \)) must match the number of rows of \( A^T \) (which is \( n \)). Therefore, \( B \) must have \( n \) columns.
Thus, the order of matrix \( B \) must be \( n \times m \).
Therefore, the correct answer is \( \boxed{n \times m} \).