A system, method and computer program product to validate documents is provided. A processor receives an image of a document. The processor identifies a plurality of fixed contents of the document. The processor identifies a plurality of field contents of the document. The processor determines a type of the document based, at least in part, on the plurality of fixed contents and the plurality of field contents. The processor validates the plurality of field contents of the document based, at least in part, on rules associated with the type of the document. The processor generates a validated document.