Tomaten und Sojamilch oder Wasser in einem Mixer oder einer Küchenmaschine glatt pürieren.
Öl in einem großen Topf auf mittlerer Flamme erhitzen. Senfsamen hineingeben. Nach deren Aufplatzen (20 bis 30 Sek.) Zwiebel, Knoblauch, Ingwer, Chilischote (falls verwendet) und Asafoetida hinzufügen und 2 bis 3 Minuten unter häufigem Rühren anschwitzen, bis es aromatisch duftet. Koriander, Kreuzkümmel, Garam Masala und Curryblätter zum Schluss ebenfalls kurz mitrösten.
Pürierte Tomaten, Tomatenmark, Kurkuma und Zucker einrühren. Zum Köcheln bringen. Flamme niedrig stellen und 7 bis 10 Min. unter häufigem Rühren so lange köcheln, bis die Soße eindickt, dunkelrot wird, und sich das Öl etwas trennt.
Spinat einrühren. Halb abgedeckt 5 Min. köcheln, bis der Spinat zusammengefallen und fast gar ist. Dann mit Salz abschmecken.
Zum Schluss Zitronensaft, das gehackte frische Koriandergrün und die Tofustücke unterrühren. Vom Herd nehmen und servieren.