Strain the water from the ricotta cheese with cheesecloth or tissue. Try to squeeze the water as much as you can. It is not mandatory but helps in getting firm sandesh.
In a mixing bowl, add the strained ricotta cheese, milk powder, sugar, and cardamom powder.
Mix thoroughly. The cheese mix will be thick, but as the sugar melts, it will be in a semi-solid state. Do not add any milk or water while mixing.
Transfer this ricotta cheese mix to a ghee-coated vessel. Add the saffron strands on top.
Cover this tightly with an aluminium foil and steam this for about 30 minutes on stove-top or instant pot. I went with the stove-top method.
In a pot, add 2 cups of water and place a trivet. Keep the ricotta cheese mixture on top of the trivet and cover the vessel with a lid and steam for 30 minutes over medium heat. Around 15 minutes, check if there is sufficient water in the steaming pan, if not add one cup. Check the video for the details.
After steaming, allow the sandesh to cool down to room temperature. And then refrigerate it for about 2 to 3 hours. I chilled it for about 2.5 hours.
After 2.5 hours, remove the foil, and run a slicing knife around the edges of the sandesh vessel, lift it and carefully transfer it to a plate. Small cracks are perfectly fine as we are going to slice them.
Now slice the sandesh into your desired shapes and serve chill.
I would recommend whole-milk ricotta cheese for this bhapa sandesh.
Adjust the sugar as per your preference. If you are not able to strain the liquid from ricotta cheese, then increase the milk powder by one or two tbsp. You can steam this up to 40 to 45 minutes but not more than that.
Also, steam it over medium to medium-low heat.
Make sure you are covering the sandesh pan with aluminium foil thoroughly if not while steaming the water droplets might get in and make the sandesh soggy.
You can skip saffron strands and garnish it with edible silver or nuts after slicing the sandesh.