Make the curtido: bring a large pot of water to a boil, add the cabbage, and boil until soft. Reserve 1/2 cup of the water, drain the rest, then combine the cabbage with the carrot, onion, salt, vinegar, and reserved hot water. Let it sit while preparing the pupusas.
Make the filling by stirring the refried beans, chicken seasoning, and cheese together in a bowl; set aside.
Make the dough by adding the masa and salt to a large mixing bowl, then adding the water 1 cup at a time and stirring with your hands. The finished dough should feel similar to play-doh.
Assemble the pupusas: flatten a small handful of dough into a disc, lift the edges to form a shallow cup, add 1–2 tablespoons of filling, fold the sides up into a ball, then flatten it back into a disc. Repeat until the filling is used.
Heat 1 tablespoon of oil in a cast-iron or heavy-bottomed skillet over medium heat. Cook 3 pupusas for 2–3 minutes, flip, and cook 1–2 minutes until golden. Repeat with the remaining pupusas.
Serve the pupusas with curtido on top and salsa roja if available.