Weavr Incoming Wire Transfers API

Incoming wire transfers received from external bank accounts to managed accounts with IBANs.

OpenAPI Specification

weavr-incoming-wire-transfers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: v3
  title: Weavr Multi Product BackOffice Access Token Incoming Wire Transfers API
  x-logo:
    url: https://storage.googleapis.com/weavr-cdn/weavr_logo-new.png
    backgroundColor: '#FFFFFF'
    altText: Weavr
  description: 'Weavr Multi Back Office API allows you, as an innovator, to perform various back office operations concerning

    identities and their instruments, without requiring the users to be logged in.


    A token is to be obtained through the `access_token` method, and this will allow relevant operations

    to be performed on behalf of this same identity.

    '
  contact:
    name: Weavr
    url: https://weavr.io
servers:
- description: Weavr Sandbox Environment
  url: https://sandbox.weavr.io/multi/backoffice
tags:
- name: Incoming Wire Transfers
  description: 'Incoming wire transfers received from external bank accounts to managed accounts with IBANs.

    '
paths:
  /incoming_wire_transfers:
    get:
      tags:
      - Incoming Wire Transfers
      description: 'Returns all incoming wire transfers for the authenticated identity.

        '
      summary: Get all incoming wire transfers
      operationId: incomingWireTransfersGet
      x-permissions:
      - i:iwt:list
      parameters:
      - $ref: '#/components/parameters/offset'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/iwtState'
      - $ref: '#/components/parameters/creationTimestampFrom'
      - $ref: '#/components/parameters/creationTimestampTo'
      - $ref: '#/components/parameters/lastUpdatedTimestampFrom'
      - $ref: '#/components/parameters/lastUpdatedTimestampTo'
      - $ref: '#/components/parameters/sortOrder'
      responses:
        '200':
          $ref: '#/components/responses/IncomingWireTransferListResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        default:
          $ref: '#/components/responses/Error'
      security:
      - auth_token: []
        api-key: []
  /incoming_wire_transfers/{id}:
    get:
      tags:
      - Incoming Wire Transfers
      description: Returns a specific incoming wire transfer.
      summary: Get an incoming wire transfer
      operationId: incomingWireTransferGet
      x-permissions:
      - i:iwt:get
      parameters:
      - name: id
        in: path
        description: The unique identifier of the incoming wire transfer.
        required: true
        schema:
          type: string
          pattern: ^[0-9]+$
      responses:
        '200':
          $ref: '#/components/responses/IncomingWireTransferResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        default:
          $ref: '#/components/responses/Error'
      security:
      - auth_token: []
        api-key: []
components:
  schemas:
    CurrencyAmount:
      required:
      - currency
      - amount
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/Currency'
        amount:
          type: integer
          format: int64
          description: '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.

            '
      description: The object representing a monetary amount in a particular currency.
    ScaledAmount:
      type: object
      properties:
        value:
          type: integer
          format: int64
        scale:
          maximum: 127
          minimum: -128
          type: integer
          format: int32
      description: 'A floating point number, represented as a value and its scale. Its actual value can be obtained using the equation: value * pow(10, -scale).'
    SyntaxError:
      type: object
      description: 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.
      properties:
        invalidFields:
          type: array
          items:
            type: object
            properties:
              params:
                type: array
                items:
                  type: string
              fieldName:
                type: string
              error:
                type: string
                enum:
                - REQUIRED
                - HAS_TEXT
                - REQUIRES
                - SIZE
                - RANGE
                - IN
                - NOT_IN
                - REGEX
                - EXACTLY
                - AT_LEAST
                - AT_MOST
                - ALL_OR_NONE
    IncomingWireTransferList:
      type: object
      description: A paginated list of incoming wire transfers.
      properties:
        incomingWireTransfers:
          type: array
          items:
            $ref: '#/components/schemas/IncomingWireTransfer'
        count:
          type: integer
          format: int64
        responseCount:
          type: integer
          format: int64
    TransactionForex:
      type: object
      description: Foreign exchange details when the transaction involved currency conversion.
      properties:
        originalAmount:
          description: The original amount in the source or merchant currency before conversion.
          $ref: '#/components/schemas/CurrencyAmount'
        exchangeRate:
          description: The exchange rate applied to the conversion.
          $ref: '#/components/schemas/ScaledAmount'
        paddingAmount:
          description: The forex padding amount held during authorisation.
          $ref: '#/components/schemas/CurrencyAmount'
        feeAmount:
          description: The forex markup fee amount.
          $ref: '#/components/schemas/CurrencyAmount'
    IncomingWireTransferMultiState:
      type: string
      description: "The state of an incoming wire transfer:\n  - PENDING: The transfer has been received and is being processed. Funds have not yet been credited to the destination account.\n  - COMPLETED: Funds have been credited to the destination account.\n  - REJECTED: The transfer was not accepted; funds were not credited.\n"
      enum:
      - PENDING
      - COMPLETED
      - REJECTED
    InstrumentType:
      type: string
      enum:
      - managed_cards
      - managed_accounts
    InstrumentId:
      required:
      - id
      - type
      type: object
      properties:
        id:
          $ref: '#/components/schemas/Id'
        type:
          $ref: '#/components/schemas/InstrumentType'
    ProfileId:
      type: string
      description: '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.

        '
      pattern: ^[0-9]+$
    Currency:
      type: string
      description: 'The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.'
      maxLength: 3
      minLength: 3
      pattern: ^[A-Z]*$
    Id:
      type: string
      pattern: ^[0-9]+$
    IncomingWireTransfer:
      type: object
      required:
      - id
      - state
      - amount
      - destinationInstrument
      - createdAt
      description: An incoming wire transfer received from an external bank account.
      properties:
        id:
          type: string
          pattern: ^[0-9]+$
          description: The unique identifier of the incoming wire transfer.
        profileId:
          $ref: '#/components/schemas/ProfileId'
        state:
          $ref: '#/components/schemas/IncomingWireTransferMultiState'
        amount:
          description: The amount credited (or to be credited) to the destination instrument, in the instrument's currency.
          $ref: '#/components/schemas/CurrencyAmount'
        fee:
          description: The fee charged on this incoming wire transfer. Omitted when no fee was charged.
          $ref: '#/components/schemas/CurrencyAmount'
        destinationInstrument:
          description: The managed account (with IBAN) that received the funds.
          $ref: '#/components/schemas/InstrumentId'
        paymentNetwork:
          type: string
          enum:
          - SEPA
          - FASTER_PAYMENTS
          - SWIFT
          - RIX
          - BACS
          - CHAPS
          - TARGET
          description: The payment network over which the transfer was received.
        senderName:
          type: string
          description: The name of the sender.
        senderIban:
          type: string
          description: The IBAN of the sender.
        senderReference:
          type: string
          description: The payment reference provided by the sender.
        forex:
          $ref: '#/components/schemas/TransactionForex'
        isInstant:
          type: boolean
          description: Whether this was an instant payment.
        createdAt:
          type: integer
          format: int64
          description: When the IWT was received, expressed in Epoch timestamp using millisecond precision.
        executedAt:
          type: integer
          format: int64
          description: When the IWT was settled, expressed in Epoch timestamp using millisecond precision.
    Error:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
  responses:
    InternalServerError:
      description: Internal Server Error - There is a problem with the server. Please try again later.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
    BadRequestError:
      description: Bad Request Error - Your request is invalid.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                maxLength: 255
                type: string
                description: When present helps to identify and fix the problem.
              syntaxErrors:
                $ref: '#/components/schemas/SyntaxError'
    Error:
      description: Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    TooManyRequests:
      description: Too many requests.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-reset:
          $ref: '#/components/headers/x-ratelimit-reset'
    ServiceUnavailable:
      description: Service Unavailable - The requested service is temporarily unavailable. Please try again later.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
    NotFound:
      description: Not found - The requested resource couldn't be found.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Forbidden:
      description: Forbidden - Access to the requested resource or action is forbidden.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
      content:
        application/json:
          schema:
            type: object
            properties:
              errorCode:
                type: string
                enum:
                - INSUFFICIENT_PERMISSIONS
    IncomingWireTransferListResponse:
      description: Success
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IncomingWireTransferList'
    IncomingWireTransferResponse:
      description: Success
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IncomingWireTransfer'
    Unauthorized:
      description: Unauthorized - Your credentials or access token are invalid.
      headers:
        request-ref:
          $ref: '#/components/headers/request-ref'
  headers:
    request-ref:
      description: A request identifier. Providing this reference when contacting our support team will help us investigate your query.
      required: true
      schema:
        type: string
    x-ratelimit-reset:
      description: The number of seconds until the window is reset.
      required: true
      schema:
        minimum: 0
        type: integer
        format: int32
    x-ratelimit-limit:
      description: '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)

        '
      required: true
      schema:
        type: string
  parameters:
    creationTimestampTo:
      name: creationTimestampTo
      in: query
      required: false
      description: Filter for transactions created before this timestamp. Epoch timestamp using millisecond precision.
      schema:
        type: integer
        format: int64
    limit:
      name: limit
      in: query
      required: false
      description: The limit of the results for paging, starting at the offset. Limit is always capped at 100.
      schema:
        maximum: 100
        minimum: 1
        type: integer
        format: int32
    lastUpdatedTimestampFrom:
      name: lastUpdatedTimestampFrom
      in: query
      required: false
      description: Filter for transactions last updated after this timestamp. Useful for pulling recently changed transactions. Epoch timestamp using millisecond precision.
      schema:
        type: integer
        format: int64
    lastUpdatedTimestampTo:
      name: lastUpdatedTimestampTo
      in: query
      required: false
      description: Filter for transactions last updated before this timestamp. Epoch timestamp using millisecond precision.
      schema:
        type: integer
        format: int64
    creationTimestampFrom:
      name: creationTimestampFrom
      in: query
      required: false
      description: Filter for transactions created after this timestamp. Epoch timestamp using millisecond precision.
      schema:
        type: integer
        format: int64
    sortOrder:
      name: sortOrder
      in: query
      required: false
      description: "Sort order for the results:\n  - ASC: Ascending order, oldest first.\n  - DESC: Descending order, most recent first.\n"
      schema:
        type: string
        enum:
        - ASC
        - DESC
    iwtState:
      name: state
      in: query
      required: false
      description: Filter incoming wire transfers by state.
      schema:
        type: array
        items:
          $ref: '#/components/schemas/IncomingWireTransferMultiState'
    offset:
      name: offset
      in: query
      required: false
      description: 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.
      schema:
        minimum: 0
        type: integer
        format: int32
  securitySchemes:
    api_key:
      type: apiKey
      description: The API Key representing your Multi account.
      name: api-key
      in: header
    auth_token:
      type: http
      description: The authentication token representing the user. This will be included in the login response object.
      scheme: bearer
      bearerFormat: JWT
x-tagGroups:
- name: Access
  tags:
  - Access Token
  - User Impersonation
  - Consent Request
- name: Identities
  tags:
  - Corporates
  - Consumers
- name: User Management
  tags:
  - Authorised Users
- name: Instruments
  tags:
  - Managed Accounts
  - Managed Cards
- name: Transactions
  tags:
  - Transfers
- name: Fees
  tags:
  - Fees
- name: Bulk Operations [Beta]
  tags:
  - Operations
  - Manage