The reason I eliminated the 2 return params `(result, error)` is that it's redundant. The result would not return a message but an object anyway on success. If an error is returned you can easily determine the type by switching on it

```
switch err {
  case BraintreeError: // handle the api error
  default: // something else went wrong...
}
```