fulfilling a billing request should be decoupled from this class to allow  custom processing.  Should use the event dispatcher