Coarsely chop ham; reserve bone. In 6-quart Dutch oven, heat oil over medium-high heat. Cook chopped ham in oil 6 to 8 minutes, stirring occasionally, until browned.
Add white onion, green onions, carrots, celery, soup base and pepper. Cook 5 minutes, stirring frequently, until onion is tender.
Stir in reserved ham bone, the navy beans, cannellini beans, black-eyed peas and potatoes.
Add enough water to cover.
Heat to boiling; reduce heat to low. Cover; cook 45 minutes, stirring occasionally.
Remove and discard ham bone. Stir in spinach just before serving.