Correctly return an invalid order instead of throwing exceptions in payments