It's confusing this inner class have to be instantiated by the consumer of `MockPaymentProcessorFactory`. 

My suggestion is to provide a function as:
```scala
def create(fiatAddress: String, initialBalance: Seq[FiatAmount]= Seq.empty): PaymentProcessor
```

And make it return an instance of an anonymous class with the same implementation as current `MockPaymentProcessor`.