# Get all outgoing wire transfer transactions

Retrieves all the outgoing wire transfer transactions performed by the logged-in identity.

Endpoint: GET /outgoing_wire_transfers
Version: v3
Security: auth_token, api-key

## Security:

  - `auth_token` (unknown)
    http bearer JWT

  - `api-key` (unknown)
    apiKey in header api-key

## Query parameters:

  - `offset` (integer)
    The offset value for paging, indicating the initial item number to be returned from the data set satisfying the given criteria. Leave out to fetch the first page of results.

  - `limit` (integer)
    The limit of the results for paging, starting at the offset. Limit is always capped at 100.

  - `profileId` (string)
    Filter by the managed account/card profile. Leave out to fetch all managed accounts/card.

  - `instrument` (object)
    Deprecated. Use `sourceInstrument.id` and `sourceInstrument.type` instead. Filter by the source instrument id (which must be a managed account).

  - `sourceInstrument.id` (string)
    Filter by the source instrument id. Must be specified when `source.type` is provided.

  - `sourceInstrument.type` (string)
    Filter by the source instrument type. Must be specified when `source.id` is provided.

  - `state` (array)
    Filter by the outgoing wire transfer state. Leave out to fetch all states.

  - `createdFrom` (integer)
    Filter for outgoing wire transfer transactions created after `createdFrom` timestamp, expressed in Epoch timestamp using millisecond precision. Leave out to fetch all outgoing wire transfer transactions.

  - `createdTo` (integer)
    Filter for Outgoing Wire Transfer transactions created before `createdTo` timestamp, expressed in Epoch timestamp using millisecond precision. Leave out to fetch all outgoing wire transfer transactions.

  - `executedFrom` (integer)
    Filter for outgoing wire transfer transactions executed after `executedFrom` timestamp, expressed in Epoch timestamp using millisecond precision. Leave out to fetch all outgoing wire transfer transactions.

  - `executedTo` (integer)
    Filter for Outgoing Wire Transfer transactions executed before `executedTo` timestamp, expressed in Epoch timestamp using millisecond precision. Leave out to fetch all outgoing wire transfer transactions.

  - `tag` (string)
    Filter by the outgoing wire transfer tag. The exact tag must be provided, as wildcards are not supported. Leave out to fetch all entries.

## Response 200:

  - `200` (unknown)
    Success

## Response 200 fields (application/json):

  - `transfer` (array)

  - `transfer.id` (string, required)
    The unique identifier of an Outgoing Wire Transfer transaction.

  - `transfer.profileId` (string, required)
    The profile Id which a specific identity, instrument or transaction type is linked to.

Profiles contain configuration and determine behavioral aspects of the newly created transaction, for example, fees that may apply.

You can have one or more profiles linked to your application, and these can be used to drive different behaviors according to your product's needs.

Profile Ids can be found in the Multi Portal, in the API Credentials page.

  - `transfer.tag` (string)
    The tag field is a custom field that can be used to search and filter.

  - `transfer.sourceInstrument` (object, required)
    The source managed account from where the funds were taken.

  - `transfer.sourceInstrument.type` (string, required)
    Enum: "managed_accounts"

  - `transfer.sourceInstrument.id` (string, required)

  - `transfer.transferAmount` (object, required)
    The object representing a monetary amount in a particular currency.

  - `transfer.transferAmount.currency` (string, required)
    The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

  - `transfer.transferAmount.amount` (integer, required)
    The monetary amount, scaled to the lowest denomination of the currency.

Example, an amount of 1000 for a EUR currency is actually 1000 Euro cents or EUR 10.00.

  - `transfer.purpose` (string)
    The purpose of the payment.

  - `transfer.description` (string)
    Transaction description.

  - `transfer.type` (string)
    The wire transfer rails used, from SEPA, Faster Payments, SWIFT or RIX.
    Enum: "SEPA", "FASTER_PAYMENTS", "SWIFT", "RIX"

  - `transfer.destination` (any)

  - `transfer.destination.name` (string, required)
    The beneficiary's full name. The allowed length and pattern is dependent on the bank account details type:
`IBANDetails`: >= `1` character and <= `150` characters. An extended character set is accepted to cater for all European languages. If `SEPA` does not support a particular character, it is automatically converted to an acceptable alternative, in line with `SEPA` scheme guidance.
`FasterPaymentsBankDetailsOrBACSBankDetails`: >= `1` character and <= `140` characters with a pattern of `^[a-zA-Z0-9\/\-?:().,’+\s#=!"%&*<>;\{@\r\n]*$`
(please note that the `’` symbol is the unicode value U+2019 (right single quotation mark) and not the unicode value U+0027 (apostrophe))

  - `transfer.destination.type` (string)
    The type of beneficiary account. Required only when `FasterPaymentsBankDetailsOrBACSBankDetails` are specified
    Enum: "PERSONAL", "BUSINESS"

  - `transfer.destination.address` (string)
    **Deprecated** — use `postalAddress` instead. This field is passed to the
provider as unstructured address lines and cannot carry a town name or country
code, which some payment schemes require.
The beneficiary’s address. For `SEPA`, an extended character set is accepted to cater for all European languages. If `SEPA` does not support a particular character, it is automatically converted to an acceptable alternative, in line with `SEPA` scheme guidance.

  - `transfer.destination.postalAddress` (object)
    The beneficiary's address in structured form.

  - `transfer.destination.postalAddress.line1` (string)
    The primary line of the beneficiary's address — the street name, building
number and postal code.

  - `transfer.destination.postalAddress.line2` (string)
    Additional address information — the building name, floor, room, department
or other location details.

  - `transfer.destination.postalAddress.townName` (string)
    The town or city of the beneficiary's address. It cannot be derived from the
address lines, so send it here rather than inside `line1` or `line2`.

  - `transfer.destination.postalAddress.countryCode` (string)
    The country of the beneficiary's address in ISO 3166 alpha-2 format. It cannot
be derived from the address lines, so send it here rather than inside `line1`
or `line2`.

  - `transfer.destination.bankName` (string)
    The beneficiary's bank name.

  - `transfer.destination.bankAddress` (string)
    The beneficiary's bank address.

  - `transfer.destination.bankCountry` (string)
    The beneficiary's bank country in ISO 3166 alpha-2 format.

  - `transfer.destination.bankAccountDetails` (any, required)
    Details of the beneficiary bank account, depending on the type of transfer chosen.

  - `transfer.destination.bankAccountDetails.iban` (string, required)
    International Bank Account Number, required for wire transfer over SEPA or RIX

  - `transfer.destination.bankAccountDetails.bankIdentifierCode` (string)
    BIC, for wire transfer over SEPA or RIX

  - `transfer.destination.bankAccountDetails.accountNumber` (string, required)
    Account number, required for wire transfer over Faster Payments.

  - `transfer.destination.bankAccountDetails.sortCode` (string, required)
    Sort code, required for wire transfer over Faster Payments.

  - `transfer.destination.bankAccountDetails.secondaryReference` (string)

  - `transfer.destination.nationality` (string)
    Nationality of the user - using ISO 3166 alpha-2.

  - `transfer.destination.dateOfBirth` (string)
    The date of birth in ISO 8601 format (YYYY-MM-DD).

  - `transfer.destination.name` (string, required)
    The beneficiary's full name. >= 1 character and <= 150 characters.
An extended character set is accepted to cater for all European languages.
If SEPA does not support a particular character, it is automatically
converted to an acceptable alternative, in line with SEPA scheme guidance.

  - `transfer.destination.iban` (string, required)
    International Bank Account Number, required for wire transfer over SEPA.

  - `transfer.destination.bankIdentifierCode` (string)
    BIC (Bank Identifier Code) for wire transfer over SEPA.

  - `transfer.destination.address` (string)
    **Deprecated** — use `postalAddress` instead. This field is passed to the
provider as unstructured address lines and cannot carry a town name or country
code, which some payment schemes require.
The beneficiary's address. An extended character set is accepted to cater
for all European languages. If SEPA does not support a particular character,
it is automatically converted to an acceptable alternative.

  - `transfer.destination.name` (string, required)
    The beneficiary's full name.

  - `transfer.destination.account` (string, required)
    Can be either an account number or an International Bank Account Number (IBAN).

  - `transfer.destination.bankIdentifierCode` (string)
    Required if account is not an IBAN. Bank Identifier Code (BIC).

  - `transfer.destination.address` (string)
    **Deprecated** — use `postalAddress` instead. This field is passed to the
provider as unstructured address lines and cannot carry a town name or country
code, which some payment schemes require.
The beneficiary's address.

  - `transfer.destination.postalAddress` (object)
    The beneficiary's address in structured form. `line1`, `townName` and
`countryCode` are all required, because this payment type is not accepted without
a complete creditor address.

  - `transfer.destination.name` (string, required)
    The beneficiary's full name. >= 1 character and <= 150 characters.
An extended character set is accepted to cater for all European languages.
If RIX does not support a particular character, it is automatically
converted to an acceptable alternative.

  - `transfer.destination.iban` (string, required)
    International Bank Account Number, required for wire transfer over RIX.

  - `transfer.destination.bankIdentifierCode` (string)
    BIC (Bank Identifier Code) for wire transfer over RIX.

  - `transfer.destination.address` (string)
    **Deprecated** — use `postalAddress` instead. This field is passed to the
provider as unstructured address lines and cannot carry a town name or country
code, which some payment schemes require.
The beneficiary's address. An extended character set is accepted to cater
for all European languages. If RIX does not support a particular character,
it is automatically converted to an acceptable alternative.

  - `transfer.destination.name` (string, required)
    The beneficiary's full name. >= 1 character and <= 140 characters.
Note: the ' symbol is the unicode value U+2019 (right single quotation mark)
and not the unicode value U+0027 (apostrophe).

  - `transfer.destination.type` (string, required)
    The type of beneficiary account. Required for Faster Payments.
    Enum: "PERSONAL", "BUSINESS"

  - `transfer.destination.accountNumber` (string, required)
    Account number, required for wire transfer over Faster Payments.

  - `transfer.destination.sortCode` (string, required)
    Sort code, required for wire transfer over Faster Payments.

  - `transfer.destination.secondaryReference` (string)
    Optional secondary reference for accounts without unique sort codes.

  - `transfer.destination.beneficiaryId` (string, required)

  - `transfer.destination.type` (string, required)
    Enum: "linked_accounts"

  - `transfer.destination.id` (string, required)

  - `transfer.state` (string, required)
    The state of the Outgoing wire transfer transaction, as follows:
- INVALID: The wire transfer has failed initial validation checks.
- PENDING_CHALLENGE: The wire transfer requires the completion of a transaction confirmation challenge before it can be submitted.
- SUBMITTED: The wire transfer has been submitted to the sending financial institution for processing.
- REJECTED: The wire transfer that was submitted was rejected.
- APPROVED: The wire transfer that was submitted has been approved and is being processed by the sending financial institution.
- FAILED: There was an issue with the wire transfer, and the transaction has failed.
- COMPLETED: The requested funds have been sent from the source instrument.
- RETURNED: The wire transfer has been returned to the sender.
- SCHEDULED: The wire transfer will be executed at the scheduled time.
- CANCELLED: The scheduled wire transfer has been cancelled.
- PENDING_CONFIRMATION: The wire transfer requires a manual confirmation by the user before proceeding.
    Enum: "INVALID", "PENDING_CHALLENGE", "SUBMITTED", "REJECTED", "APPROVED", "FAILED", "COMPLETED", "RETURNED", "SCHEDULED", "CANCELLED", "PENDING_CONFIRMATION"

  - `transfer.rejectedInfo` (string)
    Additional info when the outgoing wire transfer has been rejected, as follows:
- SYSTEM: The wire transfer was rejected by the system.
- USER: The wire transfer was rejected by the user.
    Enum: "SYSTEM", "USER"

  - `transfer.challengeExemptionReason` (string)
    The Reason the transaction was exempted from SCA verification
    Enum: "LOW_VALUE", "TRUSTED_BENEFICIARY"

  - `transfer.creationTimestamp` (integer, required)
    The time when the transaction was created, expressed in Epoch timestamp using millisecond precision.

  - `transfer.scheduledTimestamp` (string)
    The epoch timestamp at which the transaction is scheduled to be executed.

  - `transfer.executionTimestamp` (string)
    The epoch timestamp at which the transaction was executed, transitioning to a final state such as COMPLETED, REJECTED, or FAILED.

  - `transfer.cancellationReason` (string)
    The reason the scheduled transaction was cancelled.

  - `transfer.validationOutcomes` (array)

  - `transfer.validationOutcomes.category` (string, required)
    Enum: "UK_CONFIRMATION_OF_PAYEE", "SEPA_VERIFICATION_OF_PAYEE"

  - `transfer.validationOutcomes.categoryResult` (any, required)

  - `transfer.validationOutcomes.categoryResult.match` (string, required)
    The result of matching performed by the UK Confirmation of Payee responder
    Enum: "EXACT_MATCH", "CLOSE_MATCH", "NO_MATCH", "NOT_POSSIBLE"

  - `transfer.validationOutcomes.categoryResult.reasonCode` (string)
    The reason why the matching failed at the UK Confirmation of Payee responder:
- ANNM: The CoP responder confirms that the account `name` provided does not match;
- MBAM: The CoP responder indicates that the account `name` provided closely matches the actual account in its records, the actual account name is returned in the `accountName` field;
- BANM: The account `type` that the user specified is 'PERSONAL', but the CoP responder indicates that the actual account matching the `name` provided is actually BUSINESS;
- PANM: The account `type` that the user specified is 'BUSINESS', but the CoP responder indicates that the actual account matching the `name` provided is actually PERSONAL;
- BAMM: The account `type` that the user specified is 'PERSONAL', but the CoP responder indicates that an account closely matching the `name` provided is BUSINESS;
- PAMM: The account `type` that the user specified is 'BUSINESS', but the CoP responder indicates that an account closely matching the `name` provided is PERSONAL;
- AC01: The account does not exist in the CoP responders books, the `accountNumber` specified is likely incorrect;
- IVCR: The CoP responder was unable to locate an account based on the `secondaryReference` field;
- ACNS: The account is not supported for CoP by the CoP responder;
- OPTO: The owner of the account has opted out of CoP service by the CoP responder;
- CASS: The account has been switched using the Current Account Switch Service;
- SCNS: The `sortCode` provided is not supported at endpoint;
    Enum: "ANNM", "MBAM", "BANM", "PANM", "BAMM", "PAMM", "AC01", "IVCR", "ACNS", "OPTO", "CASS", "SCNS"

  - `transfer.validationOutcomes.categoryResult.accountName` (string)
    CoP: Returned when the `match` is a `CLOSE_MATCH` and the `reasonCode` is MBAM, BAMM or PAMM
VoP: Returned when the `match` is a `CLOSE_MATCH`

  - `transfer.validationOutcomes.categoryResult.match` (string, required)
    The result of the SEPA Verification of Payee check performed by the responding PSP.
OPTED_OUT means no check was performed, because the payment was submitted in a bulk by a corporate that opted out of Verification of Payee for bulk payments.
    Enum: "MATCH", "NO_MATCH", "CLOSE_MATCH", "NOT_POSSIBLE", "OPTED_OUT"

  - `transfer.validationOutcomes.categoryResult.accountName` (string)
    The name of the account holder as registered with the responding PSP.
Returned when the match result is CLOSE_MATCH to help the payer verify the payee.

  - `count` (integer)
    Total number of records (excluding the paging limit)

  - `responseCount` (integer)
    Total number of records returned in this response (always capped at 100).

## Response 200 headers (application/json):

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

## Response 400:

  - `400` (unknown)
    Bad Request Error - Your request is invalid.

## Response 400 fields (application/json):

  - `message` (string)
    When present helps to identify and fix the problem.

  - `syntaxErrors` (object)
    Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.

  - `syntaxErrors.invalidFields` (array)

  - `syntaxErrors.invalidFields.params` (array)

  - `syntaxErrors.invalidFields.fieldName` (string)

  - `syntaxErrors.invalidFields.error` (string)
    Enum: "REQUIRED", "HAS_TEXT", "REQUIRES", "SIZE", "RANGE", "IN", "NOT_IN", "REGEX", "EXACTLY", "AT_LEAST", "AT_MOST", "ALL_OR_NONE"

## Response 400 headers (application/json):

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

## Response 401:

  - `401` (unknown)
    Unauthorized - Your credentials or access token are invalid.

## Response 401 headers:

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

## Response 403:

  - `403` (unknown)
    Forbidden - Access to the requested resource or action is forbidden.

## Response 403 fields (application/json):

  - `errorCode` (string)
    Enum: "STEP_UP_REQUIRED", "ACCESS_TOKEN_REQUIRED", "INSUFFICIENT_PERMISSIONS"

## Response 429:

  - `429` (unknown)
    Too many requests.

## Response 429 headers:

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

  - `x-ratelimit-limit` (string, required)
    Example: `20, 10;w=60, 20;w=3600, 200;w=86400`
The first number (20) is the limit that has been exceeded.
The remaining numbers are the limits that are in force, with 'w' meaning 'window in seconds'. In this example `20;w=3600` was exceeded. 20 calls in 3600secs (1hr)

  - `x-ratelimit-reset` (integer, required)
    The number of seconds until the window is reset.

## Response 500:

  - `500` (unknown)
    Internal Server Error - There is a problem with the server. Please try again later.

## Response 500 headers:

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

## Response 503:

  - `503` (unknown)
    Service Unavailable - The requested service is temporarily unavailable. Please try again later.

## Response 503 headers:

  - `request-ref` (string, required)
    A request identifier. Providing this reference when contacting our support team will help us investigate your query.

