There have been rulings that yearly, regular bonuses have to be paid partially if you leave before the payday. For "Weihnachtsgeld", which is a fixed bonus, this is the reason why modern contracts usually don't include it anymore but just put it on the monthly salary. See the link[1] for a recent ruling (german, sorry).
Still, a lot of stuff that would be a "bonus" in the US is included in Germany. Contracts in germany include mandatory health care, social security, the whole range.
[1]: http://www.zeit.de/karriere/beruf/2013-11/urteil-anspruch-we...
For example, Weihnachtsgeld (Christamas money) is usually 1
or 1/2 of monthly salary and is defined in every contract.
In addition to that comes the yearly bonus, which is rarely
not awarded in its entirety.
Nope. Weihnachtsgeld is not defined in every contract. Either you're working for a company bound by a union rate to pay Weihnachtsgeld or the company pays it voluntarily. There is no Weihnachtsgeld guaranteed by law. As for bonuses, this depends on the employer and usually also on the time you spent at the company. Just my two cents."Die Zahlung von Gratifikationen, Tantiemen, Prämien und sonstigen Leistungen liegt im freien Ermessen des Arbeitgebers und begründet keinen Rechtsanspruch, auch wenn die Zahlung wiederholt ohne ausdrücklichen Vorbehalt der Freiwilligkeit erfolgte. Etwas anderes gilt nur dann, wenn die Zahlung durch Betriebsvereinbarung oder Tarifvertrag geregelt ist."
If your contract does not include that boilerplate your employer had a shitty lawyer and should fire him.
Edit: fixed Umlauts which were broken by c&p