openapi: 3.0.0 info: title: Account and Transaction API Specification Account Access Consents SME API description: 'Swagger for Account and Transaction 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/aisp tags: - name: SME description: Endpoint for getting Unsecured SME Loan data paths: /unsecured-sme-loans: get: tags: - SME description: Gets a list of all `Unsercured SME Lending` objects. parameters: - name: If-Modified-Since type: string description: Used for conditional request, to retrieve data only if modified since a given date in: header required: false - name: If-None-Match type: string description: Used for conditional request, to retrieve data only if the given Etag value does not match in: header required: false responses: '200': description: Successful response with a list of `Unsecured SME Lending` data headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header default: max-age=31536000 Etag: type: string description: A unique ID identifying whether this resource has changed Cache-Control: type: string description: Describes how long this response can be cached default: max-age=28800 X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff schema: type: object properties: meta: title: Meta data type: object properties: LastUpdated: type: string format: date-time TotalResults: type: integer Agreement: type: string enum: - Use of the APIs and any related data will be subject to the terms of the Open Licence and subject to terms and conditions License: description: Open Banking License type: string format: uri enum: - https://www.openbanking.org.uk/open-licence TermsOfUse: description: Open Banking Terms of Use type: string format: uri enum: - https://www.openbanking.org.uk/terms required: - LastUpdated - TotalResults - Agreement - License - TermsOfUse additionalProperties: false data: type: array items: description: SME Loan type: object properties: Organisation: description: Organisation type: object properties: ParentOrganisation: description: Parent organisation type: object properties: LEI: description: The LEI ID of the organisation type: string pattern: ^[A-Z0-9]{18,18}[0-9]{2,2}$ BIC: description: The BIC from the organisation type: string pattern: '[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?' OrganisationName: description: Organisation Name type: object properties: LegalName: description: Legal Name of the organisation type: string minLength: 1 maxLength: 35 required: - LegalName additionalProperties: false required: - OrganisationName additionalProperties: false Brand: description: Brand type: object properties: TrademarkIPOCode: description: 'The Intellectual Property Office (IPO) is the official body responsible for intellectual property (IP) rights including patents, designs, trademarks and copyright. (Code: UK or EU only)' type: string enum: - UK - EU TrademarkID: description: 'The trademark number that has been registered with the Intellectual Property Office. Note: The 2 letter IPO prefix should be omitted' type: string minLength: 1 maxLength: 35 required: - TrademarkIPOCode - TrademarkID additionalProperties: false required: - ParentOrganisation - Brand additionalProperties: false ProductName: description: The short product or marketing name assigned by the parent organisation type: string ProductIdentifier: description: Identifier within the parent organisation for the product. Must be unique in the organisation type: string ArrearsTreatment: description: Arrears treatment type: string ProductTypeName: description: Descriptive code for the product category type: string enum: - FlexibleBusinessLoan - SmallBusinessLoan - SmeUnsecuredLoan ProductURL: type: array items: type: string format: uri minItems: 1 ProductSegment: type: array items: description: Marketing or industry segment that the product is applicable for. Gives the sector or segment that the Loan is designed for type: string enum: - AgricultureSector - AllSegmentsCorporate - Corporate - FixedGroup - FlexibleBusinessLoan - GovernmentScheme - NewCustomersOnly - SmallLoan - SpecialisedSector - SwitchersOnly minItems: 1 ProductDescription: description: Description of the product provided by the parent Organisation type: string TsandCs: description: URL provided by the parent organisation which redirects to the T&Cs type: array items: type: string minItems: 1 CustomerAccessChannels: description: Ways to interact with the bank type: array items: description: '' type: string enum: - Branch - MobileBankingApp - Online - Phone - Post - PostOffice - Text minItems: 1 Currency: description: Currency of the Account. Default to GBP at present type: array items: description: Active or Historic Currency Code type: string pattern: '[A-Z]{3}' minItems: 1 MinimumLoanTerm: description: Minimum term (Days) type: integer MaximumLoanTerm: description: Maximum loan term (Days) type: integer MinimumLoanAmount: description: Minimum loan amount type: string pattern: ^-?\d{1,10}\.\d{1,2}$ MaximumLoanAmount: description: Maximum loan amount type: string pattern: ^-?\d{1,10}\.\d{1,2}$ PaymentHoliday: description: Indicates whether a repayment holiday is allowed type: boolean LoanItem: type: array items: description: Loan Item type: object properties: ProductState: description: Describes if the offering is promotional or a description of a future state. type: string enum: - FutureMultipleTerms - Promotional - Regular StartPromotionOrFutureTerms: description: Describes the start date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ StopPromotionOrFutureTerms: description: Describes the end date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ LengthPromotionalInDays: description: Describes the length if only a duration is given instead of a date in days type: integer DateOfChange: description: Date of the change if it refers to future terms type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ LoanPricing: type: array items: description: Loan Pricing type: object properties: SizeIncrement: description: Identifier for tier only where it has been supplied under Part 8 (article 32 or the CMA order), value reflects upper tier value type: string enum: - £5000 - £10000 - £15000 - £20000 - £25000 - Other - TierMaximum - TierMinimum LoanLengthIncrement: description: Loan Length Increments type: string enum: - 1 year - 2 years - 3 years - 4 years - 5 years RepaymentFrequency: type: array items: description: Repayment Frequency Code type: string enum: - Daily - Flexible - Fortnightly - HalfYearly - Monthly - Quarterly - Weekly - Yearly minItems: 1 uniqueItems: true LoanSizeBandLower: description: Monetary amount without currency type: string pattern: ^-?\d{1,10}\.\d{1,2}$ LoanSizeBandUpper: description: Monetary amount without currency type: string pattern: ^-?\d{1,10}\.\d{1,2}$ LoanLengthIncrementLower: type: integer LoanLengthIncrementUpper: type: integer IndicativeRate: type: string RateComparisonType: description: Rate Comparison Type type: string enum: - APR - AER - Gross - Net - RepApr Negotiable: type: boolean required: - SizeIncrement - LoanLengthIncrement - RepaymentFrequency - LoanSizeBandLower - LoanSizeBandUpper - LoanLengthIncrementLower - LoanLengthIncrementUpper - IndicativeRate - Negotiable additionalProperties: false CCARegulatedEntity: type: boolean IsALowInterestRepaymentStartPossible: type: boolean IsThisAnInterestOnlyLoan: type: boolean WillTheLoanBePaidInTrancheDrawdowns: type: boolean required: - ProductState - CCARegulatedEntity - IsALowInterestRepaymentStartPossible - IsThisAnInterestOnlyLoan - WillTheLoanBePaidInTrancheDrawdowns additionalProperties: false Eligibility: description: Eligibility type: object properties: AgeRestricted: description: Indicates a customer's age is part of eligibility criteria type: boolean MinimumAge: description: Minimum age, in years, required to hold an account type: integer MaximumAge: description: Maximum age, in years, allowed to hold the account type: integer MaximumAgeToOpen: description: Maximum age, in years, to open an account type: integer OtherFinancialHoldingRequired: description: Indicates that it is necessary to hold another product with the bank in order to be eligible for this product or feature type: boolean Description: description: One paragraph detailing the eligibility type: string IncomeTurnoverRelated: description: Indicates if eligibility linked to income type: boolean SingleJointIncome: description: Minimum Income Source. For certain products a minimum income is required. This can be mandated as to the single income or to a joint income. This field describes this type: string enum: - Joint - SoleIncome - SoleOrJoint - Turnover MinimumIncomeTurnoverAmount: description: Minimum income / Turnover required to hold the product type: string pattern: ^-?\d{1,10}\.\d{1,2}$ MinimumIncomeTurnoverCurrency: description: Minimum income / Turnover Currency type: string pattern: '[A-Z]{3}' IncomeCondition: description: Stipulates any particular definition of income that applies to the income eligibility and/or method by which income must paid into the account (eg Salary DD) type: string MinIncomeTurnoverPaidIntoAccount: description: Minimum Income Amount required to paid into the account type: integer MinimumIncomeFrequency: description: The frequency that the minimum mentioned before is deposited in the account. Yearly is very important for premium accounts type: string enum: - AcademicTerm - HalfYearly - Monthly - Quarterly - Weekly - Yearly AnnualBusinessTurnover: description: Annual Business Turnover type: string pattern: ^-?\d{1,10}\.\d{1,2}$ AnnualBusinessTurnoverCurrency: description: Annual Business Turnover Currency type: string pattern: '[A-Z]{3}' ResidencyRestricted: description: Indicates a customer's residency forms part of the eligibility criteria type: boolean ResidencyRestrictedRegion: description: Indicates a customer must be current resident of a geographic area/country type: string enum: - UK - EEA - EU - EFTA - GB - ENG - GB - NIR - GB - SCT - GB - WLS - IRL MaxNumberOfAccounts: description: Maximum number of the same prodcut the customer may hold type: string ThirdSectorOrganisations: description: Is the product available to operate as a Clubs or Societies account? type: boolean MinimumDeposit: description: A minimum deposit required to hold this account type: boolean OpeningDepositMinimum: description: Minimum Amount to be held on account type: string pattern: ^-?\d{1,10}\.\d{1,2}$ OpeningDepositMinimumCurrency: description: The currency of the Minimum Amount to be depositing at opening type: string pattern: '[A-Z]{3}' MinimumOperatingBalanceExists: description: Is there a Minimum Operating Balance? type: boolean MinimumOperatingBalance: description: Minimum Operating Balance type: string pattern: ^-?\d{1,10}\.\d{1,2}$ MinimumOperatingBalanceCurrency: description: Minimum Operating Balance currency type: string pattern: '[A-Z]{3}' MaximumOpeningAmount: description: A maximum amount to be deposited at opening type: boolean OpeningDepositMaximumAmount: description: Maximum Amount to be depositing at opening type: string pattern: ^-?\d{1,10}\.\d{1,2}$ OpeningDepositMaximumCurrency: description: The currency of the Minimum Amount to be depositing at opening type: string pattern: '[A-Z]{3}' EligibilityName: description: Free text description, denotes non standard eligibilities not included in the code list type: string EligibilityType: description: Eligibility type type: string enum: - AnyBusinessCustomer - BusinessOnly - CreditCard - CreditScoring - EmailAddress - ExistingCustomers - IdAndV - Mortgage - NoArrearsOnLoan - NoCustomerInArrears - NoOverOverdraftThirtyDays - NoSoleUkAccountOrBankrupt - NTB - NTBBusiness - SoleStudentAccount - SoleUkAccount - StudentsOnly - TwoMonthsOfCourseStart - UCASFulltimeTwoYears EligibilityNotes: description: Optional additional notes to supplement the eligibility conditions. Only used for very specific conditions type: string PreviousBankruptcy: description: Describes if a previous bankruptcy / insolvency disqualfies for this account Details in ELI-280 type: boolean MarketingEligibility: type: array items: description: Specific eligibility for marketing type: string enum: - ExistingCustomers - NewCustomersOnly - SwitchersOnly - StartUp uniqueItems: true required: - AgeRestricted - OtherFinancialHoldingRequired - Description - IncomeTurnoverRelated - ResidencyRestricted - ThirdSectorOrganisations - PreviousBankruptcy additionalProperties: false FeesAndCharges: type: array items: description: Fees And Charges type: object properties: ProductState: description: Describes if the offering is promotional or a description of a future state. type: string enum: - FutureMultipleTerms - Promotional - Regular Fees: description: Fees type: object properties: StartPromotionOrFutureTerms: description: Describes the start date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ StopPromotionOrFutureTerms: description: Describes the end date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ LengthPromotionalInDays: description: Describes the length if only a duration is given instead of a date type: integer DateOfChange: description: Date of the change if it refers to future terms type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ FeeLowerTier: description: Lower occurrence / range boundary e.g.. For returned cheques this could be 0, which means the first returned cheque fits into this range type: integer FeeHigherTier: description: Higher occurrence / range boundary e.g. For returned cheques this could be 10, which means the first 10 returned cheque fits into this range type: integer FeeDetails: type: array items: description: Fee Details type: object properties: FeeSubType: description: Fee Sub Type code type: string enum: - FutureMultipleTerms - Promotional - Regular FeeDetail: description: Fee Detail type: object properties: FeeType: description: A description of the Fee type type: string enum: - Other - ATMDonation - ATMDeposATMPaidIn - ReportCertBalance - ATMAbroadConVisaCredit - ATMAbroadConVisaDebit - ATMCardnetEnvIn - ATMCashGroupATMCreditCard - ATMCashNonGroupATMCredittcard - ATMCashGroupATMDebitCard - ATMCashNonGroupATMDebitcard - ATMConGroupATM - ATMAbroad - ATMForeignCashDebCard - ATMAbroadGoldVisaDebit - ATMSpainCashCard - ATMSpainDebitCard - ATMSpainConversionDebitCard - ATMSpainConversionCashCard - ATMNonSterlingWithdrawal - ATMAbroadVisaCredit - ATMAbroadVisaDebit - ATMAbroadConVisaGoldDebit - ATMWidthdrawCash - BACSOnLineAncilliary - BACSBatch - BACSOnLineFile - BACSFileItem - 'BACSOnLineSetup ' - BACSItem - BACSItemInterbranch - BACSBulkBatch - BACSOnLineOverlimit - BACSOnLinePayment - BACSRecallItem - BACSOnLineService - BACSBulkInternet - BACSTELDirDebSmartCard - BACSTELDirDebWebInit - BACSTELirDebWebInit - BACSTELDirDebOverlimit - BACSTELDirDebPayment - BACSTELDirDebService - BACSTELDirDebAncilliary - BACSDirectItemProfile - BACSTELAncilliary - BACSTELSmartCard - BACSTELFile - 'BACSTELSetup ' - BACSTELOverlimit - BACSTELPayment - BACSTELService - CHAPSOutBranch - CHAPSCancellation - CHAPSOutOnlineDepositAcc - CHAPSIn - CHAPSOutInterBank - CHAPSInterBank - CHAPSOutPost - CHAPSOutInterBranch - CHAPSOut - CHAPSOutOnline - CHAPSandForeignPay - CHAPSOutManual - CardCardReplacement - DraftsCounter - DraftsBankers - DraftsIntlPayableAbroad - DraftsLostStolen - CardPersonalisedCard - DraftsIntlStoppedCancelled - EuroChqXLess - EuroChqXPlus - FPSOutFutureDated - FPSOutImmediate - FPSOut - FPSOutOwn - FPSInBranch - FPSUKPayUrgent - LegalArticlesReport - LegalSealing - LegalBondAndGuarantee - LegalCourtOrder - LegalCoSearch - LegalDepositAssignment - LegalGuaranteePrep - LegalLifePolicyPrepCo - LegalLifePolicyPrepPersonal - LegalPriorityPariPassu - LegalSubordinationAgreement - DirDebDirectDebitAdmin - DirDebDirectDebitCancel - IntlPayBIBForeignLimit - IntlPayCreditTransCust - IntlPayCreditTransNonCust - IntlPayUrgentPaymentForeign - IntlPayExpressMoneyMover - IntlPayEEAPayUrgent - IntlPayIrishPayUrgent - IntlPayEEAPay - IntlPayForeignIn1CPlus - IntlPayForeignPaymentInUKAcc - IntlPayForeignCharge - IntlPayForeignCancellation - IntlPayForeignStandardEUEuroBIC - IntlPayFXFeeRate - IntlPayForeignInternet - IntlPayForeign - IntlPayForeignInbound - IntlPayFXPaymentOut - IntlPayForeignInSub1C - IntlPayFXRate - IntlPayForeignStandardEUEuroNoBIC - IntlPayFXPaymentOutIR - IntlPayFXFee - IntlPayPurchaseNonSterling - IntlPayPostPaymentForeign - IntlPayPurchaseRateNonSterling - IntlPayPaymentTracing - IntlPayStandardMoneyMover - IntlPayMT101Transaction - IntlPayTransNonSterling - IntlPayTransRateNonSterling - IntlPayForeignUrgentEUEuroBIC - IntlPayForeignUrgentEUEuroNoBIC - IntlPayUrgentPaymentGroup - IntlPayUrgentPaymentUK - IntlPayUSAPayUrgent - IntlPayCurrencyPurchase - IntlPayWorldpayPayment - IntlPayCurrencyWithdraw - InvPayBankDetailsWrong - InvPayForeignBCNR - InvPayForeignRecall - InvGeneralInq - InvOldInstruction - InvPayPaymentRecall - InvPayReturnDebitXVLess - InvPayReturnDebitXVPlus - InvPayStopPayment - InvPayStandingOrdUnpaid - SafeKeepAccess - SafeKeepDeedMedium - SafeKeepingEnvelope - SafeKeepingInspection - SafeKeepingLargeItem - SafeKeepMultipleItems - SafeKeepingParcel - SafeKeepDeedSmall - SafeKeepOneItem - SafeKeepSafeCustody - LoanArrangementFeePC - LoanArrangement - LoanEarlyRepayment - LoanLatePayment - LoanSMEUnsecuredLoan - LoanTieredArrangement - NightSafeNightSafeBankOpen - NightSafeCreditSub5K - NightSafeNightSafe - NightSafeNightSafePaidIn - OverdraftAnnualReview - OverdraftTempOverdraft - OverdraftUnauthorisedBorrowing - POPostOfficeCounterCredit - POPostOfficeCashCredit - POPostOfficeCashOut - POPostOfficeWithdrawal - ChqBookTheftLossAllStopped - ChqIssuedCurrencyAcc - ChqCopy - ChqDraft - ChqIn - ChqDraftSterling - ChqOutIssued - ChqSpecialChqPresentation - ChqCounterCheque - ChqChequeswithStatement - ChqStopped - ChqTrans - ChqDraftFX - ChqForeignCourier - ChqForeignNegTenThou - ChqForeignNegHundred - ChequeForeignBankDivi - ChqForeignNegFiftyThou - ChqPensionCheque - ChequeForeignOtherDivi - ChqForeignNegFiveThou - ChqForeignNegMax - ChqForeignGBPMMDPlus - ChqGiftCheque - ChqCounterLodgement - ChqCashDropLodgement - ChqChequePhotocopy - ChqPostOfficeCredit - ChqPostOfficeChequeCollected - ChqChequeRetrieval - ChqReconcilliationPerTrans - ChqSpecialPresentationCount - ChqSpecialPresentationPTT - ChqUnpaidCharge - ChqUnpaidTransIn - ChqUnpaidTransOut - ChqUnpaidCheque - ReportAuditLetter - ReportFAXAdviceAdditional - ReportTelAdviceAdditional - ReportCreditHistory - ReportCertInterestDuplicate - ReportCertInterest - ReportCreditHistoryAdditionalInYear - ReportForeignStatusEnqElec - ReportForeignStatusEnq - ReportCashBackorInterestAnal - ReportStatementChqDaily - ReportStatementChqFortnightly - ReportStatementChqMonthly - ReportStatementChqWeekly - ReportStatementAndDiviChq - ReportReference - ReportReferralItem - ReportStatementByATM - ReportStatementByBranch - ReportStatementCopyRegular - ReportStatusEnquiry - ReportStatementFrequent - ReportStatementMonthly - ReportStatementCopy1 - ReportStatementToBranch - ReportSMSTextMiniStatementorAlert - ReportStatementFortnightly - ReportSMSTextMiniStatementWoM - ReportSMSTextAlertBalance - ReportSMSTextAlert - ReportTaxCert - ReportWeeklyStatement - ReportTextMessageBanking - SEPACancellation - SEPABranch - SEPACredit - SEPADirectDebit - SEPAIn - SEPAEuro - SEPAOut - SEPAUnpaid - SEPAWinbitsAnnual Service - SEPAWinbitsTransaction - TransBillPaymentBranch - TransBillCollect - TransTelephoneBillPayment - TransBankPayment - TransBillPaymentTelephone - TransCorrespondentBankFee - TransCreditTransferUKDifferent - TransCreditTransferUKSame - TransCredit - TransCreditTransfer - TransBranchCredit - TransDebit - TransDebCardDeb - TransUKDirDeb - TransManualDeb - TransBuyForeignWithGBP - TransGoodValueReq - TransSWIFTOutUKForeign - TransInconpleteInstruction - TransManualEntries - TransManualTrans - TransNonSterling - TransPOSSaleForeign - TransPriPaymentPost - TransPOSSaleUK - TransReturnPayment - TransReconciliationPerTrans - TransStandingOrdAdmin - TransStandingOrd - TransStandingOrdManPay - TransTravellersChqOtherBank - TransTelBusiPriPaymentForeignToUKAcc - TransTeleItem - TransTelBusiPriPaymentToGrpAcc - TransTravellersChqRate - TransTransferExGroup - TransUnauthorisedPaidTrans - TransUrgentPaymentPostal - TransUnpaidTrans - TransTelBusiPriPaymentToNonGrpAcc - TransSWIFTOutNonEEASterling - AutoAutoCredit - AutoAutomatedEntries - AutoAutoCreditPhoneInet - AutoAutomatedTrans - AutoDebitCardCommercial - AutoFPSAutoCredit - VisaConvertAbroadForeign - VisaBureauDeChange - VisaTravellersChqorCurrency - OnlineInternetBillPayment - OnlineBusinessOnlineEuroPayment - OnlineBusinessOnlineUrgentEuroPayment - OnlineBusinessOnlineForeignPayment - OnlineInterbankTransfer - OnlineInterbankPerTransfer - OnlineInterbranchTransfer - OnlineInterbranchPerTransfer - OnlineSubscriptionMonthly - OnlineBankingPayment - OnlineBankingSubscription - OnlinePOSSale - OnlinePersonalCustAncillarys - OnlinePersonalCustService - OnlinePersonalCustOverlimits - OnlineReplacementCardReader - OnlinePersonalCustSetUp - OnlinePersonalCustTransaction - OnlinePaymentinGBPtoUK - OnlineUrgentPayment - OnlinePaymentinUSDtoUS - OnlineBulkDirectDebSterling - ForeignChqSent - ForeignChqSelf - ForeignChqEncashment - ForeignFXInwardsCust - ForeignFXTransfersROI - ForeignFXForwardTrans - ForeignFXTransfersBOI - ForeignExMaintenance - ForeignFXInwardsNonCust - ForeignFXOutwards - ForeignPurchase - ForeignStatusRep - ForeignChqDraft - ForeignChqCLess - ForeignChqMLess - ForeignChqOther - ForeignChqMPlus - ForeignChqCCC - ServiceCAccountFee - ServiceCAccountFeeMonthly - ServiceCAccountFeeQuarterly - ServiceCBalanceHandling - ServiceCFixedTariff - ServiceCBusiDepAccBreakage - ServiceCMonitorDaily - ServiceCManagementFee - ServiceCMinimumMonthlyFee - ServiceCMonitorMonthly - ServiceCMonitorWeekly - ServiceCSecurityFee - ServiceCMT940AccountFirst - ServiceCMT940AccountSubsequent - ServiceCOther - CounterCoinHandling - CounterCashIn - CounterCashInNotUs - CounterCashOut - CounterCashX - CounterForeignCashMax - CounterForeignNoteHandling - CounterForeignCashOut - CounterCashFeeRate - CounterForeignCashOutTx - CounterCounterLodgement - CounterCashDropLodgement - CounterNotesLodged - CounterNotesOut - CounterCashInOwn - CounterPaidTrans - CounterCashFeePercent Other: description: Describe other fee type type: string StartPromotionOrFutureTerms: description: Describes the start date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ StopPromotionOrFutureTerms: description: Describes the end date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ LengthPromotionalInDays: description: Describes the length if only a duration is given instead of a date type: integer DateOfChange: description: Date of the change if it refers to future terms type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ FeeSubDetails: description: Fee Sub Details type: object properties: FeeFrequency: description: Triggering frequency of the fee type: string enum: - AcademicTerm - AccountClosing - AccountOpening - AtTimeOfLoanRepayment - ChargingPeriod - Daily - EveryFiveBusinessDays - Item - Monthly - OnAccountAnniversary - PerHour - PerOccurrence - PerSheet - PerTransactionAmount - PerTransactionPercentage - Quarterly - SixMonthly - StartOfLoan - StatementMonthly - Weekly - Yearly FeeAmount: description: Fee in GBP type: string pattern: ^-?\d{1,10}\.\d{1,2}$ FeeMin: description: Fee in GBP type: string pattern: ^-?\d{1,10}\.\d{1,2}$ FeeMax: description: Fee in GBP type: string pattern: ^-?\d{1,10}\.\d{1,2}$ FeeRate: description: '% Rate' type: string pattern: ^-?\d{1,3}\.\d{1,4}$ Negotiable: description: Indicates that this Fee Rate or Fee Amount is negotiable based on risk or other factor type: boolean RepresentativeRate: description: Representative Rate type: string pattern: ^-?\d{1,3}\.\d{1,4}$ FeeLowerTier: description: Lower occurrence / range boundary e.g. For returned cheques this could be 0, which means the first returned cheque fits into this range type: integer FeeHigherTier: description: Higher occurrence / range boundary e.g. For returned cheques this could be 10, which means the first 10 returned cheque fits into this range type: integer FeesAndChargesNotes: description: Supplementary information for fees and charges type: string required: - FeeFrequency - Negotiable additionalProperties: false required: - FeeType - FeeSubDetails additionalProperties: false required: - FeeSubType - FeeDetail additionalProperties: false minItems: 1 required: - FeeDetails additionalProperties: false required: - ProductState - Fees additionalProperties: false minItems: 1 Benefits: description: Benefit type: object properties: Benefit: description: Describe one or more benefits if they exist type: boolean BenefitGroup: type: array items: description: Benefit Interest Group type: object properties: BenefitSubType: description: Benefit Subtype Code type: string enum: - FutureMultipleTerms - Promotional - Regular BenefitItem: description: Benefit Item type: object properties: StartPromotionOrFutureTerms: description: Describes the start date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ StopPromotionOrFutureTerms: description: Describes the end date type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ LengthPromotionalInDays: description: Describes the length if only a duration is given instead of a date in days type: integer DateOfChange: description: Date of the change if it refers to future terms type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ BenefitDetail: type: array items: description: Benefit detail type: object properties: BenefitType: description: Type that represents the nature of the benefit type: string BenefitName: description: The name of the benefit type: string BenefitValue: description: The value or values permissible for a specific benefit for an individual product representing a product characteristic type: string DefaultToAccounts: description: Is the benefit part of the default account type: boolean BenefitID: description: Unique benefit identifier per organisation type: string CriteriaType: type: array items: description: Criteria that is required in order to be eligible for the Benefit type: string enum: - CashDeposit - Deposit - DirectDebit - InitialDeposit - InternetLogon - MobileLogon - RegularDeposit MinimumCriteria: description: Minimum amount for the criteria type: string pattern: ^-?\d{1,10}\.\d{1,2}$ MaximumCriteria: description: Maximum amount for the criteria type: string pattern: ^-?\d{1,10}\.\d{1,2}$ Counter: description: Counter for the criteria (e.g. number of DD) type: integer BenefitDescription: description: A textual explanation of what the benefit is type: string PromotionStartDate: description: If the benefit is temporal the start date is when the benefit comes into effect type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ PromotionEndDate: description: If the benefit is temporal the end date is when the benefit is no longer applicable type: string pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$ additionalProperties: false additionalProperties: false required: - BenefitItem additionalProperties: false required: - Benefit additionalProperties: false required: - Organisation - ProductName - ProductIdentifier - ProductTypeName - ProductURL - ProductSegment - ProductDescription - TsandCs - CustomerAccessChannels - Currency - MinimumLoanTerm - MaximumLoanTerm - MinimumLoanAmount - MaximumLoanAmount - PaymentHoliday - LoanItem - Eligibility - FeesAndCharges - Benefits additionalProperties: false required: - meta - data additionalProperties: false '400': description: You have sent a request which could not be understood. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: 400 Error object type: object properties: status: type: string enum: - '400' title: type: string enum: - Bad request description: type: string enum: - You have sent a request which could not be understood. required: - status - title - description additionalProperties: false '408': description: Your client has failed to submit a request, and a timeout has occurred. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: 408 Error object type: object properties: status: type: string enum: - '408' title: type: string enum: - Client timeout description: type: string enum: - Your client has failed to submit a request, and a timeout has occurred. required: - status - title - description additionalProperties: false '429': description: You have requested this resource too often. Slow down. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: 429 Error object type: object properties: status: type: string enum: - '429' title: type: string enum: - Too many requests description: type: string enum: - You have requested this resource too often. Slow down. required: - status - title - description additionalProperties: false '500': description: An error occurred on the server. No further information is available. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: 500 Error object type: object properties: status: type: string enum: - '500' title: type: string enum: - Internal server error description: type: string enum: - An error occurred on the server. No further information is available. required: - status - title - description additionalProperties: false '503': description: The service is temporarily unavailable. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: 503 Error object type: object properties: status: type: string enum: - '503' title: type: string enum: - Service temporarily unavailable description: type: string enum: - The service is temporarily unavailable. required: - status - title - description additionalProperties: false default: description: A standard error response. headers: Strict-Transport-Security: type: string description: HTTPS strict transport security header X-Frame-Options: type: string description: Prevent this request from being loaded in any iframes default: DENY X-Content-Type-Options: type: string description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing default: nosniff Status Code: type: integer description: The HTTP status code defining the error default: 400 schema: title: Error object type: object properties: status: description: This corresponds to the HTTP status code type: string title: description: A short title of the type of error type: string description: description: Further details describing the error type: string required: - status - title - description additionalProperties: false head: tags: - SME description: Gets header information on the current set of `Unsercured SME Lending` data parameters: - name: If-Modified-Since type: string description: Used for conditional request, to retrieve data only if modified since a given date in: header required: false - name: If-None-Match type: string description: Used for conditional request, to retrieve data only if the given Etag value does not match in: header required: false responses: default: description: No response schema: title: No response type: object properties: {} components: securitySchemes: TPPOAuth2Security: type: oauth2 description: TPP client credential authorisation flow with the ASPSP flows: clientCredentials: tokenUrl: https://authserver.example/token scopes: accounts: Ability to read Accounts information PSUOAuth2Security: type: oauth2 description: OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU flows: authorizationCode: authorizationUrl: https://authserver.example/authorization tokenUrl: https://authserver.example/token scopes: accounts: Ability to read Accounts information