With the rapid growth and the deregulation of financial markets, many complex derivatives have been structured to meet specific financial goals. Unfortunately, most complex derivatives have no analytical formulas for their prices, particularly when there is more than one market variable. As a result, these derivatives must be priced by numerical methods such as lattice. However, the nonlinearity error of lattices due to the nonlinearity of the derivative's value function could lead to oscillating prices. To construct an accurate, multivariate lattice, this study proposes a multiphase method that alleviates the oscillating problem by making the lattice match the "critical locations," locations where nonlinearity of the derivative's value function occurs. Moreover, our lattice has the ability to model the jumps in the market variables such as regular withdraws from an investment account, which is hard to deal with analytically. Numerical results for vulnerable options, insurance contracts guaranteed minimum withdrawal benefit (GMWB), and defaultable bonds show that our methodology can be applied to the pricing of a wide range of complex financial contracts.