In a medium bowl, combine all the ingredients, forming a shaggy dough. Transfer to a work surface and knead for 2-3 minutes until a dough forms. Dust with flour if the dough is very sticky, but be careful not to add too much.
Divide the dough into 3 equal parts, around 85g each. Knead into a smooth ball, then coat in oil and place in a bowl/container. Cover and refrigerate overnight.
Have a bowl of oil beside you as you work. On a large oiled surface with oiled hands, flatten the dough out with the heel of your palm.
Position your hands, one palm facing upwards under the dough while the other palm faces downwards on top of the dough. Flip the dough several times, rotating the dough in between each flip so that the dough stretches evenly. Then stretch out the edges of the dough.
Sprinkle some oil over the dough then fold opposite sides towards the middle. Hold one end, twirling the dough around it and tucking the other end under the twirled dough. Let the dough rest for 10 minutes.
Add oil to a large pan over medium heat. Flatten the dough with your palms. Once the oil is hot, cook the roti canai for 1-2 minutes on each side until golden brown and crispy.
Once the roti canai has cooled slightly, 'clap' it with your hands to separate the layers. Serve with dhal and/or curry.