Raises and bonuses are two very different beasties and need to be handled differently.
Raises should come as the result of achieving a career milestone of some sort. That usually would require some growth and demonstrated competence. If Sally joins the company, she has a starting pay rate of X per hour. When she's mastered one or another basic skill, like handling the cash register, ordering merchandise, etc, her pay is increased to a higher level.
Bonuses, on the other hand, can be handled two different ways. One is the way many sales bonuses are handled.
You agree that if your sales person sells X or your call center person achieves Y within a given period, he or she will get a bonus of A. Bonuses are for a limited time period. They can be for either individual or group performance or a combination of the two.
The biggest mistake managers make with these kinds of bonuses is to move the bar up after a person achieves a bonus. Let's say salespeople in a retail store receive extra bonus after the store hits its objective for the month. When the store hits objective, management often raises the target for the next month or year.
This sounds logical but it has a nasty effect. It's the white collar equivalent of speeding up the assembly line. Sales people feel like they're having something taken away from them and that targets will always be raised by management so they don't have to pay out bonuses.
The other way bonuses can be used is "surprise" bonuses when the boss catches someone doing something the boss wants to encourage. These often take the form of small gifts or "points" of some kind. One trucking company owner I knew used "dinner out" certificates. He'd wander around the yard and when he saw doing something the right way, he'd walk up and give the worker certificate for dinner out.