Desserts
This black bean hopia recipe delivers the signature Indonesian dessert with its signature crispy coconut crust and sweet black bean filling. The secret lies in the dough—made with rice flour and coconut milk—that encases the rich, velvety black bean paste.
When steamed or fried, it transforms into golden, caramelized bites that crunch perfectly while staying tender inside.
The dough requires precise shaping and steaming to achieve that signature texture—neither too thick nor too thin. Each piece develops a crispy exterior while maintaining a soft, pillowy interior, balanced by the sweet, slightly nutty black bean filling.
This traditional recipe is vegetarian and can be made vegan with simple adjustments, making it a versatile treat for any occasion.
What makes these hopia truly special is the contrast between the crispy coconut crust and the smooth, sweet filling. The aroma of coconut and black bean fills your kitchen as they cook, creating an irresistible dessert that's perfect for celebrations or indulgent moments.
The technique is straightforward but requires patience for the best results.
Once mastered, you'll have a batch of golden, caramelized hopia that's crispy on the outside and tender within. Serve warm with a sprinkle of sugar or enjoy them at room temperature for a delightful treat.
This recipe is a celebration of Indonesian dessert culture, brought to your kitchen with professional results.
Ingredients for black bean hopia
Twelve ingredients transform into golden, crispy coconut-encased black bean hopia.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🫘 | 1 ½ cups | Cooked until very soft, mashed |
| Coconut Milk 🥥 | 13 ½ oz | Full-fat canned, unsweetened |
| Rice Flour 🌾 | 2 cups | Glutinous rice flour preferred |
| Granulated Sugar 🍚 | ¾ cup | White or brown sugar |
| Salt 🧂 | ½ tsp | Fine sea salt preferred |
| Vegetable Oil 🫒 | ½ cup | For frying, high smoke point |
| Shredded Coconut 🥥 | 1 cup | Sweetened or unsweetened |
| Vanilla Extract 🌸 | 1 tsp | Pure vanilla preferred |
| Baking Powder 🍞 | ½ tsp | For dough lift |
| Water 💧 | ½ cup | Room temperature |
| Sesame Seeds 🌰 | 1 tbsp | For garnish, optional |
| Palm Sugar 🍯 | ¼ cup | For caramelization, optional |
The coconut milk is non-negotiable here—full-fat canned gives that signature richness. Thai Kitchen or Aroy-D brands are my go-tos for reliable quality. For the rice flour, glutinous rice flour (also called sweet rice flour) is essential—regular rice flour won't give that signature chewy texture. If you can't find it, substitute with 1 part regular rice flour + 1 part tapioca starch, but results won't be identical. The black beans need to be cooked until they're practically falling apart—no chunky bits—so plan ahead or use canned beans that you've mashed thoroughly. For the shredded coconut, unsweetened is better since we're adding our own sugar, but sweetened works in a pinch.
No coconut milk? Coconut cream plus extra water can work, but texture will differ. Running short on rice flour? Almond flour at half the amount adds richness but lacks the signature chew. The palm sugar is optional but worth it for that authentic caramelized flavor—substitute with brown sugar at the same amount if needed. For the dough, don't overmix once you add the wet ingredients; just combine until it comes together. If your dough feels too sticky, add a splash more rice flour, but don't overdo it or the hopia will be dense. The sesame seeds are purely decorative but add that professional touch—skip them if you're keeping it strictly vegan or have allergies.
Hopia dough keeps best in the fridge for 2 days wrapped tightly in plastic, but it's ideal to use it fresh. For longer storage, freeze shaped hopia on a tray before transferring to a bag—they'll keep for 3 months. When ready to cook, steam or fry in small batches to maintain even crispiness. Leftover hopia? Reheat in a dry skillet for 1-2 minutes to restore the crunch. These freeze beautifully too—just thaw at room temperature before serving. The filling can be prepped ahead and stored in the fridge for 3 days, saving you time on the day of cooking.
Why You'll Love This Recipe
- No-Fuss Batter: I swear by this recipe because the batter mixes itself—just blend the black beans, coconut milk, and rice flour until smooth. No straining, no lumps, and honestly, the texture comes together faster than I can say "sweet treat."
- Sweet-Savory Magic: That caramelized sugar crust? It’s the star. The black beans add earthy depth while the coconut milk keeps it rich, and the crispy edges? Pure satisfaction every time—like a dessert that sneaks in veggies.
- Breakfast or Snack: I make these for weekend brunches, but they’re also my go-to for after-school snacks. Warm or at room temp, they’re a hit with kids (and adults who won’t admit they’re sneaking seconds).
- Budget Breakthrough: A single can of black beans and a bag of rice flour stretch for dozens—way cheaper than store-bought pastries. Plus, they reheat perfectly, so leftovers turn into lazy mornings or quick energy boosts.
Step-by-step instructions for black bean hopia
Master these precise techniques for golden, crispy hopia with a perfectly balanced sweet-savory filling.
Prepare the Black Bean Filling
In a medium bowl, combine the 1.5 cups black beans with 0.75 cup granulated sugar, 1 tsp vanilla extract, and 0.25 cup palm sugar. Mash the beans thoroughly with a potato masher or fork until completely smooth - you want a thick, spreadable consistency with no visible chunks. This texture ensures even distribution when filling the hopia.
Add 0.5 tsp salt and mix well. The filling should taste rich and slightly sweet with a hint of saltiness. If it's too thick, add 1-2 tablespoons of water to reach a pipeable consistency. Cover the bowl and refrigerate for 30 minutes to allow flavors to meld. This chilling step also makes the filling easier to work with when assembling.
Make the Dough Batter
In a large mixing bowl, whisk together 2 cups rice flour, 0.5 tsp baking powder, and 0.5 tsp salt. Create a well in the center and pour in 13.5 oz coconut milk, 0.5 cup vegetable oil, and 0.5 cup water. Mix vigorously until you achieve a smooth, thick batter with no visible flour streaks - it should resemble heavy pancake batter.
Let the batter rest for 10 minutes at room temperature. This resting period allows the rice flour to fully hydrate and develop its natural elasticity. The batter should be thick enough to hold its shape when piped but still flow smoothly. If it's too thick after resting, add 1 tablespoon of water at a time until it reaches the perfect consistency.
Assemble the Hopia
Line a baking sheet with parchment paper and lightly grease it with vegetable oil. Using a piping bag fitted with a small round tip (or a plastic bag with a corner snipped off), pipe 1-inch wide circles of batter onto the prepared baking sheet, spacing them about 2 inches apart. Place 1 tsp of black bean filling in the center of each circle.
Carefully fold the edges of the batter over the filling to completely encase it, creating a sealed pouch. Press gently to ensure the filling doesn't leak out. For extra crispiness, sprinkle each hopia with a pinch of shredded coconut on top. This step is crucial for achieving that signature crispy exterior while keeping the filling perfectly contained.
Fry to Golden Perfection
Heat 1 inch of vegetable oil in a deep skillet over medium heat until it reaches 350°F. Test the oil by dropping a small piece of batter into it - it should sizzle and float to the surface within 5 seconds. Fry the hopia in batches, turning them occasionally, for 3-4 minutes until they develop a deep golden brown color all over.
Drain the fried hopia on a wire rack or paper towel-lined plate to remove excess oil. While still warm, sprinkle with sesame seeds for added texture and visual appeal. Serve immediately while the exterior remains crispy. The interior should be soft and gooey with the black bean filling perfectly encased in the coconut-flour crust.
Optional Caramelization
For an extra special touch, place the fried hopia on a baking sheet and broil for 1-2 minutes until the coconut topping begins to caramelize slightly. Keep a close eye on them as they can burn quickly. This step adds a beautiful golden sheen and enhances the coconut flavor. Let cool for 2 minutes before serving to allow the caramelized sugar to set.
The finished hopia should have a crispy, crackly exterior that gives way to a soft, sweet-savory filling. The contrast between the crunchy coconut crust and the smooth black bean center makes each bite irresistible. Store any leftovers in an airtight container at room temperature for up to 2 days, though they're best enjoyed fresh from the fryer.
Pro Tips For Making Black Bean Hopia
- SOAK BEANS OVERNIGHT: I learned this the hard way—rinsing black beans for 10 minutes isn’t enough. Soak them in warm water for 8+ hours (or overnight) to break down their skins, which prevents that chalky texture in your hopia filling. Drain and rinse just before cooking to keep them from absorbing extra moisture.
- STEAM DON’T BOIL: Your black beans need to be tender but not mushy—boiling turns them into paste. Simmer them in coconut milk (covered) over low heat for 20-25 minutes, stirring occasionally. If the liquid reduces too fast, add a splash of water. You want them to collapse slightly when pressed, not fall apart.
- SALT THE COCONUT MILK: Skipping this is a flavor crime. Add a pinch of salt (about ¼ tsp) to the coconut milk while cooking the beans—it balances the sweetness later and makes the filling taste richer. Trust me, your taste buds will notice the difference when you fry the hopia.
- REST THE BATTER 15 MINUTES: Mixing rice flour, sugar, and coconut milk? Let it sit. After combining, cover the batter and wait—this thickens it just enough to prevent greasy, undercooked centers when frying. I know, it’s tempting to dive in immediately, but those 15 minutes guarantee a crispy exterior and a soft, gooey interior.
Serving suggestions for this black bean hopia
Warm Serving Style
Serve black bean hopia fresh from the fryer while the coconut crust remains crispy and crackly. The warm temperature enhances the caramelized coconut aroma and melts the filling slightly for a gooey texture. Arrange them on a wooden serving board or ceramic platter for an authentic Indonesian presentation.
I like to sprinkle extra shredded coconut and a pinch of flaky sea salt on top just before serving to highlight the flavors. 🥥
Drizzle Enhancements
Elevate your hopia with complementary drizzles that balance the sweetness. A light honey drizzle (about 1 tbsp honey warmed slightly) adds floral notes that pair beautifully with the coconut.
For a tropical twist, try toasted coconut syrup—simmer ½ cup shredded coconut with ¼ cup water and 2 tbsp sugar until caramelized, then strain. Drizzle generously over the finished hopia. 🍯
Accompaniment Pairings
Serve hopia alongside Indonesian black coffee (kopi tubruk) for a classic pairing that cuts through the richness. The bold, slightly bitter coffee balances the sweetness perfectly. For a non-coffee option, offer coconut milk tea (susu jahe) made with fresh ginger and turmeric.
Both beverages complement the coconut and black bean flavors without overpowering them. ☕
Garnish Finishing Touches
Add visual appeal and texture contrast with simple garnishes. A sprinkle of toasted sesame seeds (about 1 tsp) adds a nutty crunch, while crushed peanuts (about 2 tbsp) bring a savory element.
For a festive touch, dust with powdered sugar or matcha powder to create a stunning color contrast. These garnishes make your hopia look as impressive as they taste. 🌟
Presentation Ideas
Arrange hopia in a nest-like formation on a platter, with the largest pieces at the center and smaller ones surrounding them. For a rustic touch, place them on banana leaves (available at Asian markets) to keep them warm and add an authentic tropical vibe.
If serving at a party, use mini cast-iron skillets to keep hopia warm and crispy while showcasing their golden color. 🍃
Make-Ahead Serving Tips
If preparing ahead, store hopia in an airtight container at room temperature for up to 2 days. Reheat in a dry skillet over medium heat for 1-2 minutes to restore crispiness before serving.
For a steamed alternative, place hopia in a steamer basket for 3-4 minutes—this method keeps them soft and moist while still delicious. Serve with a side of mango slices or guava to add freshness to the rich dessert. 🍈
Nutrition facts
Frequently asked questions
Can I make black bean hopia without coconut milk?
Yes, but the texture will differ significantly. Use 1 cup coconut cream plus 2 tablespoons water as a substitute, though the crust won't be as crispy. For a non-coconut version, try 1 cup almond milk plus 2 tablespoons melted butter or oil, but expect a lighter, less authentic flavor and texture. The coconut milk is essential for that signature rich, caramelized taste.
Why did my hopia turn out dense instead of crispy?
Dense hopia usually means one of two things: either your batter was too thick (not enough water) or you overmixed it. The batter should be smooth but pourable—like heavy pancake batter. Also, ensure you're frying at 350°F and not overcrowding the pan. If the oil isn't hot enough, the hopia will absorb too much oil and become greasy rather than crispy.
Can I bake these instead of frying?
While traditional hopia are fried, you can bake them for a lighter version! Preheat oven to 375°F and bake for 12-15 minutes on a parchment-lined tray, flipping halfway. Brush with a little oil first for crispiness. They won't be as golden or crackly as fried hopia, but they'll still be delicious. For extra crunch, broil for 1-2 minutes at the end.
How do I store leftover hopia?
Store in an airtight container at room temperature for up to 2 days to maintain crispiness. For longer storage, freeze shaped (unfried) hopia on a tray for 1 hour, then transfer to a bag for up to 3 months. To reheat, fry again in oil for 1-2 minutes or steam for 3-4 minutes to restore texture. Avoid refrigerating fried hopia—they'll lose their crunch.
What's the secret to perfect black bean filling?
The filling must be completely smooth with no lumps—use a potato masher or food processor. The beans should be cooked until they're practically falling apart, and the sugar should be added gradually while mixing. Chill the filling for 30 minutes before using to help it hold its shape when piping. If too thick, add 1-2 tsp water** at a time. The perfect filling should be thick enough to stay put when piped but still spreadable.
