charge factory charge_find_or_create - see if I can simplify specs