There's no general solution for topping up German SIMs, as there are so many in the market and all have different payment options. Some providers accept credit card payments through their website, while others sell their vouchers only through local retailers. With the help of Google translate you may find information on most SIMs at the German
Prepaid-Wiki (see "Aufladen" section, which literally means "Uploading").
Aufladen.de who sell vouchers of many providers unfortunately do only accept German, Austrian, Swiss and Dutch credit cards and so are useless for foreigners.
For the major MNOs, you'll find vouchers at eBay.de, which carry the following designations:
- T-Mobile = "Xtra Cash"
- Vodafone = "CallNow" (not CallYa, which is the SIM itself!)
- eplus = "E-Plus Cash Card" or "Free & Easy Cash"
- O2 = "LOOP-Up"
Also some MVNOs on these four networks inofficially accept top up vouchers from the MNOs.
If you specify any SIM, I could give you more precise information.