Add chicken breasts, a chunk of onion, garlic, bay leaf, salt, and pepper to a large pot. Cover with water and bring to a simmer. Let it cook gently until the chicken is fully cooked (about 20 minutes). Remove the chicken and set aside to cool slightly, reserving about one cup of the cooking liquid for the sauce.
In a skillet, heat olive oil over medium heat. Add whole roma tomatoes and cook for a few minutes until slightly blistered. Add the chopped onion and cook for 3–4 minutes until softened. This step enhances the depth of the sauce.
Transfer the sautéed tomatoes and onion to a blender. Add the reserved chicken broth, chicken bouillon, garlic, adobo sauce, chipotle pepper, oregano, and cumin. Blend until smooth. Taste and adjust salt or spice as needed — this sauce is where the magic happens.
Pour the sauce back into the skillet and bring it to a gentle simmer. Let it cook for 5–6 minutes to thicken and deepen in flavor. The smell will be irresistible!
While the sauce simmers, shred the cooked chicken using two forks. Add it to the sauce and stir until every piece is coated. Let it simmer together for another 5 minutes so the chicken absorbs all that smoky chipotle flavor.
To serve, spread a thin layer of refried beans over a crispy tostada shell or warm tortilla. Add a generous scoop of Chicken Tinga, top with shredded lettuce, crumbled queso fresco, cilantro, avocado slices, and a drizzle of crema. Finish with a squeeze of fresh lime juice.