Instructions
Defeat the Eilte Four Pokemon trainers to receive the "Sinnoh Champ Ribbon."
Win each of the Pokemon contests (Cool, Beauty, Cute, Smart, and Tough) on each of the four difficulties (Normal, Super, Hyper, and Master) in Hearthome City to receive the 20 Pokemon contest ribbons.
Receive 21 and 49 consecutive wins in the Pokemon Battle Tower to receive two ribbons (you'll receive one when you hit each milestone). Win 50 double battles in the battle tower to receive a third ribbon.
Win 50 multi-battles against the CPU in the Battle Tower to receive a ribbon. Win 50 multi-battles against human opponents to receive another ribbon. Get to "Wi-Fi Rank 5" in the battle tower to receive a third ribbon.
Talk to Julia in Sunnyshore City every day of the week. You will receive seven different ribbons (one for each day).
Buy three ribbons from the Ribbon's society in the resort area. They are available at 10, 100, and 999.99 pokedollars. To enter the society, you will need a Pokemon wearing at least ten ribbons on your team.
Build a Pokemon up to its maximum happiness state, then show it to the Footprint Maniac on Route 213 to receive the "Footprint Ribbon."