In a medium bowl beat the egg. Add the beef, onion, bread crumbs, salt and pepper and use your hands to combine thoroughly (or use a spoon; it will take longer, but if you are not a hands-in-the-ground-beef person you can do that). Form the mixture into 1-inch meatballs.
Heat a large skillet over medium heat and place the meatballs in the pan, making sure not to crowd them; you may need to do this in batches. If your pan isn’t large enough. Cook the meatballs for 1 to 2 minutes, until the bottoms are browned, then flip them and cook for another 1 to 2 minutes until the other side is brown. The meatballs should be browned on at least two sides, but not cooked through. Remove meatballs from the skillet and drain any excess oil from the skillet.
In the same skillet, add the ketchup, cranberry sauce, tomato paste, vinegar, soy sauce, water and Worcestershire sauce. Heat the sauce over medium heat, stirring, until smooth, 1 to 2 minutes. Return the meatballs to the pan, then cover, and simmer for 10 to 12 minutes, adjusting the heat so that the sauce stays at a gentle simmer, until the meatballs are cooked through and the sauce has thickened. Serve hot, sprinkled with parsley if desired.