An observer-based fault tolerant control for output tracking of a class of nonlinear systems is proposed. A Multi-output Generalized Observability Canonical Form (MGOCF) is presented, this form allows to obtain a dynamical controller that depends on estimations of the faults. The dynamical controller is capable of linearizing the tracking errors, which achieves asymptotic stability. Finally, with the purpose of illustrating the effectiveness of the suggested approach, an application on the three-tank system is shown.