Warm oil in a medium skillet over medium heat. Add onion and garlic and cook, stirring frequently, until onion is softened and translucent, about 5 minutes.
Combine onion mixture, beans (with their liquid), salsa and chicken broth in a slow cooker. Stir well and cook on low for 5 hours.
Stir sausages into bean mixture in slow cooker and cook for 1 hour longer.
Using tongs, remove sausages to a cutting board, cut into bite-size pieces and then return to slow cooker. Stir in cilantro and season with salt and pepper. Serve soup hot in bowls, with chopped avocado and a dollop of sour cream on top, if desired.