In a large bowl, combine soy sauce, vinegar, water, bay leaves, whole garlic cloves, black peppercorns, and brown sugar.
Add the chicken and mix well. Let it marinate for at least 30 minutes, or up to overnight in the fridge for deeper flavor.
Heat oil in a deep, heavy-bottomed pan or Dutch oven.
Remove the chicken from the marinade (reserve the marinade) and sear the pieces skin-side down until golden brown on both sides. Do this in batches if needed.
Remove the browned chicken and set aside.
In the same pan, add sliced onions and cook until softened and lightly golden.
Return the chicken to the pan.
Pour the reserved marinade over the chicken.
Bring to a boil, then reduce the heat to a simmer. Cover and cook for 25–30 minutes, or until the chicken is tender and cooked through.
Uncover the pan and cook on medium-high heat for 10–15 minutes, until the sauce thickens and glazes the chicken.
Taste and adjust seasoning if needed.
Garnish with chopped spring onion greens.
Serve hot with steamed white rice.