Rinse the black beans and place in a large pot, along with the onion and epazote. Cover with 10 cups of water and bring to a boil over medium-high heat. Reduce heat to low and simmer partially covered until the beans are tender, about 1 1/2 hours. Check periodically to make sure beans are covered with enough water, adding more if necessary.
Allow the beans to cool slightly, then carefully drain the beans over a large bowl or pot to reserve the cooking liquid.
Using a blender or food processor, puree the cooked beans with 1/2 cup of the reserved cooking liquid and the lard. Add more cooking liquid, as needed, to achieve a thick but moist puree. Season to taste with salt.