Sick leave? As far as I know that's exactly what it's for. It also has the benefit of not discriminating whether it's period cramps, migraines, a broken leg, food poisoning, or depression.
EDIT: I'm German. Sick leave is completely separate from vacation days here and not limited (although you get less money after six weeks because your health insurance takes over from your employer). Generally I find that one of the only acceptable solution to the problem at hand. Giving half your employees extra days off is a bad idea, conflating vacation and sick leave is a bad idea, and forcing employees to come to work when they're unable to is a bad idea.