Curry Puff PJ Recipe: Flaky Malaysian Pastry

Updated November 5, 2026

Total time
1 hr 25 min
prep 45 min · cook 40 min
Serves
8
portions as written

Jump to recipe

Curry Puff PJ Recipe: Flaky Malaysian Pastry

Curry puffs, known as epok-epok in Malaysia and Singapore, are golden, flaky pastries filled with a spicy, savory potato and chicken curry. This recipe, inspired by the popular street-food style found in Petaling Jaya (PJ), delivers a crisp, blistered crust with a rich, aromatic filling that is both comforting and satisfying. The combination of a tender shortcrust pastry and a well-spiced curry filling makes these puffs an irresistible snack or appetizer.

Ingredients

  • For the filling:
  • 2 tablespoons (30 ml) vegetable oil
  • 1 medium onion, finely chopped (about 1 cup / 150 g)
  • 2 cloves garlic, minced
  • 1 tablespoon (15 g) curry powder (preferably Malaysian or Indian)
  • 1 teaspoon (2 g) ground turmeric
  • 1 teaspoon (2 g) ground cumin
  • 1 teaspoon (2 g) ground coriander
  • 1/2 teaspoon (1 g) chili powder (adjust to taste)
  • 1/2 teaspoon (2 g) salt, plus more to taste
  • 1/4 teaspoon (0.5 g) black pepper
  • 1 large potato (about 300 g / 10 oz), peeled and cut into 1/2-inch (1 cm) cubes
  • 1/2 cup (120 ml) water or low-sodium chicken broth
  • 1/2 cup (75 g) frozen peas, thawed
  • 1/2 pound (225 g) ground chicken (or finely chopped chicken breast)
  • 1 tablespoon (15 ml) lime juice
  • For the pastry:
  • 2 cups (250 g) all-purpose flour, plus extra for dusting
  • 1/2 teaspoon (3 g) salt
  • 1/2 cup (115 g) cold unsalted butter, cut into small cubes
  • 1/4 cup (60 ml) ice-cold water, plus more if needed
  • 1 egg, beaten (for egg wash)

Instructions

  1. Make the filling: Heat the oil in a large skillet over medium heat. Add the onion and cook, stirring, until soft and translucent, about 5 minutes. Add the garlic and cook for 1 minute more.
  2. Stir in the curry powder, turmeric, cumin, coriander, chili powder, salt, and pepper. Cook for 1 minute until fragrant.
  3. Add the ground chicken and cook, breaking it up with a spoon, until no longer pink, about 5 minutes. If using chicken breast, cook until opaque.
  4. Add the potato cubes and water (or broth). Bring to a simmer, then cover and cook until the potato is tender, about 10–12 minutes. Stir occasionally.
  5. Once the potato is tender, add the peas and lime juice. Cook uncovered for 2–3 minutes until most of the liquid has evaporated. The filling should be moist but not watery. Season with additional salt to taste. Remove from heat and let cool completely.
  6. Make the pastry: In a large bowl, whisk together the flour and salt. Cut in the cold butter using a pastry blender or your fingertips until the mixture resembles coarse crumbs with some pea-sized butter pieces.
  7. Add the ice-cold water, one tablespoon at a time, mixing with a fork until the dough just comes together. Do not overwork. Turn the dough out onto a lightly floured surface, gather into a ball, then flatten into a disk. Wrap in plastic wrap and refrigerate for at least 30 minutes.
  8. Assemble the puffs: Preheat your oven to 400°F (200°C). Line a baking sheet with parchment paper.
  9. On a lightly floured surface, roll the dough out to about 1/8-inch (3 mm) thickness. Use a round cutter (about 4 inches / 10 cm) to cut out circles. Gather the scraps, re-roll, and cut more circles. You should get about 8–10 circles.
  10. Place a heaping tablespoon of the cooled filling in the center of each circle. Brush the edges with a little water, then fold the dough over to form a half-moon. Press the edges with a fork to seal, or crimp with your fingers.
  11. Place the puffs on the prepared baking sheet. Brush the tops with the beaten egg.
  12. Bake for 25–30 minutes, until the pastry is golden brown and crisp. Let cool on the baking sheet for 5 minutes before serving.

Tips

  • Keep the butter cold: The key to a flaky pastry is cold butter. If the dough becomes too warm while rolling, chill it again for 10 minutes before cutting.
  • Cool the filling completely: If the filling is warm when you assemble the puffs, it will make the pastry soggy and hard to seal. Prepare it ahead of time or let it cool to room temperature.
  • Seal well: Press the edges firmly with a fork to prevent the filling from leaking during baking. You can also use a little water on your finger to moisten the edge before sealing.
  • Don’t overfill: Use about a tablespoon of filling per puff. Overfilling makes sealing difficult and can cause the puffs to burst.

Serving Suggestions

Serve the curry puffs warm as a snack, appetizer, or part of a tea-time spread. They pair wonderfully with a side of chili sauce or a sweet chili dip. For a more substantial meal, serve them alongside a fresh salad or a bowl of hot soup.

Variations

  • Vegetarian: Omit the chicken and double the potato, or add finely chopped carrots and green beans. Use vegetable broth instead of chicken broth.
  • Spicier: Add extra chili powder or a finely chopped fresh chili (like bird’s eye chili) to the filling.
  • Different protein: Substitute the chicken with cooked, shredded beef or lamb.
  • Puff pastry version: For a shortcut, use store-bought puff pastry sheets instead of the homemade shortcrust. Follow the same assembly and baking instructions, but adjust the baking time as per the pastry package (usually about 20 minutes).

Storage and Reheating

Store leftover curry puffs in an airtight container in the refrigerator for up to 3 days. To reheat, place them on a baking sheet and warm in a preheated 350°F (175°C) oven for 10–12 minutes, or until heated through and crisp. You can also reheat in an air fryer at 350°F (175°C) for 5–7 minutes. Avoid microwaving, as it will make the pastry soggy.

Frequently Asked Questions

Can I make the filling ahead of time? Yes, the filling can be made up to 2 days in advance and stored in the refrigerator. Let it come to room temperature before assembling the puffs.

Can I freeze curry puffs? Absolutely. Assemble the puffs (without egg wash) and place them on a baking sheet in the freezer until solid. Transfer to a freezer bag or container and freeze for up to 2 months. When ready to bake, brush with egg wash and bake directly from frozen, adding 5–10 minutes to the baking time.

Why did my pastry turn out tough? Overworking the dough develops gluten, which makes it tough. Mix just until the dough comes together, and handle it as little as possible.

Can I use whole wheat flour? Yes, you can substitute up to half of the all-purpose flour with whole wheat flour, but the pastry may be slightly denser and less flaky.

My filling is too wet. What should I do? If the filling is too wet, cook it longer to evaporate more liquid, or add a tablespoon of breadcrumbs to absorb excess moisture.

Can I deep-fry the curry puffs instead of baking? Yes, traditionally they are deep-fried. Heat oil to 350°F (175°C) and fry the puffs (without egg wash) for 3–4 minutes per side until golden brown. Drain on paper towels.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).