For \(t \in \mathbb{N}\) and every \(i\in[t]\), let \(H_i\) be a \(d_i\)-regular connected graph, with \(1<|V(H_i)|\le C\) for some integer \(C\ge 2\). Let \(G=\square_{i=1}^tH_i\) be the Cartesian product of \(H_1, \ldots, H_t\). We show that if \(t\ge 5C\log_2C\) then \(G\) contains a (nearly-)perfect matching. Then, considering the random graph process on \(G\), we generalise the result of Bollob\'as on the binary hypercube \(Q^t\), showing that with high probability, the hitting times for minimum degree one, connectivity, and the existence of a (nearly-)perfect matching in the \(G\)-random-process are the same. We develop several tools which may be of independent interest in a more general setting of the typical existence of a perfect matching under percolation.