The helper thing is a great idea, liked that.
tinyint and varchar are about storage and performance. Tiny int is 1 byte, whereas varchar can be longer, related to your text: "pending" is 7 bytes for example. But using 0 (as number) is just 1.
And numeric comparison and filtering will be faster in your sql when compared with text comparison.