Weavr Incoming Wire Transfers API
Incoming wire transfers received from external bank accounts to managed accounts with IBANs.
Incoming wire transfers received from external bank accounts to managed accounts with IBANs.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/weavr-incoming-wire-transfers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
version: v3
title: Weavr Multi Product Incoming Wire Transfers API
x-logo:
url: https://storage.googleapis.com/weavr-cdn/weavr_logo-new.png
backgroundColor: '#FFFFFF'
altText: Weavr
description: 'Weavr Multi API provides a simple and flexible way to issue cards and accounts to your customers.
By integrating Weavr Multi API in your application you can embed banking capabilities within your app and provide a seamless experience for your customers.
# Authentication
Each request to the Multi API must include an `api-key` that represents your account. You can obtain an API Key by registering for a Multi account [here](https://portal.weavr.io).
Almost all endpoints require a secondary authentication token `auth_token` that represents the user for whom the request is being executed.
'
contact:
name: Weavr
url: https://weavr.io
servers:
- description: Weavr Sandbox Environment
url: https://sandbox.weavr.io/multi
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: []
webhooks:
/bank_transfers_in/authorisation_request:
post:
tags:
- Incoming Wire Transfers
summary: Approve or reject incoming wire transfers
description: ''
operationId: bankTransferInForwarding
parameters:
- $ref: '#/components/parameters/request-ref'
- $ref: '#/components/parameters/published-timestamp'
- $ref: '#/components/parameters/signature'
- $ref: '#/components/parameters/signature-v2'
requestBody:
content:
application/json:
schema:
type: object
required:
- id
- source
- destination
- amount
- timestamp
properties:
id:
type: string
pattern: ^[0-9]+$
description: The unique identifier of the bank transfer
source:
type: object
required:
- instrument
properties:
instrument:
type: object
required:
- type
- instrument
properties:
type:
type: string
enum:
- linked_accounts
- unknown_sender_accounts
instrument:
oneOf:
- $ref: '#/components/schemas/LinkedAccount'
- $ref: '#/components/schemas/UnknownSenderAccount'
reference:
type: string
description: This is an external reference (if available), input by the sender when creating the payment, and intended for the recipient.
destination:
type: object
required:
- instrument
- owner
properties:
instrument:
type: object
required:
- type
- instrument
properties:
type:
type: string
enum:
- managed_accounts
instrument:
oneOf:
- $ref: '#/components/schemas/ManagedAccount'
owner:
type: object
required:
- type
- owner
properties:
type:
type: string
enum:
- consumers
- corporates
owner:
oneOf:
- $ref: '#/components/schemas/Corporate'
- $ref: '#/components/schemas/Consumer'
amount:
$ref: '#/components/schemas/CurrencyAmount'
timestamp:
type: integer
description: The timestamp of the transaction, using epoch timestamp with millisecond precision.
format: int64
responses:
'200':
description: Authorisation event received with `APPROVED` or `DECLINED` decision.
content:
application/json:
schema:
type: object
properties:
result:
type: string
enum:
- APPROVED
- DENIED
'404':
$ref: '#/components/responses/NotFound'
default:
$ref: '#/components/responses/Error'
security:
- webhooks_key: []
components:
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'
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'
Unauthorized:
description: Unauthorized - Your credentials or access token are invalid.
headers:
request-ref:
$ref: '#/components/headers/request-ref'
IncomingWireTransferResponse:
description: Success
headers:
request-ref:
$ref: '#/components/headers/request-ref'
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingWireTransfer'
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'
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'
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'
ServiceUnavailable:
description: Service Unavailable - The requested service is temporarily unavailable. Please try again later.
headers:
request-ref:
$ref: '#/components/headers/request-ref'
schemas:
CorporateRootUser:
required:
- id
- email
- name
- surname
- mobile
- active
- emailVerified
- mobileNumberVerified
- companyPosition
type: object
properties:
id:
$ref: '#/components/schemas/IdentityId'
name:
maxLength: 100
type: string
description: First name of the root user.
surname:
maxLength: 100
type: string
description: Last name of the root user.
email:
$ref: '#/components/schemas/Email'
mobile:
$ref: '#/components/schemas/Mobile'
companyPosition:
$ref: '#/components/schemas/CompanyPosition'
active:
type: boolean
description: The state of the root user. If false, then the user will not be able to log in.
emailVerified:
type: boolean
description: Indicates if the root user's email has been verified.
mobileNumberVerified:
type: boolean
description: Indicates if the root user's mobile number has been verified.
dateOfBirth:
description: Date of birth of the authorised user.
$ref: '#/components/schemas/Date'
tag:
$ref: '#/components/schemas/Tag'
locale:
$ref: '#/components/schemas/UserLocale'
brand:
$ref: '#/components/schemas/Brand'
StringWrappedTypeId:
required:
- type
- id
type: object
properties:
type:
maxLength: 50
pattern: ^[a-zA-Z0-9_-]+$
type: string
id:
type: string
pattern: ^[0-9]+$
Brand:
type: string
pattern: ^[a-zA-Z0-9]+$
description: 'Brand identifier used to determine the set of email and SMS user notification templates. Must be alphanumeric, up to 25 characters, and contain no spaces.
'
maxLength: 25
Industry:
type: string
description: The industry of the identity.
deprecated: true
enum:
- ACCOUNTING
- AUDIT
- FINANCE
- PUBLIC_SECTOR_ADMINISTRATION
- ART_ENTERTAINMENT
- AUTO_AVIATION
- BANKING_LENDING
- BUSINESS_CONSULTANCY_LEGAL
- CONSTRUCTION_REPAIR
- EDUCATION_PROFESSIONAL_SERVICES
- INFORMATIONAL_TECHNOLOGIES
- TOBACCO_ALCOHOL
- GAMING_GAMBLING
- MEDICAL_SERVICES
- MANUFACTURING
- PR_MARKETING
- PRECIOUS_GOODS_JEWELRY
- NON_GOVERNMENTAL_ORGANIZATION
- INSURANCE_SECURITY
- RETAIL_WHOLESALE
- TRAVEL_TOURISM
- FREELANCER
AccountLowBalanceThreshold:
type: integer
format: int64
description: Sends a low balance notification webhook when the available balance drops below this amount. Currency is inherited from the managed account.
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.
AddressWithNoRequiredFields:
type: object
description: The address, with none of the separate fields being set as required.
properties:
addressLine1:
type: string
description: The first line of the address.
addressLine2:
type: string
description: The second line of the address.
city:
type: string
description: The city of the address.
postCode:
maxLength: 10
pattern: ^[A-Za-z0-9 -]*$
type: string
description: The post code associated with the address.
state:
maxLength: 50
type: string
description: The state of the address.
country:
maxLength: 2
minLength: 2
pattern: ^[A-Z]+$
type: string
description: The country of the address expressed in ISO 3166 alpha-2 format.
Id:
type: string
pattern: ^[0-9]+$
Mobile:
required:
- number
- countryCode
type: object
properties:
countryCode:
maxLength: 4
minLength: 1
type: string
pattern: ^\+[0-9]+$
description: The country code of the user mobile number (e.g. +44).
number:
pattern: ^[0-9]{1,12}$
type: string
description: The mobile number of the user - excluding country code.
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
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).'
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.
UserLocale:
type: string
pattern: ^[a-z]{2}(-[A-Z]{2})?$
description: 'BCP47 locale code (e.g. en, en-US). The locale determines which email and SMS user notification templates are used.
'
maxLength: 5
example: en-GB
BlockedReason:
type: string
description: "The reason why the instrument has been blocked:\n - USER: The root, or an authorised user, of the identity owning the instrument has temporarily blocked the instrument.\n - SYSTEM: The platform or an administrator of the platform has temporarily blocked the instrument.\n - LOST: The instrument has been blocked because it was marked as lost.\n - SINGLE_SPEND: The instrument has been automatically blocked after its first successful transaction (single-spend card).\n"
enum:
- USER
- SYSTEM
- LOST
- SINGLE_SPEND
CompanyType:
type: string
description: Supported company types - if company type is not listed, please contact our support team to check if the company type can be supported.
enum:
- SOLE_TRADER
- LLC
- PUBLIC_LIMITED_COMPANY
- LIMITED_LIABILITY_PARTNERSHIP
- NON_PROFIT_ORGANISATION
CorporateSourceOfFunds:
type: string
description: The corporate's source of funds.
deprecated: true
enum:
- LABOUR_CONTRACT
- CIVIL_CONTRACT
- RENT
- FUNDS_FROM_OTHER_AUXILIARY_SOURCES
- SALE_OF_MOVABLE_ASSETS
- SALE_OF_REAL_ESTATE
- ORDINARY_BUSINESS_ACTIVITY
- DIVIDENDS
- LOAN_FROM_FINANCIAL_INSTITUTIONS_CREDIT_UNIONS
- LOAN_FROM_THIRD_PARTIES
- SALE_OF_COMPANY_SHARES_BUSINESS
- OTHER
- DONATION
- INHERITANCE
- ORIGIN_OF_FUNDS_UNKNOWN
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
Consumer:
required:
- id
- profileId
- rootUser
- ipAddress
- creationTimestamp
type: object
properties:
id:
description: The unique identifier of the Consumer Identity.
$ref: '#/components/schemas/IdentityId'
profileId:
$ref: '#/components/schemas/ProfileId'
tag:
$ref: '#/components/schemas/Tag'
rootUser:
description: The root user of the Consumer Identity.
$ref: '#/components/schemas/ConsumerRootUser'
creationTimestamp:
type: integer
format: int64
description: The time when this consumer was created, expressed in Epoch timestamp using millisecond precision.
ipAddress:
maxLength: 45
minLength: 5
type: string
description: The IP address of the consumer user doing the registration.
acceptedTerms:
type: boolean
description: Must be set to *true* to indicate that the consumer root user has accepted the terms and conditions.
baseCurrency:
$ref: '#/components/schemas/Currency'
feeGroup:
type: string
description: The fee group which the consumer is bound to.
sourceOfFunds:
$ref: '#/components/schemas/ConsumerSourceOfFunds'
sourceOfFundsOther:
type: string
description: Description of source of funds in case `OTHER` was chosen.
deprecated: true
Iban:
required:
- iban
type: object
description: Bank details
properties:
iban:
type: string
minLength: 15
maxLength: 34
pattern: ^[A-Z]{2}[0-9]{2}[A-Z0-9]{11,30}$
description: International Bank Account Number, required for wire transfer.
bankIdentifierCode:
type: string
minLength: 8
maxLength: 11
pattern: ^[a-zA-Z0-9]{4}[a-zA-Z]{2}[a-zA-Z0-9]{2}[a-zA-Z0-9]{0,3}$
description: BIC, for wire transfer over SEPA or RIX.
Error:
type: object
properties:
code:
type: string
message:
type: string
ManagedInstrumentBalance:
type: object
description: Instruments with funds have 2 balances, the `availableBalance` indicating the funds that are available for transactions such as purchases, and the `actualBalance` indicating the funds that are actually on the instrument.
properties:
availableBalance:
type: integer
format: int64
description: The funds available for transactions on the instrument. Funds that are blocked or pending are not included in the available balance.
actualBalance:
type: integer
format: int64
description: The funds that are actually on the instrument. Funds that are blocked or pending, due to for example, a purchase authorisation or a pending deposit, are included in the actual balance.
LinkedAccount:
required:
- id
- profileId
- name
- country
- state
type: object
properties:
id:
type: string
description: The unique identifier of the linked account.
pattern: ^[0-9]+$
profileId:
$ref: '#/components/schemas/ProfileId'
tag:
$ref: '#/components/schemas/Tag'
friendlyName:
minLength: 1
maxLength: 50
type: string
description: A user-friendly label assigned to the Linked Account to help end-users easily identify it within the application. This name can be updated at any time using the `PATCH` endpoint
name:
minLength: 1
maxLength: 100
type: string
description: 'The full name or corporate name of the account holder as registered with the external bank or payment service provider. This is the name under which the account is officially held.
'
type:
$ref: '#/components/schemas/AccountType'
currency:
$ref: '#/components/schemas/Currency'
country:
description: The country of the bank or institution at which the account is held.
type: string
maxLength: 2
minLength: 2
pattern: ^[A-Z]+$
accountReference:
description: The IBAN or Account Number and Sort Code of the account held at the external bank or payment service provider.
oneOf:
- $ref: '#/components/schemas/AccountNumberAndSortCode'
- $ref: '#/components/schemas/Iban'
- $ref: '#/components/schemas/AccountDescriptor'
state:
$ref: '#/components/schemas/LinkedAccountState'
creationTimestamp:
description: The timestamp when the linked account was created, expressed in Epoch timestamp using millisecond precision.
type: integer
format: int64
owner:
$ref: '#/components/schemas/StringWrappedTypeId'
AccountDescriptor:
required:
- accountDescriptor
type: object
description: Identifier or account number which does not follow either the IBAN or Faster Payment (sort code and account number) format, such as a US bank account identifier.
properties:
accountDescriptor:
type: string
Corporate:
required:
- id
- profileId
- rootUser
- company
- ipAddress
- baseCurrency
- creationTimestamp
type: object
properties:
id:
description: The unique identifier of the Corporate Identity.
$ref: '#/components/schemas/IdentityId'
profileId:
$ref: '#/components/schemas/ProfileId'
tag:
$ref: '#/components/schemas/Tag'
rootUser:
description: The root user of the Corporate Identity.
$ref: '#/components/schemas/CorporateRootUser'
company:
required:
- name
- type
- countryOfRegistration
type: object
properties:
name:
maxLength: 100
type: string
description: The registered name of the company.
type:
$ref: '#/components/schemas/CompanyType'
registrationNumber:
maxLength: 20
minLength: 1
type: string
description: The company registration number.
registeredAddress:
$ref: '#/components/schemas/LegalAddress'
businessAddress:
description: The address where the business is based.
$ref: '#/components/schemas/Address'
countryOfRegistration:
maxLength: 2
minLength: 2
pattern: ^[A-Z]+$
type: string
description: The country of company registration in ISO 3166 alpha-2.
incorporatedOn:
description: The company's date of incorporation
$ref: '#/components/schemas/Date'
industry:
$ref: '#/components/schemas/Industry'
sourceOfFunds:
$ref: '#/components/schemas/CorporateSourceOfFunds'
sourceOfFundsOther:
type: string
description: Description of source of funds in case `OTHER` was chosen.
deprecated: true
acceptedTerms:
type: boolean
description: Must be set to *true* to indicate that the root user has accepted the terms and conditions.
ipAddress:
maxLength: 45
minLength: 5
type: string
description: The IP address of the user doing the registration.
baseCurrency:
$ref: '#/components/schemas/Currency'
feeGroup:
type: string
description: Fee groups allow the possibility to charge different fees to users under the same profile. If fee groups are not required, ignore this field.
creationTimestamp:
type: integer
format: int64
description: The time when the Corporate was created, expressed in Epoch timestamp using millisecond precision.
retailQualifier:
type: string
description: Indicates the type of corporate entity based on its retail status.
enum:
- RETAIL
- NON_RETAIL
- UNKNOWN
Date:
required:
- year
- month
- day
type: object
properties:
year:
type: integer
format: int32
maximum: 2100
minimum: 1900
month:
type: integer
format: int32
maximum: 12
minimum: 1
day:
type: integer
format: int32
maximum: 31
minimum: 1
ManagedAccount:
required:
- id
- profileId
- friendlyName
- currency
- balances
- creationTimestamp
- state
type: object
properties:
id:
type: string
pattern: ^[0-9]+$
description: The unique identifier of a Managed Account.
profileId:
$ref: '#/components/schemas/ProfileId'
tag:
$ref: '#/components/schemas/Tag'
friendlyName:
minLength: 1
maxLength: 50
type: string
description: The friendly name given to the managed account.
currency:
$ref: '#/components/schemas/Currency'
balances:
$ref: '#/components/schemas/ManagedInstrumentBalance'
state:
$ref: '#/components/schemas/ManagedInstrumentState'
creationTimestamp:
type: integer
format: int64
description: The time when the managed account was created, expressed in Epoch timestamp using millisecond precision.
lowBalanceThreshold:
$ref: '#/components/schemas/AccountLowBalanceThreshold'
DestroyedReason:
type: string
description: "The reason why the instrument has been destroyed:\n - SYSTEM: The platform or an administrator of the platform has destroyed the instrument.\n - USER: The root, or an authorised user, of the identity owning the instrument has destroyed the instrument.\n - LOST: The instrument was automatically destroyed as it was marked as lost.\n - STOLEN: The instrument was automatically destroyed as it was marked as stolen.\n - EXPIRED: The instrument was automatically destroyed as it expired.\n - COMPROMISED: The instrument was automatically destroyed as it was marked as compromised.\n - SINGLE_SPEND: The instrument was automatically destroyed as it was a single-spend card that was used.\n"
enum:
- SYSTEM
- USER
- LOST
- STOLEN
- EXPIRED
- COMPROMISED
- SINGLE_SPEND
Tag:
type: string
description: The tag field is a custom field that can be used to search and filter.
maxLength: 50
pattern: ^[a-zA-Z0-9_-]+$
Address:
required:
- addressLine1
- city
- postCode
- country
type: object
properties:
addressLine1:
minLength: 1
maxLength: 150
type: string
description: The first line of the address.
addressLine2:
maxLength: 150
type: string
description: The second line of the address.
city:
maxLength: 50
type: string
description: The city of the address.
postCode:
maxLength: 10
pattern: ^[A-Za-z0-9 -]*
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/weavr/refs/heads/main/openapi/weavr-incoming-wire-transfers-api-openapi.yml