Errors:

Successful requests will be a HTTP 200 after any successful call. The body of successful requests depend on the endpoint.

Whenever a problem occurs, Wyre will respond to the client using a 4xx or 5xx status code. In this case, the body of the response will be an exception object which describes the problem.

Exception types:

ExceptionDescriptionHTTP Status
ValidationExceptionThe action failed due to problems with the request.400
UnknownExceptionOops, our bad. A problem with our services internally. This should rarely happen.500
InsufficientFundsExceptionYou requested the use of more funds in the specified currency than were available.400
RateLimitExceptionYour requests have exceeded your usage restrictions. Please contact us if you need this increased.429
AccessDeniedExceptionYou lack sufficient privilege to perform the requested action.401
TransferExceptionThere was a problem completing your transfer request.400
NotFoundExceptionYou requested something that couldn't be located.400
ValidationExceptionThere was a problem validating the input you supplied.400
CustomerSupportExceptionPlease contact us at [email protected] to resolve this!400
MFARequiredExceptionAn MFA action is required to complete the request. In general you should not get this exception while using API keys.400

All exceptions will carry a subType parameter which exposes more information about the problem. Additionally, some ValidationException errors will carry with them two fields, problematicField and problematicValue, denoting the field which caused the failure.

A few typical ValidationException subtypes:

FIELD_REQUIRED
INVALID_VALUE
TRANSACTION_AMOUNT_TOO_SMALL
UNSUPPORTED_SOURCE_CURRENCY
SENDER_PROVIDED_ID_IN_USE
CANNOT_SEND_SELF_FUNDS
INVALID_PAYMENT_METHOD
PAYMENT_METHOD_INACTIVE
PAYMENT_METHOD_UNSUPPORTED_CHARGE_CURRENCY
PAYMENT_METHOD_UNCHARGEABLE
PAYMENT_METHOD_UNSUPPORTED_DEPOSIT_CURRENCY
PAYMENT_METHOD_UNDEPOSITABLE
PAYMENT_METHOD_DOESNT_SUPPORT_FOLLOWUPS
PAYMENT_METHOD_DOESNT_SUPPORT_MICRODEPOSIT_VERIFICATION