Add bean to a medium pot or bowl and let it soak overnight for even cooking and to save time.
When ready to cook, rinse and drain beans making sure it is free of any objects.
Add soaked beans to a large pot together with onions & green onions, minced garlic, bay leaves, thyme, salt, allspice, and then followed by water.
Cook covered on medium-high heat until beans are tender, about 50-60 minutes or more. Do a taste test before proceeding with the rest of the ingredients.
Pour in coconut milk, rice, and scotch bonnet pepper (I used habanero pepper).
Bring the pot to a boil, reduce to medium-low, and simmer, covered, until liquid is absorbed and rice is tender, about 18 minutes or more. If rice is drying up add about a little bit of water, as needed.
Remove pot from the oven add butter or coconut oil, if desired, discard bay leaves. Fluff thoroughly with a fork.
Garnish with green onions and serve.