Investec International Payments API
The International Payments API from Investec — 3 operation(s) for international payments.
The International Payments API from Investec — 3 operation(s) for international payments.
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/investec-international-payments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Payment Initiation International Payments API
description: 'Swagger for Payment Initiation API Specification.
**Please Note**: There are no optional fields, if a field is not marked as “Required” it is a Conditional field.
'
termsOfService: https://www.openbanking.org.uk/terms
contact:
name: Service Desk
email: ServiceDesk@openbanking.org.uk
license:
name: open-licence
url: https://www.openbanking.org.uk/open-licence
version: 4.0.1
servers:
- url: /open-banking/v4.0/pisp
tags:
- name: International Payments
paths:
/international-payments:
post:
tags:
- International Payments
summary: Initiate an International Payment
description: Enables a PISP to initiate an already PSU-approved International Payment.
operationId: CreateInternationalPayments
parameters:
- $ref: '#/components/parameters/x-fapi-auth-date'
- $ref: '#/components/parameters/x-fapi-customer-ip-address'
- $ref: '#/components/parameters/x-fapi-interaction-id'
- $ref: '#/components/parameters/Authorization'
- $ref: '#/components/parameters/x-idempotency-key'
- $ref: '#/components/parameters/x-jws-signature'
- $ref: '#/components/parameters/x-customer-user-agent'
- $ref: '#/components/parameters/x-client-id'
requestBody:
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/OBWriteInternational3'
application/json:
schema:
$ref: '#/components/schemas/OBWriteInternational3'
application/jose+jwe:
schema:
$ref: '#/components/schemas/OBWriteInternational3'
description: Default
required: true
responses:
'201':
$ref: '#/components/responses/201InternationalPaymentsCreated'
'400':
$ref: '#/components/responses/400Error'
'401':
$ref: '#/components/responses/401Error'
'403':
$ref: '#/components/responses/403Error'
'404':
$ref: '#/components/responses/404Error'
'405':
$ref: '#/components/responses/405Error'
'406':
$ref: '#/components/responses/406Error'
'415':
$ref: '#/components/responses/415Error'
'422':
$ref: '#/components/responses/422Error'
'429':
$ref: '#/components/responses/429Error'
'500':
$ref: '#/components/responses/500Error'
security:
- PSUOAuth2Security:
- payments
/international-payments/{InternationalPaymentId}:
get:
tags:
- International Payments
summary: Get an International Payment
description: Enables a PISP to retrieve the status of an International Payment.
operationId: GetInternationalPaymentsInternationalPaymentId
parameters:
- $ref: '#/components/parameters/InternationalPaymentId'
- $ref: '#/components/parameters/x-fapi-auth-date'
- $ref: '#/components/parameters/x-fapi-customer-ip-address'
- $ref: '#/components/parameters/x-fapi-interaction-id'
- $ref: '#/components/parameters/Authorization'
- $ref: '#/components/parameters/x-customer-user-agent'
- $ref: '#/components/parameters/x-client-id'
responses:
'200':
$ref: '#/components/responses/200InternationalPaymentsInternationalPaymentIdRead'
'400':
$ref: '#/components/responses/400Error'
'401':
$ref: '#/components/responses/401Error'
'403':
$ref: '#/components/responses/403Error'
'404':
$ref: '#/components/responses/404Error'
'405':
$ref: '#/components/responses/405Error'
'406':
$ref: '#/components/responses/406Error'
'429':
$ref: '#/components/responses/429Error'
'500':
$ref: '#/components/responses/500Error'
security:
- TPPOAuth2Security:
- payments
/international-payments/{InternationalPaymentId}/payment-details:
get:
tags:
- International Payments
summary: Get details of an International Payment
description: Enables a PISP to retrieve detailed information on the status of an International Payment.
operationId: GetInternationalPaymentsInternationalPaymentIdPaymentDetails
parameters:
- $ref: '#/components/parameters/InternationalPaymentId'
- $ref: '#/components/parameters/x-fapi-auth-date'
- $ref: '#/components/parameters/x-fapi-customer-ip-address'
- $ref: '#/components/parameters/x-fapi-interaction-id'
- $ref: '#/components/parameters/Authorization'
- $ref: '#/components/parameters/x-customer-user-agent'
- $ref: '#/components/parameters/x-client-id'
responses:
'200':
$ref: '#/components/responses/200InternationalPaymentsInternationalPaymentIdPaymentDetailsRead'
'400':
$ref: '#/components/responses/400Error'
'401':
$ref: '#/components/responses/401Error'
'403':
$ref: '#/components/responses/403Error'
'404':
$ref: '#/components/responses/404Error'
'405':
$ref: '#/components/responses/405Error'
'406':
$ref: '#/components/responses/406Error'
'429':
$ref: '#/components/responses/429Error'
'500':
$ref: '#/components/responses/500Error'
security:
- TPPOAuth2Security:
- payments
components:
schemas:
OBActiveOrHistoricCurrencyAndAmount:
type: object
additionalProperties: false
required:
- Amount
- Currency
description: Amount of money associated with the charge type.
properties:
Amount:
$ref: '#/components/schemas/OBActiveCurrencyAndAmount_SimpleType'
Currency:
$ref: '#/components/schemas/ActiveOrHistoricCurrencyCode'
UnitNumber:
description: Number that identifies the unit of a specific address .
type: string
minLength: 1
maxLength: 16
OBInternalAccountIdentification4Code:
description: Name of the identification scheme, in a coded form as published in an external list. For a full list of values refer to `OBInternalAccountIdentification4Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
type: string
x-namespaced-enum:
- UK.OBIE.BBAN
- UK.OBIE.IBAN
- UK.OBIE.PAN
- UK.OBIE.Paym
- UK.OBIE.SortCodeAccountNumber
- UK.OBIE.Wallet
OBInternalLocalInstrument1Code:
description: 'User community specific instrument.
Usage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level. For a full list of values refer to `OBInternalLocalInstrument1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)'
type: string
x-namespaced-enum:
- UK.OBIE.BACS
- UK.OBIE.BalanceTransfer
- UK.OBIE.CHAPS
- UK.OBIE.Euro1
- UK.OBIE.FPS
- UK.OBIE.Link
- UK.OBIE.MoneyTransfer
- UK.OBIE.Paym
- UK.OBIE.SEPACreditTransfer
- UK.OBIE.SEPAInstantCreditTransfer
- UK.OBIE.SWIFT
- UK.OBIE.Target2
StreetName:
description: Name of a street or thoroughfare.
type: string
minLength: 1
maxLength: 140
CountrySubDivision:
description: Identifies a subdivision of a country such as state, region, county.
type: string
minLength: 1
maxLength: 35
LEI:
description: Legal entity identification as an alternate identification for a party. Legal Entity Identifier is a code allocated to a party as described in ISO 17442 "Financial Services - Legal Entity Identifier (LEI)".
type: string
example: IZ9Q00LZEVUKWCQY6X15
minLength: 1
maxLength: 20
pattern: ^[A-Z0-9]{18,18}[0-9]{2,2}$
OBErrorResponse1:
description: An array of detail error codes, and messages, and URLs to documentation to help remediation.
type: object
additionalProperties: false
properties:
Id:
description: A unique reference for the error instance, for audit purposes, in case of unknown/unclassified errors.
type: string
minLength: 1
maxLength: 40
Code:
description: Deprecated <br>High level textual error code, to help categorise the errors.
type: string
minLength: 1
example: 400 BadRequest
maxLength: 40
Message:
description: Deprecated <br>Brief Error message
type: string
minLength: 1
example: There is something wrong with the request parameters provided
maxLength: 500
Errors:
items:
$ref: '#/components/schemas/OBError1'
type: array
minItems: 1
required:
- Errors
BuildingName:
description: Name of a referenced building.
type: string
minLength: 1
maxLength: 140
OBWritePaymentDetailsResponse1:
type: object
required:
- Data
properties:
Data:
type: object
additionalProperties: false
properties:
PaymentStatus:
type: array
items:
$ref: '#/components/schemas/OBWritePaymentDetails1'
Links:
$ref: '#/components/schemas/Links'
Meta:
$ref: '#/components/schemas/Meta'
ISODateTime:
description: "All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
OBPostalAddress7:
type: object
additionalProperties: false
description: Information that locates and identifies a specific address, as defined by postal services.
properties:
AddressType:
$ref: '#/components/schemas/OBAddressType2Code'
Department:
$ref: '#/components/schemas/Department'
SubDepartment:
$ref: '#/components/schemas/SubDepartment'
StreetName:
$ref: '#/components/schemas/StreetName'
BuildingNumber:
$ref: '#/components/schemas/BuildingNumber'
BuildingName:
$ref: '#/components/schemas/BuildingName'
Floor:
$ref: '#/components/schemas/Floor'
UnitNumber:
$ref: '#/components/schemas/UnitNumber'
Room:
$ref: '#/components/schemas/Room'
PostBox:
$ref: '#/components/schemas/PostBox'
TownLocationName:
$ref: '#/components/schemas/TownName'
DistrictName:
$ref: '#/components/schemas/DistrictName'
CareOf:
$ref: '#/components/schemas/CareOf'
PostCode:
$ref: '#/components/schemas/PostCode'
TownName:
$ref: '#/components/schemas/TownName'
CountrySubDivision:
$ref: '#/components/schemas/CountrySubDivision'
Country:
$ref: '#/components/schemas/CountryCode'
AddressLine:
type: array
items:
description: Information that locates and identifies a specific address, as defined by postal services, presented in free format text.
type: string
minLength: 1
maxLength: 70
minItems: 0
maxItems: 7
PostBox:
description: Information that locates and identifies a box in a post office assigned to a person or organization, where letters for them are kept until called for.
type: string
minLength: 1
maxLength: 16
OBActiveCurrencyAndAmount_SimpleType:
description: A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.
type: string
pattern: ^\d{1,13}$|^\d{1,13}\.\d{1,5}$
Identification_4:
description: Identification of the party to whom an invoice is issued, when it is different from the debtor or ultimate debtor.
type: string
example: '80200112344562'
minLength: 1
maxLength: 256
OBWriteInternationalResponse5:
type: object
additionalProperties: false
required:
- Data
properties:
Data:
type: object
additionalProperties: false
required:
- InternationalPaymentId
- ConsentId
- CreationDateTime
- Status
- StatusUpdateDateTime
- Initiation
properties:
InternationalPaymentId:
description: 'OB: Unique identification as assigned by the ASPSP to uniquely identify the international payment resource.'
type: string
minLength: 1
maxLength: 40
ConsentId:
description: 'OB: Unique identification as assigned by the ASPSP to uniquely identify the consent resource.'
type: string
minLength: 1
maxLength: 128
CreationDateTime:
description: "Date and time at which the message was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
Status:
$ref: '#/components/schemas/ExternalPaymentTransactionStatus3Code'
StatusUpdateDateTime:
description: "Date and time at which the resource status was updated. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
StatusReason:
type: array
items:
$ref: '#/components/schemas/OBStatusReason'
ExpectedExecutionDateTime:
description: "Expected execution date and time for the payment resource. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
ExpectedSettlementDateTime:
description: "Expected settlement date and time for the payment resource. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
Refund:
$ref: '#/components/schemas/OBDomesticRefundAccount1'
Charges:
type: array
items:
type: object
additionalProperties: false
description: Set of elements used to provide details of a charge for the payment initiation.
required:
- ChargeBearer
- Type
- Amount
properties:
ChargeBearer:
$ref: '#/components/schemas/OBInternalChargeBearerType1Code'
Type:
$ref: '#/components/schemas/OBInternalPaymentChargeType1Code'
Amount:
$ref: '#/components/schemas/OBActiveOrHistoricCurrencyAndAmount'
ExchangeRateInformation:
type: object
additionalProperties: false
required:
- UnitCurrency
- ExchangeRate
- RateType
description: Further detailed information on the exchange rate that has been used in the payment transaction.
properties:
UnitCurrency:
description: Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.
type: string
pattern: ^[A-Z]{3,3}$
ExchangeRate:
description: The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency.
type: number
RateType:
description: Specifies the type used to complete the currency exchange.
type: string
enum:
- Actual
- Agreed
- Indicative
ContractIdentification:
description: Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent.
type: string
minLength: 1
maxLength: 256
ExpirationDateTime:
description: "Specified date and time the exchange rate agreement will expire. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
Initiation:
type: object
additionalProperties: false
required:
- InstructionIdentification
- EndToEndIdentification
- CurrencyOfTransfer
- InstructedAmount
- CreditorAccount
description: The Initiation payload is sent by the initiating party to the ASPSP. It is used to request movement of funds from the debtor account to a creditor for a single international payment.
properties:
InstructionIdentification:
description: 'Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction.
Usage: the instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. It can be included in several messages related to the instruction.'
type: string
minLength: 1
maxLength: 35
EndToEndIdentification:
description: 'Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.
Usage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several messages related to the transaction.
OB: The Faster Payments Scheme can only access 31 characters for the EndToEndIdentification field.'
type: string
minLength: 1
maxLength: 35
LocalInstrument:
$ref: '#/components/schemas/OBInternalLocalInstrument1Code'
InstructionPriority:
description: Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction.
type: string
enum:
- Normal
- Urgent
ExtendedPurpose:
description: Specifies the purpose of an international payment, when there is no corresponding 4 character code available in the ISO20022 list of Purpose Codes.
type: string
minLength: 1
maxLength: 140
ChargeBearer:
$ref: '#/components/schemas/OBInternalChargeBearerType1Code'
CurrencyOfTransfer:
description: Specifies the currency of the to be transferred amount, which is different from the currency of the debtor's account.
type: string
pattern: ^[A-Z]{3,3}$
DestinationCountryCode:
description: Country in which Credit Account is domiciled. Code to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).
type: string
pattern: ^[A-Z]{2,2}$
InstructedAmount:
type: object
additionalProperties: false
required:
- Amount
- Currency
description: 'Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
Usage: This amount has to be transported unchanged through the transaction chain.'
properties:
Amount:
$ref: '#/components/schemas/OBActiveCurrencyAndAmount_SimpleType'
Currency:
$ref: '#/components/schemas/ActiveOrHistoricCurrencyCode'
ExchangeRateInformation:
type: object
additionalProperties: false
required:
- UnitCurrency
- RateType
description: Provides details on the currency exchange rate and contract.
properties:
UnitCurrency:
description: Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.
type: string
pattern: ^[A-Z]{3,3}$
ExchangeRate:
description: The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency.
type: number
RateType:
description: Specifies the type used to complete the currency exchange.
type: string
enum:
- Actual
- Agreed
- Indicative
ContractIdentification:
description: Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent.
type: string
minLength: 1
maxLength: 256
DebtorAccount:
type: object
additionalProperties: false
required:
- SchemeName
- Identification
description: Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.
properties:
SchemeName:
$ref: '#/components/schemas/OBInternalAccountIdentification4Code'
Identification:
$ref: '#/components/schemas/Identification_0'
Name:
description: 'The account name is the name or names of the account owner(s) represented at an account level, as displayed by the ASPSP''s online channels.
Note, the account name is not the product name or the nickname of the account.'
type: string
minLength: 1
maxLength: 350
SecondaryIdentification:
$ref: '#/components/schemas/SecondaryIdentification'
Proxy:
$ref: '#/components/schemas/OBProxy1'
Creditor:
type: object
additionalProperties: false
description: Party to which an amount of money is due.
properties:
Name:
description: Name by which a party is known and which is usually used to identify that party.
type: string
minLength: 1
maxLength: 350
LEI:
$ref: '#/components/schemas/LEI'
PostalAddress:
$ref: '#/components/schemas/OBPostalAddress7'
CreditorAgent:
type: object
additionalProperties: false
description: Financial institution servicing an account for the creditor.
properties:
SchemeName:
$ref: '#/components/schemas/OBInternalFinancialInstitutionIdentification4Code'
Identification:
$ref: '#/components/schemas/Identification_1'
Name:
$ref: '#/components/schemas/Name'
LEI:
$ref: '#/components/schemas/LEI'
PostalAddress:
$ref: '#/components/schemas/OBPostalAddress7'
CreditorAccount:
type: object
additionalProperties: false
required:
- SchemeName
- Identification
- Name
description: Unambiguous identification of the account of the creditor to which a credit entry will be posted as a result of the payment transaction.
properties:
SchemeName:
$ref: '#/components/schemas/OBInternalAccountIdentification4Code'
Identification:
$ref: '#/components/schemas/Identification_0'
Name:
description: 'The account name is the name or names of the account owner(s) represented at an account level.
Note, the account name is not the product name or the nickname of the account.
OB: ASPSPs may carry out name validation for Confirmation of Payee, but it is not mandatory.'
type: string
minLength: 1
maxLength: 350
SecondaryIdentification:
$ref: '#/components/schemas/SecondaryIdentification'
Proxy:
$ref: '#/components/schemas/OBProxy1'
UltimateCreditor:
$ref: '#/components/schemas/OBUltimateCreditor1'
UltimateDebtor:
$ref: '#/components/schemas/OBUltimateDebtor1'
RegulatoryReporting:
type: array
items:
$ref: '#/components/schemas/OBRegulatoryReporting1'
maxItems: 10
RemittanceInformation:
$ref: '#/components/schemas/OBRemittanceInformation2'
SupplementaryData:
$ref: '#/components/schemas/OBSupplementaryData1'
MultiAuthorisation:
type: object
additionalProperties: false
required:
- Status
description: The multiple authorisation flow response from the ASPSP.
properties:
Status:
description: Specifies the status of the authorisation flow in code form.
type: string
enum:
- AUTH
- AWAF
- RJCT
NumberRequired:
description: Number of authorisations required for payment order (total required at the start of the multi authorisation journey).
type: integer
NumberReceived:
description: Number of authorisations received.
type: integer
LastUpdateDateTime:
description: "Last date and time at the authorisation flow was updated. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
ExpirationDateTime:
description: "Date and time at which the requested authorisation flow must be completed. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
type: string
format: date-time
Debtor:
$ref: '#/components/schemas/OBCashAccountDebtor4'
Links:
$ref: '#/components/schemas/Links'
Meta:
$ref: '#/components/schemas/Meta'
OBRegulatoryAuthority2:
type: object
description: 'Entity requiring the regulatory reporting information. '
properties:
Name:
type: string
description: Name of the entity requiring the regulatory reporting information.
minLength: 1
maxLength: 140
CountryCode:
$ref: '#/components/schemas/CountryCode'
ExternalPaymentTransactionStatus3Code:
description: 'Specifies the status of the payment information group.
For a full list of values refer to `ExternalPaymentTransactionStatus3Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)
'
type: string
enum:
- RCVD
- PDNG
- ACTC
- PATC
- ACCP
- ACFC
- ACSP
- ACWC
- ACSC
- BLCK
- ACCC
- ACWP
- RJCT
Meta:
title: MetaData
type: object
additionalProperties: false
description: Meta Data relevant to the payload
properties:
TotalPages:
type: integer
format: int32
FirstAvailableDateTime:
$ref: '#/components/schemas/ISODateTime'
LastAvailableDateTime:
$ref: '#/components/schemas/ISODateTime'
OBInternalExtendedAccountType1Code:
description: Specifies the extended type of account.
type: string
enum:
- Business
- BusinessSavingsAccount
- Charity
- Collection
- Corporate
- Ewallet
- Government
- Investment
- ISA
- JointPersonal
- Pension
- Personal
- PersonalSavingsAccount
- Premier
- Wealth
Identification_3:
description: Identification of the organisation issuing the invoice, when it is different from the creditor or ultimate creditor
type: string
example: '80200112344562'
minLength: 1
maxLength: 256
OBRemittanceInformation2:
type: object
description: Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system
properties:
Structured:
type: array
items:
$ref: '#/components/schemas/OBRemittanceInformationStructured'
Unstructured:
type: array
description: Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.
items:
type: string
maxLength: 140
minLength: 1
SecondaryIdentification:
description: "This is secondary identification of the account, as assigned by the account servicing institution. \nThis can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination)."
type: string
minLength: 1
maxLength: 34
OBWriteInternational3:
type: object
additionalProperties: false
required:
- Data
- Risk
properties:
Data:
type: object
additionalProperties: fa
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/investec/refs/heads/main/openapi/investec-international-payments-api-openapi.yml