{ "swagger": "2.0", "info": { "version": "v0", "title": "Open Data API", "description": "Draft Swagger specification for OpenData" }, "host": "api.openbanking.xyz", "basePath": "/open-banking/v0", "schemes": ["https"], "produces": ["application/prs.openbanking.opendata.v0+json"], "tags": [{ "name": "Branch", "description": "Endpoint for getting Branch data" }, { "name": "ATM", "description": "Endpoint for getting ATM data" }, { "name": "PCA", "description": "Endpoint for getting Personal Current Account data" }, { "name": "BCA", "description": "Endpoint for getting Business Current Account data" }, { "name": "SME", "description": "Endpoint for getting Unsecucred SME Loan data" }, { "name": "CCC", "description": "Endpoint for getting Commerical Credit Card data" }], "paths": { "/branches": { "get": { "tags": ["Branch"], "description": "Gets a list of all `Branch` 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 `Branch` 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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "title": "Branch", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations.", "type": "string", "minLength": 1, "maxLength": 350 }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "Brand": { "description": "maxLength 350 text", "type": "string", "minLength": 1, "maxLength": 350 }, "BranchName": { "description": "Name by which a party is known and which is usually used to identify that party", "type": "string", "minLength": 1, "maxLength": 35 }, "BranchIdentification": { "description": "Unique and unambiguous identification of a retail branch of a financial institution", "type": "string", "minLength": 1, "maxLength": 35 }, "BranchType": { "description": "Information on the type of branch", "enum": ["Physical", "Mobile"] }, "Address": { "description": "Postal Address", "type": "object", "properties": { "StrtNm": { "description": "Name of a street or thoroughfare", "type": "string", "minLength": 1, "maxLength": 70 }, "BuildingNameOrNumber": { "description": "Number or Name that identifies the position of a building on a street", "type": "string", "minLength": 1, "maxLength": 350 }, "PstCd": { "description": "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail", "type": "string", "maxLength": 16 }, "OptionalAddressField": { "description": "Additional field; often directions", "type": "string" }, "TwnNm": { "description": "Name of a built-up area, with defined boundaries, and a local government", "type": "string", "minLength": 1, "maxLength": 35 }, "CtrySubDvsn": { "description": "Identifies a subdivision of a country such as state, region, county", "type": "string", "minLength": 1, "maxLength": 35 }, "Ctry": { "description": "Nation with its own government", "type": "string", "pattern": "[A-Z]{2}" } }, "required": ["StrtNm", "PstCd", "Ctry"], "additionalProperties": false }, "BranchDescription": { "description": "Description of the branch", "type": "string", "minLength": 1, "maxLength": 140 }, "BranchPhoto": { "description": "Image related to the branch", "type": "string", "format": "uri" }, "TelephoneNumber": { "description": "Collection of information that identifies a phone number, as defined by telecom services.", "type": "string", "pattern": "\\+[0-9]{1,3}-[0-9()+\\-]{1,30}" }, "AlternatePhone": { "type": "array", "items": { "description": "Alternative Phone Number", "type": "object", "properties": { "AlternativeTelephoneNumber": { "description": "Collection of information that identifies a phone number, as defined by telecom services.", "type": "string", "pattern": "\\+[0-9]{1,3}-[0-9()+\\-]{1,30}" }, "AlternativeTelephoneNumberDescription": { "description": "Description of the telephone number", "type": "string" } }, "additionalProperties": false } }, "FaxNumber": { "description": "Collection of information that identifies a FAX number, as defined by telecom services.", "type": "array", "items": { "description": "Collection of information that identifies a phone number, as defined by telecom services.", "type": "string", "pattern": "\\+[0-9]{1,3}-[0-9()+\\-]{1,30}" } }, "GeographicLocation": { "description": "Geographic Coordinates", "type": "object", "properties": { "Lat": { "description": "Latitude measured in degrees, minutes and seconds, following by 'N' for North and 'S' for South of the Equator (for example 48°51'29'' N for the Eiffel Tower latitude)", "type": "string", "maxLength": 16 }, "Long": { "description": "Angular measurement of the distance of a location on the Earth East or West of the Greenwich Observatory. The longitude is measured in degrees, minutes and seconds, following by 'E' for East and 'W' for West (for example 2°17'4'' E for the Eiffel Tower longitude)", "type": "string", "maxLength": 16 } }, "required": ["Lat", "Long"], "additionalProperties": false }, "DaysOfTheWeek": { "description": "Number of days that the mobile branch is available", "type": "integer" }, "StopName": { "description": "Name of the stop of the mobile branch", "type": "string" }, "ArrivalTime": { "description": "Arrival time of the mobile branch", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" }, "DepartureTime": { "description": "Departure time of the mobile branch", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" }, "ParkingLocation": { "description": "Parking place of the mobile branch", "type": "string" }, "OpeningTimes": { "description": "Branch Opening Times", "type": "array", "items": { "type": "object", "properties": { "OpeningDay": { "description": "Day of the week", "enum": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday", "Public and Bank Holiday"] }, "OpeningTime": { "description": "Time Definition HH:MM:SS", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" }, "ClosingTime": { "description": "Time Definition HH:MM:SS", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" }, "UnavailableStartTime": { "description": "Time Definition HH:MM:SS", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" }, "UnavailableFinishTime": { "description": "Time Definition HH:MM:SS", "type": "string", "pattern": "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$" } }, "required": ["OpeningDay", "OpeningTime", "ClosingTime"] }, "minItems": 1, "additionalProperties": false }, "PlannedBranchClosure": { "type": "array", "items": { "description": "Planned branch closure", "type": "array", "items": { "type": "object", "properties": { "StartDate": { "description": "Date when a branch is due to close temporarily or permanently", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "EndDate": { "description": "Date when a branch is due to re-open following temporary closure", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" } }, "required": ["StartDate", "EndDate"] }, "additionalProperties": false } }, "AccessibilityTypes": { "description": "Information about the accessibility", "type": "array", "uniqueItems": true, "items": { "type": "string", "enum": ["Automatic Doors", "Lower Level Counter", "Induction Loop", "Wheelchair Access", "External Ramp", "Internal Ramp", "Level Access", "Helping Hand Unit"] } }, "BranchSelfServeServiceName": { "type": "array", "items": { "description": "Information about self service branch services", "enum": ["Internal ATM with Audio", "External ATM with Audio", "Internal ATM without Audio", "External ATM without Audio", "Online Banking Point", "Assisted Service Counter", "Quick Deposit", "External Quick Service Point", "Internal Quick Service Point", "Digital Self Service Account Opening", "Business Deposit Terminal", "Account Verification Service", "Statement Printer", "Lodgement Device", "Saturday Counter Service", "Cash and Cheque Deposit Machine (Coin)", "Cash and Cheque Deposit Machine (No Coin)"] }, "uniqueItems": true }, "BranchSelfServeServiceDescription": { "description": "Additional information about self service branch services", "type": "array", "items": { "description": "maxLength 350 text", "type": "string", "minLength": 1, "maxLength": 350 } }, "BranchMediatedServiceName": { "description": "Information about mediated branch facilities", "type": "array", "items": { "description": "Information about mediated branch facilities", "enum": ["Counter Service", "Mortgage Advisor", "Night Safe", "Video Banking", "Premier Counter", "Card Insurance Facilities", "Bureau de Change", "Business Counter", "On Demand Currency"] }, "uniqueItems": true }, "BranchMediatedServiceDescription": { "description": "Additional information about mediated branch facilities, such as waiting areas with seats available for business banking (if waiting)", "type": "array", "items": { "description": "maxLength 350 text", "type": "string", "minLength": 1, "maxLength": 350 } }, "BranchFacilitiesName": { "description": "Information about branch facilities", "type": "array", "items": { "description": "Information about branch facilities", "enum": ["Wifi", "Parking", "Meeting Room(s)", "Eagle Lab", "Amazon Click and Collect Lockers"] }, "uniqueItems": true }, "CustomerSegment": { "description": "Customer segment which the branch is able to service", "type": "array", "items": { "description": "Customer segment which the branch is able to service", "enum": ["Personal", "Business", "SME", "Wealth", "Corporate", "Premier Branch"] }, "uniqueItems": true }, "BranchFacilitiesDescription": { "description": "Additional information about branch facilities, such as specific lights", "type": "array", "items": { "description": "maxLength 350 text", "type": "string", "minLength": 1, "maxLength": 350 } }, "ATMAtBranch": { "description": "Indicated whether an ATM is at the branch", "type": "boolean" } }, "required": ["ParentGroupName", "ParentGroupID", "Brand", "BranchIdentification", "BranchType", "Address", "TelephoneNumber", "GeographicLocation", "OpeningTimes", "ATMAtBranch"], "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": ["Branch"], "description": "Gets header information on the current set of `Branch` 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": {} } } } } }, "/atms": { "get": { "tags": ["ATM"], "description": "Gets a list of all `ATM` 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 `ATM` 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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "title": "ATM", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations. ATM Operator Organisation.", "type": "string", "minLength": 1, "maxLength": 350 }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "Brand": { "description": "Brand Organisation", "type": "object", "properties": { "BrandName": { "description": "Name by which an organisation is known that is printed on top of the ATM", "type": "string", "minLength": 1, "maxLength": 350 }, "BrandID": { "description": "Unique and unambiguous way to identify the organisation that is shown on top of the ATM", "type": "string" } }, "required": ["BrandName"], "additionalProperties": false }, "BranchIdentification": { "description": "Unique and unambiguous identification of a retail branch of a financial institution", "type": "string", "minLength": 1, "maxLength": 35 }, "ATMID": { "description": "ATM terminal device identification for the acquirer and the issuer", "type": "string", "minLength": 1, "maxLength": 35 }, "LocationCategory": { "description": "Indicates the environment of the ATM", "enum": ["Airport", "Bank Office", "Bank Specialised Outlet", "Branch", "Branch Customer Area", "Branch Lobby", "Branch Wall", "Bureau de Change", "Coach Station", "Convenience Store", "Exhibition Centre", "Factory", "Office", "Financial Institution", "Hospital", "Hotel", "House of Commons", "House of Lords", "Leisure Centre", "Ministry of Defence", "Motorway Services", "Petrol Station", "Pleasure Park", "Public House", "Railway Station", "Railway Station (Underground)", "Remote Unit", "Retailer", "Department Store", "Retailer Outlet", "Seaport", "Shopping Centre", "Supermarket", "University", "College", "Bank External", "Restricted Access", "Commercial Space"] }, "SiteID": { "description": "Site identifying code, where ATM is located", "type": "string", "minLength": 1, "maxLength": 35 }, "SiteName": { "description": "Site identifying name, where ATM is located", "type": "string", "minLength": 1, "maxLength": 35 }, "Address": { "description": "Postal Address", "type": "object", "properties": { "StrtNm": { "description": "Name of a street or thoroughfare", "type": "string", "minLength": 1, "maxLength": 70 }, "BuildingNameOrNumber": { "description": "Number or Name that identifies the position of a building on a street", "type": "string", "minLength": 1, "maxLength": 350 }, "PstCd": { "description": "Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail", "type": "string", "maxLength": 16 }, "OptionalAddressField": { "description": "Additional field; often directions", "type": "string" }, "TwnNm": { "description": "Name of a built-up area, with defined boundaries, and a local government", "type": "string", "minLength": 1, "maxLength": 35 }, "CtrySubDvsn": { "description": "Identifies a subdivision of a country such as state, region, county", "type": "string", "minLength": 1, "maxLength": 35 }, "Ctry": { "description": "Nation with its own government", "type": "string", "pattern": "[A-Z]{2}" } }, "required": ["StrtNm", "PstCd", "Ctry"], "additionalProperties": false }, "GeographicLocation": { "description": "Geographic Coordinates", "type": "object", "properties": { "Lat": { "description": "Latitude measured in degrees, minutes and seconds, following by 'N' for North and 'S' for South of the Equator (for example 48°51'29'' N for the Eiffel Tower latitude)", "type": "string", "maxLength": 16 }, "Long": { "description": "Angular measurement of the distance of a location on the Earth East or West of the Greenwich Observatory. The longitude is measured in degrees, minutes and seconds, following by 'E' for East and 'W' for West (for example 2°17'4'' E for the Eiffel Tower longitude)", "type": "string", "maxLength": 16 } }, "required": ["Lat", "Long"], "additionalProperties": false }, "AccessibilityTypes": { "description": "Information about the accessibility", "type": "array", "uniqueItems": true, "items": { "type": "string", "enum": ["Automatic Doors", "Lower Level Counter", "Induction Loop", "Wheelchair Access", "External Ramp", "Internal Ramp", "Level Access", "Helping Hand Unit"] } }, "SupportedLanguages": { "description": "Languages that the ATM supports", "type": "array", "items": { "description": "must be ISO 693-2 codes", "type": "string" }, "minItems": 1 }, "ATMServices": { "description": "Information about ATM services", "type": "array", "uniqueItems": true, "minItems": 1, "items": { "description": "Information about ATM services", "type": "array", "uniqueItems": true, "items": { "type": "string", "enum": ["Cash Withdrawal", "Cash Deposits", "Mobile Banking Registration", "Pin Change", "Mobile Phone Top Up", "PingIT Registration", "Bill Payments", "Mini Statements", "Balance", "Fast Cash", "PIN Activation", "Charity Donation", "Cheque Book Request"] } } }, "AdditionalATMServices": { "type": "array", "items": { "description": "maxLength 350 text", "type": "string", "minLength": 1, "maxLength": 350 } }, "Currency": { "description": "Defines currency type available for dispense", "type": "array", "uniqueItems": true, "minItems": 1, "items": { "description": "Active or Historic Currency Code", "type": "string", "pattern": "[A-Z]{3}" } }, "MinimumValueDispensed": { "description": "Minimum currency denominations usually available", "enum": ["£ 5", "£ 10", "£ 20", "£ 50", "£ 100"] } }, "required": ["ParentGroupName", "ParentGroupID", "Brand", "ATMID", "Address", "GeographicLocation", "SupportedLanguages", "ATMServices", "Currency"], "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": ["ATM"], "description": "Gets header information on the current set of `ATM` 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": {} } } } } }, "/personal-current-accounts": { "get": { "tags": ["PCA"], "description": "Gets a list of all `Personal Current Account` 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 `Personal Current Account` 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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "description": "Personal Current Account", "type": "object", "properties": { "Organisation": { "description": "Organisation", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations", "type": "string" }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "BrandName": { "description": "Name by which an organisation is known that is printed on top of the ATM", "type": "string" }, "BrandID": { "description": "Unique and unambiguous way to identify the organisation that is shown on top of the ATM", "type": "string" } }, "required": ["ParentGroupName", "ParentGroupID", "BrandName", "BrandID"], "additionalProperties": false }, "ProductType": { "description": "Descriptive code for the product category", "enum": ["PCA"] }, "ProductName": { "description": "The name of the product used for marketing purposes from a customer perspective. i.e. what the customer would recognise", "type": "string" }, "ProductSegment": { "type": "array", "items": { "description": "Marketing or industry segment that the product is designed for", "enum": ["Student", "Graduate", "Child", "Package", "Basic", "General", "Business", "Youth"] }, "minItems": 1 }, "InternationalPaymentsSupported": { "description": "Indicates that the account supports international payments", "type": "boolean" }, "ProductIdentifier": { "description": "Identifier within the parent organisation for the product. Must be unique in the organisation", "type": "string" }, "CardWithdrawalLimit": { "description": "The daily Limit that a customer can get via the ATM. This describes the default limit rather than the maximum", "type": "number" }, "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 current T&Cs", "type": "array", "items": { "type": "string" }, "minItems": 1 }, "AccessChannels": { "description": "Ways to interact with the bank when managing account", "type": "array", "items": { "description": "Channel", "enum": ["Branch", "Post", "Internet", "Phone", "Smartphone", "Text"] }, "minItems": 1 }, "CardType": { "description": "Card Type available", "type": "array", "items": { "description": "Indicates the card scheme", "enum": ["Visa", "Mastercard", "Cashcard"] }, "minItems": 1 }, "Contactless": { "description": "Does the card issued have contactless facility", "type": "boolean" }, "MobileWallet": { "description": "Mobile wallet supported by this product. A mobile wallet being any electronic device that allows an individual to make electronic commerce transactions", "enum": ["Apple Pay", "Android Pay", "Samsung Pay", "Vodafone Wallet", "Issuer Mobile App"] }, "CardNotes": { "description": "Optional additional notes to supplement the card details", "type": "string" }, "ChequeBookAvailable": { "description": "Can a chequebook be issued", "type": "boolean" }, "CreditScoringPartOfAccountOpeningForGettingAnAccount": { "description": "Indicates whether a credit check performed on an inquiry to open an account is submitted", "type": "boolean" }, "CreditScoringPartOfAccountOpeningIsAHardOrASoftCreditScore": { "description": "Describes the type of credit scoring", "type": "array", "items": { "description": "Indicates the type of scoring", "enum": ["Hard", "Soft"] } }, "CreditScoringPartOfAccountOpeningText": { "description": "Details on the specific credit scoring", "type": "string" }, "CreditScoringPartOfAccountOpeningForIDVerification": { "description": "Indicates whether a credit check is used to check the address of a potential new account holder", "type": "boolean" }, "CreditScoringPartOfAccountOpeningIDVerificationIsAHardOrASoftCreditScore": { "type": "array", "items": { "description": "Indicates the type of scoring", "enum": ["Hard", "Soft"] } }, "CreditScoringPartOfAccountOpeningIDVerificationText": { "description": "Details on the specific credit scoring", "type": "array", "items": { "type": "string" } }, "MonthlyMaximumCharge": { "description": "The maximum Relevant Charges that could accrue in relation to that PCA in any month as a result of exceeding or attempting to exceed a Pre-agreed credit limit on the PCA. i.e. it does not include any charges that are applied through the normal operation of the account such as overdraft interest charges whilst within an agreed limit", "type": "number" }, "ProductURL": { "description": "URL provided by the organisation which redirects to the product (on live products only). There might be more than one product at a given URL", "type": "array", "items": { "type": "string", "format": "uri" }, "minItems": 1 }, "Ccy": { "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 }, "OverdraftOffered": { "description": "Indicates whether an overdraft offered for this account", "type": "boolean" }, "Feature": { "description": "Account Features", "type": "object", "properties": { "ExistingFeature": { "description": "Indicates whether the account has any feature", "type": "boolean" }, "FeatureDetails": { "description": "Feature details", "type": "array", "items": { "description": "Feature Details", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "FeatureType": { "description": "Type that represents the nature of the feature", "type": "string" }, "FeatureName": { "description": "The name of the feature", "type": "string" }, "FeatureDescription": { "description": "A textual explanation of what the feature", "type": "string" }, "FeatureValue": { "description": "The value or values permissible for a specific feature for an individual product representing a product characteristic", "type": "string" }, "CriteriaType": { "description": "Criteria that is required in order to be eligible for the feature", "type": "string" } } } } }, "required": ["ExistingFeature"] }, "CAPricing": { "type": "array", "items": { "description": "Card Price", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "CAPricingItem": { "description": "Card Pricing", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "ExchangeRateAdjustment": { "description": "The margin added, by certain card issuers, to the scheme rate in order to arrive at the exchange rate qouted as the reference exchange rate to the cardholder", "type": "number" } }, "additionalProperties": false } }, "required": ["ProductSubType", "CAPricingItem"], "additionalProperties": false }, "minItems": 1 }, "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", "enum": ["Single Income", "Joint Income", "Single or Joint Income"] }, "MinimumIncomeTurnoverAmount": { "description": "Minimum income / Turnover required to hold the product", "type": "number" }, "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", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "AnnualBusinessTurnover": { "description": "Annual Business Turnover", "type": "integer" }, "AnnualBusinessTurnoverCurrency": { "description": "Annual Business Turnover Currency", "type": "string", "pattern": "[A-Z]{3}" }, "ResidencyResticted": { "description": "Indicates a customer's residency forms part of the eligibility criteria", "type": "boolean" }, "ResidencyRestictedRegion": { "description": "Indicates a customer must be current resident of a geographic area/country", "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": "number" }, "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": "number" }, "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": "number" }, "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", "enum": ["Business Only", "Students Only", "NTB Business", "Credit Scoring", "Sole UK account", "Any business customer", "ID and Verification", "Arrears on Loan, Credit Card, mortgage", "Over Overdraft for more than 30 days", "Sole UK Account or Bankrupt", "UCAS Fulltime for 2 years", "Date Limited (2 months within course start date)", "Email Address", "Sole Student Account"] }, "EligibilityNotes": { "description": "Optional additional notes to supplement the eligibility conditions. Only used for very specific conditions", "type": "string" }, "PreviousBancruptcy": { "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", "enum": ["Switchers Only", "New Customers Only"] }, "uniqueItems": true } }, "required": ["AgeRestricted", "OtherFinancialHoldingRequired", "Description", "IncomeTurnoverRelated", "ResidencyResticted", "ThirdSectorOrganisations", "PreviousBancruptcy"], "additionalProperties": false }, "CreditInterest": { "description": "Credit Interest", "type": "object", "properties": { "CreditCharged": { "description": "Is credit paid to the account. The answer will be the condition of all other fields to be filled", "type": "boolean" }, "CreditInterestGroup": { "description": "Credit Interest Group", "type": "object", "properties": { "InterestSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "CreditInterestItem": { "description": "Credit Interest item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "StartDate": { "description": "If interest is charged on a specific date range as start date (often used for promotion)", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "EndDate": { "description": "If interest is charged on a specific date range as end date (often used for promotion)", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "CalculationFrequency": { "description": "How often is interest applied to account", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "PaymentMethod": { "description": "Credit Interest Payment Method", "enum": ["Pay away", "Compound"] }, "InterestRateType": { "description": "Credit Interest Payment Rate Type", "enum": ["Fixed", "Variable"] }, "FixedInterestLength": { "description": "Fixed interest length in days", "type": "integer" }, "CalculationMethod": { "description": "Method for interest calculation", "enum": ["Branded", "Tiered"] }, "InterestTiers": { "type": "array", "items": { "description": "Credit Interest Tiers", "type": "object", "properties": { "InterestTier": { "description": "Identifier for the tier", "type": "string" }, "TierValueMinimum": { "description": "Lower value of interest tier", "type": "number" }, "DailyChargeForMinimum": { "description": "Special charge on tiered overdraft", "type": "number" }, "TierValueMaximum": { "description": "Max Value of interst tier", "type": "number" }, "DailyChargeForMaximum": { "description": "Special charge on tiered overdraft", "type": "number" }, "Rate": { "description": "Rate being paid by the bank (gross)", "type": "number" }, "RateComparisonType": { "description": "Rate Comparison Type", "enum": ["APR", "AER", "Gross"] }, "AprAERRate": { "description": "AER or APR Rate for comparison", "type": "number" } }, "additionalProperties": false } }, "InterestNotes": { "description": "Additional notes to supplement the interest details", "type": "string" } }, "additionalProperties": false } }, "required": ["ProductSubType", "CreditInterestItem"], "additionalProperties": false } }, "required": ["CreditCharged", "CreditInterestGroup"], "additionalProperties": false }, "Overdraft": { "type": "array", "items": { "description": "Overdraft", "type": "object", "properties": { "InterestProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "OverdraftPricing": { "description": "Overdraft Pricing", "type": "object", "properties": { "ApplicableTo": { "description": "Personal Interest Tiers", "type": "object", "properties": { "InterestTierSME": { "description": "Identifier for tier only where it has been supplied under Part 8 (article 32 or the CMA order), value reflects upper tier value", "enum": ["£ 5,000", "£ 10,000", "£ 15,000", "£ 20,000", "£ 25,000"] }, "InterestTierPersonal": { "description": "Identifier for the tier", "type": "string" } }, "required": ["InterestTierSME", "InterestTierPersonal"], "additionalProperties": false }, "Tiers": { "type": "array", "items": { "description": "Tiers", "type": "object", "properties": { "TierType": { "description": "Tier Type", "type": "object", "properties": { "ArrangedOverdraftInterestTier": { "description": "Arranged overdraft interest tier", "type": "integer" }, "UnarrangedOverdraftInterestTier": { "description": "Unarranged overdraft interest tier", "type": "integer" } }, "additionalProperties": false }, "TierValueMinimum": { "description": "Lower value of interest tier", "type": "number" }, "TierValueMaximum": { "description": "Max Value of interest tier", "type": "number" } }, "additionalProperties": false }, "minItems": 1 }, "InterestRateGrossPA": { "description": "Interest rate applied to tier", "type": "number" }, "InterestNotes": { "description": "Optional additional notes to supplement the interest details", "type": "string" }, "TotalOverdraftChargeAmount": { "description": "All charges that a customer could incur as a result of exceeding or attempting to exceed a Pre-agreed credit limit", "type": "number" }, "MinUnarrangedOverdraftAmount": { "description": "Minimum Unarranged Overdraft Amount if applicable", "type": "number" }, "DailyOverdraftFeeCap": { "description": "Maximum daily overdraft charge", "type": "number" }, "MonthlyOverdraftFeeCap": { "description": "Maximum monthly overdraft charge", "type": "number" }, "InterestRate": { "description": "interest rate applied to tier", "type": "number" }, "InterestRateCalculationFrequency": { "description": "Frequency at which interest is calculated and accrued", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "InterestApplicationFrequency": { "description": "When the interest is applied", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "IndicativeOrActual": { "type": "boolean" }, "DailyCharge": { "description": "Maximum daily overdraft charge", "type": "number" }, "MonthlyCharge": { "description": "Maximum monthly overdraft charge", "type": "number" }, "ItemCharge": { "description": "Arranged overdraft item charge", "type": "number" }, "OtherCharge": { "description": "Other flat charge levied when overdrawn (Arranged)", "type": "number" }, "OverdraftNotes": { "description": "Supplementary notes for overdrafts", "type": "string" }, "RatesAreNegotionable": { "description": "Value that expresses if the rates are negotiable", "enum": ["yes", "no", "Condition based"] }, "IndicativeRate": { "description": "Indicative Rate that the client will get", "type": "number" }, "BufferAmount": { "description": "Amount on overdraft that is prearranged", "type": "number" } }, "required": ["ApplicableTo", "Tiers"], "additionalProperties": false }, "OverdraftType": { "description": "Opposite of repayable on demand", "enum": ["On Demand", "Committed"] }, "Term": { "description": "The duration of the overdraft, if it is non permanent", "type": "string" }, "SetUpFeesAmount": { "description": "Fees to set up the overdraft", "type": "number" }, "SetUpFeesRate": { "description": "Rate to set up the overdraft", "type": "number" }, "ReviewFee": { "description": "Fee to review overdraft limit", "type": "number" }, "MinimumFee": { "description": "Minimum overdraft fee", "type": "number" }, "AnnualRenewalFee": { "description": "Fee payable per term for overdraft", "type": "string" } }, "additionalProperties": false } }, "FeesAndCharges": { "type": "array", "items": { "description": "Fees And Charges", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "Fees": { "description": "Fees", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": "number" }, "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": "number" }, "FeeDetails": { "type": "array", "items": { "description": "Fee Details", "type": "object", "properties": { "FeeSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "FeeDetail": { "description": "Fee Detail", "type": "object", "properties": { "FeeType": { "description": "A description of the Fee type", "enum": ["Account Fee", "Incoming CHAPS Fee", "Outgoing CHAPS Fee", "Foreign Currency", "Foreign Currency Withdrawal Fee (% of Tx - Min £2 - Max £5)", "Non Sterling Transaction Fee (Cash Withdrawal)", "SEPA Fee", "Stopped Cheque Fee", "Copy of Cheque Fee", "Cheque Transaction Fee", "Manual Debit Fee", "Counter Draft", "Unpaid Transaction Fee", "Special Cheque Presentation", "Court Order Fee", "Bankers Draft Fee", "Statement Copy Fee", "Bankers Reference Fee", "Personalised Card Fee", "Sterling Travellers Cheque (% of Tx - Min £2 - Max £5)", "International Payments Charge", "Other", "Cash payment In", "Cash payment Out", "Daily Monitoring", "Weekly Monitoring", "Monthly Monitoring", "Status Enquiry", "Audit Letter", "Credits paid in via night Safe", "Credit paid In via Depos ATM", "Telepay or Teledebit Item", "Balance Handlng Fee", "Late payment", "Loan arrangement", "Early Repayment charge", "Over credit limit fee", "Return payment fee", "Payment Scheme Exchange Rate", "Payment Scheme Exchange Fee", "Payment Scheme Exchange Fee Rate", "Non-Sterling Transaction fee", "Non-Sterling Transaction fee rate", "Non-Sterling Purchase Fee", "Non-Sterling Purchase Fee rate", "Non-Sterling Cash Fee", "Non-Sterling Cash Fee Rate", "Foreign Purchase Fee", "Foreign Purchase Fee Rate", "Foreign Cash Fee", "Foreign Cash Fee Rate", "Early Repayment Charges", "Tiered arrangement fees", "Monthly Account Maintenance Fee", "UK Sterling Direct Debits", "Standing order", "Business Debit card transaction (excluding ATM)", "ATM withdrawals (from a non-group ATM)", "ATM withdrawals (from a group ATM)", "Internet Bulk Payment - batch", "Automated credit", "Automated credit - Telephone and Internet Banking", "Automated credit –Faster Payments inbound", "Internet Bulk Payment –per item", "Faster Payments outbound", "Transfer to an account outside of the group", "Cheque paid in (or Postal Order)", "Cheques Out", "Cash paid in", "Cash paid out at own counter", "Other debit", "Other credit", "Credit paid in at another bank", "Cash exchanged", "Bacs –batch file submitted", "Bacs –debit or credit item", "Cardnet envelope paid in", "Credit paid in via Night Safe - up to £5K", "International payment Internet banking", "Express International Moneymover Branch", "Standard International Moneymover Branch", "Non-urgent Euro (SEPA)1 Branch", "International draft payable abroad Branch", "Electronic payments received from abroad Up to £100", "Electronic payments received from abroad over £100", "Foreign cheque/draft", "Cheques/drafts (including dividend warrants) payable in foreign currency or Sterling drawn abroad", "Cheques/drafts (including dividend warrants) payable in foreign currency drawn in the UK", "Unpaid charge (if the cheque/draft is not honoured by the paying bank)", "Status enquiries abroad", "Status enquiries abroad (if sent electronically) additional", "After an international payment has been sent abroad - Beneficiary claiming non-receipt of funds (BCNR) ", "After an international payment has been sent abroad - Recalling a payment", "First legal mortgage over a property, such as business premises", "Second or subsequent legal mortgage over a property, such as a house or business premises", "Unpaid Item", "SMS Text alerts", "SME unsecured loan fee", "World Currency Withdrawal Fee", "World Currency Purchase Fee", "Europe Currently Withdrawal Fee", "Europe Purchase Fee", "Minimum Foreign Cash Withdrawal Fee", "Maximum Foreign Cash Withdrawal Fee", "Security Fee", "Early Redemption Charge", "Paid Referral Fee", "Unpaid Referral Fee"] }, "Other": { "description": "Describe other fee type", "type": "string" }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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", "enum": ["Monthly", "Per Transaction - Amount", "Per Transaction - Percentage", "Per Occurrence", "Daily", "5 consecutive business days", "Weekly", "Statement Monthly", "Quarterly", "6 monthly", "Yearly", "On account anniversary", "Charging period", "Item", "Account opening", "Account Closing", "Academic Term", "One time payment at the start of the loan", "At the time of repayment", "per hour", "per sheet"] }, "FeeAmount": { "description": "Fee in GBP", "type": "number" }, "FeeRate": { "description": "% Rate", "type": "number" }, "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": "number" }, "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": "number" }, "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": "number" }, "FeesAndChargesNotes": { "description": "Supplementary information for fees and charges", "type": "string" } }, "required": ["FeeFrequency", "FeeAmount", "Negotiable"], "additionalProperties": false } }, "required": ["FeeType", "FeeSubDetails"], "additionalProperties": false } }, "required": ["FeeSubType", "FeeDetail"], "additionalProperties": false }, "minItems": 1 } }, "required": ["FeeDetails"], "additionalProperties": false } }, "required": ["ProductSubType", "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": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "BenefitItem": { "description": "Benefit Item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": { "description": "Criteria that is required in order to be eligible for the Benefit", "enum": ["Deposit", "Direct Debit", "Other"] }, "MinimumCriteria": { "description": "Minimum amount for the criteria", "type": "number" }, "MaximumCriteria": { "description": "Maximum amount for the criteria", "type": "number" }, "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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": ["ProductSubType", "BenefitItem"], "additionalProperties": false } } }, "required": ["Benefit"], "additionalProperties": false } }, "required": ["Organisation", "ProductType", "ProductSegment", "InternationalPaymentsSupported", "ProductIdentifier", "CardWithdrawalLimit", "ProductDescription", "TsandCs", "AccessChannels", "CardType", "Contactless", "ChequeBookAvailable", "CreditScoringPartOfAccountOpeningForGettingAnAccount", "ProductURL", "Ccy", "OverdraftOffered", "Feature", "CAPricing", "Eligibility", "CreditInterest", "FeesAndCharges", "Benefits"] } } }, "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": ["PCA"], "description": "Gets header information on the current set of `Personal Current Account` 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": {} } } } } }, "/business-current-accounts": { "get": { "tags": ["BCA"], "description": "Gets a list of all `Branch Current Account` 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 `Branch Current Account` 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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "title": "Business current account", "description": "Business current account", "type": "object", "properties": { "Organisation": { "description": "Organisation", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations", "type": "string" }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "BrandName": { "description": "Name by which an organisation is known that is printed on top of the ATM", "type": "string" }, "BrandID": { "description": "Unique and unambiguous way to identify the organisation that is shown on top of the ATM", "type": "string" } }, "required": ["ParentGroupName", "ParentGroupID", "BrandName", "BrandID"], "additionalProperties": false }, "ProductType": { "description": "Descriptive code for the product category", "enum": ["BCA"] }, "ProductName": { "description": "The name of the product used for marketing purposes from a customer perspective. i.e. what the customer would recognise", "type": "string" }, "ProductSegment": { "type": "array", "items": { "description": "Marketing or industry segment that the product is designed for", "enum": ["Student", "Graduate", "Child", "Package", "Basic", "General", "Business", "Youth"] }, "minItems": 1 }, "InternationalPaymentsSupported": { "description": "Indicates that the account supports international payments", "type": "boolean" }, "ProductIdentifier": { "description": "Identifier within the parent organisation for the product. Must be unique in the organisation", "type": "string" }, "CardWithdrawalLimit": { "description": "The daily Limit that a customer can get via the ATM. This describes the default limit rather than the maximum", "type": "number" }, "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 current T&Cs", "type": "array", "items": { "type": "string" }, "minItems": 1 }, "AccessChannels": { "description": "Ways to interact with the bank when managing account", "type": "array", "items": { "description": "Channel", "enum": ["Branch", "Post", "Internet", "Phone", "Smartphone", "Text"] }, "minItems": 1 }, "CardType": { "description": "Card Type available", "type": "array", "items": { "description": "Indicates the card scheme", "enum": ["Visa", "Mastercard", "Cashcard"] }, "minItems": 1 }, "Contactless": { "description": "Does the card issued have contactless facility", "type": "boolean" }, "MobileWallet": { "description": "Mobile wallet supported by this product. A mobile wallet being any electronic device that allows an individual to make electronic commerce transactions", "enum": ["Apple Pay", "Android Pay", "Samsung Pay", "Vodafone Wallet", "Issuer Mobile App"] }, "CardNotes": { "description": "Optional additional notes to supplement the card details", "type": "string" }, "ChequeBookAvailable": { "description": "Can a chequebook be issued", "type": "boolean" }, "CreditScoringPartOfAccountOpeningForGettingAnAccount": { "description": "Indicates whether a credit check performed on an inquiry to open an account is submitted", "type": "boolean" }, "CreditScoringPartOfAccountOpeningIsAHardOrASoftCreditScore": { "description": "Describes the type of credit scoring", "type": "array", "items": { "description": "Indicates the type of scoring", "enum": ["Hard", "Soft"] } }, "CreditScoringPartOfAccountOpeningText": { "description": "Details on the specific credit scoring", "type": "string" }, "CreditScoringPartOfAccountOpeningForIDVerification": { "description": "Indicates whether a credit check is used to check the address of a potential new account holder", "type": "boolean" }, "CreditScoringPartOfAccountOpeningIDVerificationIsAHardOrASoftCreditScore": { "type": "array", "items": { "description": "Indicates the type of scoring", "enum": ["Hard", "Soft"] } }, "CreditScoringPartOfAccountOpeningIDVerificationText": { "description": "Details on the specific credit scoring", "type": "array", "items": { "type": "string" } }, "MonthlyMaximumCharge": { "description": "The maximum Relevant Charges that could accrue in relation to that PCA in any month as a result of exceeding or attempting to exceed a Pre-agreed credit limit on the PCA. i.e. it does not include any charges that are applied through the normal operation of the account such as overdraft interest charges whilst within an agreed limit", "type": "number" }, "ProductURL": { "description": "URL provided by the organisation which redirects to the product (on live products only). There might be more than one product at a given URL", "type": "array", "items": { "type": "string", "format": "uri" }, "minItems": 1 }, "Ccy": { "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 }, "OverdraftOffered": { "description": "Indicates whether an overdraft offered for this account", "type": "boolean" }, "Feature": { "description": "Account Features", "type": "object", "properties": { "ExistingFeature": { "description": "Indicates whether the account has any feature", "type": "boolean" }, "FeatureDetails": { "description": "Feature details", "type": "array", "items": { "description": "Feature Details", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "FeatureType": { "description": "Type that represents the nature of the feature", "type": "string" }, "FeatureName": { "description": "The name of the feature", "type": "string" }, "FeatureDescription": { "description": "A textual explanation of what the feature", "type": "string" }, "FeatureValue": { "description": "The value or values permissible for a specific feature for an individual product representing a product characteristic", "type": "string" }, "CriteriaType": { "description": "Criteria that is required in order to be eligible for the feature", "type": "string" } } } } }, "required": ["ExistingFeature"] }, "CAPricing": { "type": "array", "items": { "description": "Card Price", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "CAPricingItem": { "description": "Card Pricing", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "ExchangeRateAdjustment": { "description": "The margin added, by certain card issuers, to the scheme rate in order to arrive at the exchange rate qouted as the reference exchange rate to the cardholder", "type": "number" } }, "additionalProperties": false } }, "required": ["ProductSubType", "CAPricingItem"], "additionalProperties": false }, "minItems": 1 }, "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", "enum": ["Single Income", "Joint Income", "Single or Joint Income"] }, "MinimumIncomeTurnoverAmount": { "description": "Minimum income / Turnover required to hold the product", "type": "number" }, "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", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "AnnualBusinessTurnover": { "description": "Annual Business Turnover", "type": "integer" }, "AnnualBusinessTurnoverCurrency": { "description": "Annual Business Turnover Currency", "type": "string", "pattern": "[A-Z]{3}" }, "ResidencyResticted": { "description": "Indicates a customer's residency forms part of the eligibility criteria", "type": "boolean" }, "ResidencyRestictedRegion": { "description": "Indicates a customer must be current resident of a geographic area/country", "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": "number" }, "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": "number" }, "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": "number" }, "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", "enum": ["Business Only", "Students Only", "NTB Business", "Credit Scoring", "Sole UK account", "Any business customer", "ID and Verification", "Arrears on Loan, Credit Card, mortgage", "Over Overdraft for more than 30 days", "Sole UK Account or Bankrupt", "UCAS Fulltime for 2 years", "Date Limited (2 months within course start date)", "Email Address", "Sole Student Account"] }, "EligibilityNotes": { "description": "Optional additional notes to supplement the eligibility conditions. Only used for very specific conditions", "type": "string" }, "PreviousBancruptcy": { "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", "enum": ["Switchers Only", "New Customers Only"] }, "uniqueItems": true } }, "required": ["AgeRestricted", "OtherFinancialHoldingRequired", "Description", "IncomeTurnoverRelated", "ResidencyResticted", "ThirdSectorOrganisations", "PreviousBancruptcy"], "additionalProperties": false }, "CreditInterest": { "description": "Credit Interest", "type": "object", "properties": { "CreditCharged": { "description": "Is credit paid to the account. The answer will be the condition of all other fields to be filled", "type": "boolean" }, "CreditInterestGroup": { "description": "Credit Interest Group", "type": "object", "properties": { "InterestSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "CreditInterestItem": { "description": "Credit Interest item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "StartDate": { "description": "If interest is charged on a specific date range as start date (often used for promotion)", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "EndDate": { "description": "If interest is charged on a specific date range as end date (often used for promotion)", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "CalculationFrequency": { "description": "How often is interest applied to account", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "PaymentMethod": { "description": "Credit Interest Payment Method", "enum": ["Pay away", "Compound"] }, "InterestRateType": { "description": "Credit Interest Payment Rate Type", "enum": ["Fixed", "Variable"] }, "FixedInterestLength": { "description": "Fixed interest length in days", "type": "integer" }, "CalculationMethod": { "description": "Method for interest calculation", "enum": ["Branded", "Tiered"] }, "InterestTiers": { "type": "array", "items": { "description": "Credit Interest Tiers", "type": "object", "properties": { "InterestTier": { "description": "Identifier for the tier", "type": "string" }, "TierValueMinimum": { "description": "Lower value of interest tier", "type": "number" }, "DailyChargeForMinimum": { "description": "Special charge on tiered overdraft", "type": "number" }, "TierValueMaximum": { "description": "Max Value of interst tier", "type": "number" }, "DailyChargeForMaximum": { "description": "Special charge on tiered overdraft", "type": "number" }, "Rate": { "description": "Rate being paid by the bank (gross)", "type": "number" }, "RateComparisonType": { "description": "Rate Comparison Type", "enum": ["APR", "AER", "Gross"] }, "AprAERRate": { "description": "AER or APR Rate for comparison", "type": "number" } }, "additionalProperties": false } }, "InterestNotes": { "description": "Additional notes to supplement the interest details", "type": "string" } }, "additionalProperties": false } }, "required": ["ProductSubType", "CreditInterestItem"], "additionalProperties": false } }, "required": ["CreditCharged", "CreditInterestGroup"], "additionalProperties": false }, "Overdraft": { "type": "array", "items": { "description": "Overdraft", "type": "object", "properties": { "InterestProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "OverdraftPricing": { "description": "Overdraft Pricing", "type": "object", "properties": { "ApplicableTo": { "description": "Personal Interest Tiers", "type": "object", "properties": { "InterestTierSME": { "description": "Identifier for tier only where it has been supplied under Part 8 (article 32 or the CMA order), value reflects upper tier value", "enum": ["£ 5,000", "£ 10,000", "£ 15,000", "£ 20,000", "£ 25,000"] }, "InterestTierPersonal": { "description": "Identifier for the tier", "type": "string" } }, "required": ["InterestTierSME", "InterestTierPersonal"], "additionalProperties": false }, "Tiers": { "type": "array", "items": { "description": "Tiers", "type": "object", "properties": { "TierType": { "description": "Tier Type", "type": "object", "properties": { "ArrangedOverdraftInterestTier": { "description": "Arranged overdraft interest tier", "type": "integer" }, "UnarrangedOverdraftInterestTier": { "description": "Unarranged overdraft interest tier", "type": "integer" } }, "additionalProperties": false }, "TierValueMinimum": { "description": "Lower value of interest tier", "type": "number" }, "TierValueMaximum": { "description": "Max Value of interest tier", "type": "number" } }, "additionalProperties": false }, "minItems": 1 }, "InterestRateGrossPA": { "description": "Interest rate applied to tier", "type": "number" }, "InterestNotes": { "description": "Optional additional notes to supplement the interest details", "type": "string" }, "TotalOverdraftChargeAmount": { "description": "All charges that a customer could incur as a result of exceeding or attempting to exceed a Pre-agreed credit limit", "type": "number" }, "MinUnarrangedOverdraftAmount": { "description": "Minimum Unarranged Overdraft Amount if applicable", "type": "number" }, "DailyOverdraftFeeCap": { "description": "Maximum daily overdraft charge", "type": "number" }, "MonthlyOverdraftFeeCap": { "description": "Maximum monthly overdraft charge", "type": "number" }, "InterestRate": { "description": "interest rate applied to tier", "type": "number" }, "InterestRateCalculationFrequency": { "description": "Frequency at which interest is calculated and accrued", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "InterestApplicationFrequency": { "description": "When the interest is applied", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "IndicativeOrActual": { "type": "boolean" }, "DailyCharge": { "description": "Maximum daily overdraft charge", "type": "number" }, "MonthlyCharge": { "description": "Maximum monthly overdraft charge", "type": "number" }, "ItemCharge": { "description": "Arranged overdraft item charge", "type": "number" }, "OtherCharge": { "description": "Other flat charge levied when overdrawn (Arranged)", "type": "number" }, "OverdraftNotes": { "description": "Supplementary notes for overdrafts", "type": "string" }, "RatesAreNegotionable": { "description": "Value that expresses if the rates are negotiable", "enum": ["yes", "no", "Condition based"] }, "IndicativeRate": { "description": "Indicative Rate that the client will get", "type": "number" }, "BufferAmount": { "description": "Amount on overdraft that is prearranged", "type": "number" } }, "required": ["ApplicableTo", "Tiers"], "additionalProperties": false }, "OverdraftType": { "description": "Opposite of repayable on demand", "enum": ["On Demand", "Committed"] }, "Term": { "description": "The duration of the overdraft, if it is non permanent", "type": "string" }, "SetUpFeesAmount": { "description": "Fees to set up the overdraft", "type": "number" }, "SetUpFeesRate": { "description": "Rate to set up the overdraft", "type": "number" }, "ReviewFee": { "description": "Fee to review overdraft limit", "type": "number" }, "MinimumFee": { "description": "Minimum overdraft fee", "type": "number" }, "AnnualRenewalFee": { "description": "Fee payable per term for overdraft", "type": "string" } }, "additionalProperties": false } }, "FeesAndCharges": { "type": "array", "items": { "description": "Fees And Charges", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "Fees": { "description": "Fees", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": "number" }, "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": "number" }, "FeeDetails": { "type": "array", "items": { "description": "Fee Details", "type": "object", "properties": { "FeeSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "FeeDetail": { "description": "Fee Detail", "type": "object", "properties": { "FeeType": { "description": "A description of the Fee type", "enum": ["Account Fee", "Incoming CHAPS Fee", "Outgoing CHAPS Fee", "Foreign Currency", "Foreign Currency Withdrawal Fee (% of Tx - Min £2 - Max £5)", "Non Sterling Transaction Fee (Cash Withdrawal)", "SEPA Fee", "Stopped Cheque Fee", "Copy of Cheque Fee", "Cheque Transaction Fee", "Manual Debit Fee", "Counter Draft", "Unpaid Transaction Fee", "Special Cheque Presentation", "Court Order Fee", "Bankers Draft Fee", "Statement Copy Fee", "Bankers Reference Fee", "Personalised Card Fee", "Sterling Travellers Cheque (% of Tx - Min £2 - Max £5)", "International Payments Charge", "Other", "Cash payment In", "Cash payment Out", "Daily Monitoring", "Weekly Monitoring", "Monthly Monitoring", "Status Enquiry", "Audit Letter", "Credits paid in via night Safe", "Credit paid In via Depos ATM", "Telepay or Teledebit Item", "Balance Handlng Fee", "Late payment", "Loan arrangement", "Early Repayment charge", "Over credit limit fee", "Return payment fee", "Payment Scheme Exchange Rate", "Payment Scheme Exchange Fee", "Payment Scheme Exchange Fee Rate", "Non-Sterling Transaction fee", "Non-Sterling Transaction fee rate", "Non-Sterling Purchase Fee", "Non-Sterling Purchase Fee rate", "Non-Sterling Cash Fee", "Non-Sterling Cash Fee Rate", "Foreign Purchase Fee", "Foreign Purchase Fee Rate", "Foreign Cash Fee", "Foreign Cash Fee Rate", "Early Repayment Charges", "Tiered arrangement fees", "Monthly Account Maintenance Fee", "UK Sterling Direct Debits", "Standing order", "Business Debit card transaction (excluding ATM)", "ATM withdrawals (from a non-group ATM)", "ATM withdrawals (from a group ATM)", "Internet Bulk Payment - batch", "Automated credit", "Automated credit - Telephone and Internet Banking", "Automated credit –Faster Payments inbound", "Internet Bulk Payment –per item", "Faster Payments outbound", "Transfer to an account outside of the group", "Cheque paid in (or Postal Order)", "Cheques Out", "Cash paid in", "Cash paid out at own counter", "Other debit", "Other credit", "Credit paid in at another bank", "Cash exchanged", "Bacs –batch file submitted", "Bacs –debit or credit item", "Cardnet envelope paid in", "Credit paid in via Night Safe - up to £5K", "International payment Internet banking", "Express International Moneymover Branch", "Standard International Moneymover Branch", "Non-urgent Euro (SEPA)1 Branch", "International draft payable abroad Branch", "Electronic payments received from abroad Up to £100", "Electronic payments received from abroad over £100", "Foreign cheque/draft", "Cheques/drafts (including dividend warrants) payable in foreign currency or Sterling drawn abroad", "Cheques/drafts (including dividend warrants) payable in foreign currency drawn in the UK", "Unpaid charge (if the cheque/draft is not honoured by the paying bank)", "Status enquiries abroad", "Status enquiries abroad (if sent electronically) additional", "After an international payment has been sent abroad - Beneficiary claiming non-receipt of funds (BCNR) ", "After an international payment has been sent abroad - Recalling a payment", "First legal mortgage over a property, such as business premises", "Second or subsequent legal mortgage over a property, such as a house or business premises", "Unpaid Item", "SMS Text alerts", "SME unsecured loan fee", "World Currency Withdrawal Fee", "World Currency Purchase Fee", "Europe Currently Withdrawal Fee", "Europe Purchase Fee", "Minimum Foreign Cash Withdrawal Fee", "Maximum Foreign Cash Withdrawal Fee", "Security Fee", "Early Redemption Charge", "Paid Referral Fee", "Unpaid Referral Fee"] }, "Other": { "description": "Describe other fee type", "type": "string" }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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", "enum": ["Monthly", "Per Transaction - Amount", "Per Transaction - Percentage", "Per Occurrence", "Daily", "5 consecutive business days", "Weekly", "Statement Monthly", "Quarterly", "6 monthly", "Yearly", "On account anniversary", "Charging period", "Item", "Account opening", "Account Closing", "Academic Term", "One time payment at the start of the loan", "At the time of repayment", "per hour", "per sheet"] }, "FeeAmount": { "description": "Fee in GBP", "type": "number" }, "FeeRate": { "description": "% Rate", "type": "number" }, "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": "number" }, "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": "number" }, "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": "number" }, "FeesAndChargesNotes": { "description": "Supplementary information for fees and charges", "type": "string" } }, "required": ["FeeFrequency", "FeeAmount", "Negotiable"], "additionalProperties": false } }, "required": ["FeeType", "FeeSubDetails"], "additionalProperties": false } }, "required": ["FeeSubType", "FeeDetail"], "additionalProperties": false }, "minItems": 1 } }, "required": ["FeeDetails"], "additionalProperties": false } }, "required": ["ProductSubType", "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": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "BenefitItem": { "description": "Benefit Item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": { "description": "Criteria that is required in order to be eligible for the Benefit", "enum": ["Deposit", "Direct Debit", "Other"] }, "MinimumCriteria": { "description": "Minimum amount for the criteria", "type": "number" }, "MaximumCriteria": { "description": "Maximum amount for the criteria", "type": "number" }, "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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": ["ProductSubType", "BenefitItem"], "additionalProperties": false } } }, "required": ["Benefit"], "additionalProperties": false } }, "required": ["Organisation", "ProductType", "ProductSegment", "InternationalPaymentsSupported", "ProductIdentifier", "CardWithdrawalLimit", "ProductDescription", "TsandCs", "AccessChannels", "CardType", "Contactless", "ChequeBookAvailable", "CreditScoringPartOfAccountOpeningForGettingAnAccount", "ProductURL", "Ccy", "OverdraftOffered", "Feature", "CAPricing", "Eligibility", "CreditInterest", "FeesAndCharges", "Benefits"] } } }, "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": ["BCA"], "description": "Gets header information on the current set of `Business Current Account` 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": {} } } } } }, "/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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "description": "SME Loan", "type": "object", "properties": { "Organisation": { "description": "Organisation", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations", "type": "string" }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "BrandName": { "description": "Name by which an organisation is known that is printed on top of the ATM", "type": "string" }, "BrandID": { "description": "Unique and unambiguous way to identify the organisation that is shown on top of the ATM", "type": "string" } }, "required": ["ParentGroupName", "ParentGroupID", "BrandName", "BrandID"], "additionalProperties": false }, "ProductName": { "description": "The short product or marketing name assigned by the parent organisation", "type": "string" }, "ProductTypeName": { "description": "Descriptive code for the product category", "enum": ["SME Unsecured Loan", "Small Business Loan", "Flexible Business Loan"] }, "ProductSegment": { "description": "Marketing or industry segment that the product is applicable for. Gives the sector or segment that the Loan is designed for", "enum": ["Corporate", "Business", "Fixed", "Specialised Sector", "Government Scheme", "Agriculture Sector", "Small Loan", "Flexible Business Loan", "All Segments"] }, "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": "Channel", "enum": ["Branch", "Post", "Internet", "Phone", "Smartphone", "Text"] }, "minItems": 1 }, "Ccy": { "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": "number" }, "MaximumLoanAmount": { "description": "Maximum loan amount", "type": "number" }, "PaymentHoliday": { "description": "Indicates whether a repayment holiday is allowed", "type": "boolean" }, "LoanItem": { "description": "Loan Item", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "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", "enum": ["£ 5,000", "£ 10,000", "£ 15,000", "£ 20,000", "£ 25,000"] }, "LoanLengthIncrement": { "description": "Loan Length Increments", "enum": ["1 year", "2 years", "3 years", "4 years", "5 years"] }, "RepaymentFrequency": { "type": "array", "items": { "description": "Loan Repayment type", "enum": ["Interest only", "Repayment with a bullet", "Custom schedule", "Fixed capital fully amortising", "Fixed capital with a bullet"] }, "minItems": 1, "uniqueItems": true }, "LoanSizeBandLower": { "type": "number" }, "LoanSizeBandUpper": { "type": "number" }, "LoanLengthIncrementLower": { "type": "integer" }, "LoanLengthIncrementUpper": { "type": "integer" }, "IndicativeRate": { "type": "string" }, "RateComparisonType": { "description": "Rate Comparison Type", "enum": ["APR", "AER", "Gross"] }, "Negotiable": { "type": "boolean" } }, "required": ["SizeIncrement", "LoanLengthIncrement", "RepaymentFrequency", "LoanSizeBandLower", "LoanSizeBandUpper", "LoanLengthIncrementLower", "LoanLengthIncrementUpper", "IndicativeRate", "Negotiable"], "additionalProperties": false }, "minItems": 1 }, "CCARegulatedEntity": { "type": "boolean" }, "IsALowInterestRepaymentStartPossible": { "type": "boolean" }, "IsThisAnInterestOnlyLoan": { "type": "boolean" }, "WillTheLoanBePaidInTrancheDrawdowns": { "type": "boolean" } }, "required": ["ProductSubType", "LoanPricing", "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", "enum": ["Single Income", "Joint Income", "Single or Joint Income"] }, "MinimumIncomeTurnoverAmount": { "description": "Minimum income / Turnover required to hold the product", "type": "number" }, "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", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "AnnualBusinessTurnover": { "description": "Annual Business Turnover", "type": "integer" }, "AnnualBusinessTurnoverCurrency": { "description": "Annual Business Turnover Currency", "type": "string", "pattern": "[A-Z]{3}" }, "ResidencyResticted": { "description": "Indicates a customer's residency forms part of the eligibility criteria", "type": "boolean" }, "ResidencyRestictedRegion": { "description": "Indicates a customer must be current resident of a geographic area/country", "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": "number" }, "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": "number" }, "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": "number" }, "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", "enum": ["Business Only", "Students Only", "NTB Business", "Credit Scoring", "Sole UK account", "Any business customer", "ID and Verification", "Arrears on Loan, Credit Card, mortgage", "Over Overdraft for more than 30 days", "Sole UK Account or Bankrupt", "UCAS Fulltime for 2 years", "Date Limited (2 months within course start date)", "Email Address", "Sole Student Account"] }, "EligibilityNotes": { "description": "Optional additional notes to supplement the eligibility conditions. Only used for very specific conditions", "type": "string" }, "PreviousBancruptcy": { "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", "enum": ["Switchers Only", "New Customers Only"] }, "uniqueItems": true } }, "required": ["AgeRestricted", "OtherFinancialHoldingRequired", "Description", "IncomeTurnoverRelated", "ResidencyResticted", "ThirdSectorOrganisations", "PreviousBancruptcy"], "additionalProperties": false }, "FeesAndCharges": { "type": "array", "items": { "description": "Fees And Charges", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "Fees": { "description": "Fees", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": "number" }, "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": "number" }, "FeeDetails": { "type": "array", "items": { "description": "Fee Details", "type": "object", "properties": { "FeeSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "FeeDetail": { "description": "Fee Detail", "type": "object", "properties": { "FeeType": { "description": "A description of the Fee type", "enum": ["Account Fee", "Incoming CHAPS Fee", "Outgoing CHAPS Fee", "Foreign Currency", "Foreign Currency Withdrawal Fee (% of Tx - Min £2 - Max £5)", "Non Sterling Transaction Fee (Cash Withdrawal)", "SEPA Fee", "Stopped Cheque Fee", "Copy of Cheque Fee", "Cheque Transaction Fee", "Manual Debit Fee", "Counter Draft", "Unpaid Transaction Fee", "Special Cheque Presentation", "Court Order Fee", "Bankers Draft Fee", "Statement Copy Fee", "Bankers Reference Fee", "Personalised Card Fee", "Sterling Travellers Cheque (% of Tx - Min £2 - Max £5)", "International Payments Charge", "Other", "Cash payment In", "Cash payment Out", "Daily Monitoring", "Weekly Monitoring", "Monthly Monitoring", "Status Enquiry", "Audit Letter", "Credits paid in via night Safe", "Credit paid In via Depos ATM", "Telepay or Teledebit Item", "Balance Handlng Fee", "Late payment", "Loan arrangement", "Early Repayment charge", "Over credit limit fee", "Return payment fee", "Payment Scheme Exchange Rate", "Payment Scheme Exchange Fee", "Payment Scheme Exchange Fee Rate", "Non-Sterling Transaction fee", "Non-Sterling Transaction fee rate", "Non-Sterling Purchase Fee", "Non-Sterling Purchase Fee rate", "Non-Sterling Cash Fee", "Non-Sterling Cash Fee Rate", "Foreign Purchase Fee", "Foreign Purchase Fee Rate", "Foreign Cash Fee", "Foreign Cash Fee Rate", "Early Repayment Charges", "Tiered arrangement fees", "Monthly Account Maintenance Fee", "UK Sterling Direct Debits", "Standing order", "Business Debit card transaction (excluding ATM)", "ATM withdrawals (from a non-group ATM)", "ATM withdrawals (from a group ATM)", "Internet Bulk Payment - batch", "Automated credit", "Automated credit - Telephone and Internet Banking", "Automated credit –Faster Payments inbound", "Internet Bulk Payment –per item", "Faster Payments outbound", "Transfer to an account outside of the group", "Cheque paid in (or Postal Order)", "Cheques Out", "Cash paid in", "Cash paid out at own counter", "Other debit", "Other credit", "Credit paid in at another bank", "Cash exchanged", "Bacs –batch file submitted", "Bacs –debit or credit item", "Cardnet envelope paid in", "Credit paid in via Night Safe - up to £5K", "International payment Internet banking", "Express International Moneymover Branch", "Standard International Moneymover Branch", "Non-urgent Euro (SEPA)1 Branch", "International draft payable abroad Branch", "Electronic payments received from abroad Up to £100", "Electronic payments received from abroad over £100", "Foreign cheque/draft", "Cheques/drafts (including dividend warrants) payable in foreign currency or Sterling drawn abroad", "Cheques/drafts (including dividend warrants) payable in foreign currency drawn in the UK", "Unpaid charge (if the cheque/draft is not honoured by the paying bank)", "Status enquiries abroad", "Status enquiries abroad (if sent electronically) additional", "After an international payment has been sent abroad - Beneficiary claiming non-receipt of funds (BCNR) ", "After an international payment has been sent abroad - Recalling a payment", "First legal mortgage over a property, such as business premises", "Second or subsequent legal mortgage over a property, such as a house or business premises", "Unpaid Item", "SMS Text alerts", "SME unsecured loan fee", "World Currency Withdrawal Fee", "World Currency Purchase Fee", "Europe Currently Withdrawal Fee", "Europe Purchase Fee", "Minimum Foreign Cash Withdrawal Fee", "Maximum Foreign Cash Withdrawal Fee", "Security Fee", "Early Redemption Charge", "Paid Referral Fee", "Unpaid Referral Fee"] }, "Other": { "description": "Describe other fee type", "type": "string" }, "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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", "enum": ["Monthly", "Per Transaction - Amount", "Per Transaction - Percentage", "Per Occurrence", "Daily", "5 consecutive business days", "Weekly", "Statement Monthly", "Quarterly", "6 monthly", "Yearly", "On account anniversary", "Charging period", "Item", "Account opening", "Account Closing", "Academic Term", "One time payment at the start of the loan", "At the time of repayment", "per hour", "per sheet"] }, "FeeAmount": { "description": "Fee in GBP", "type": "number" }, "FeeRate": { "description": "% Rate", "type": "number" }, "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": "number" }, "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": "number" }, "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": "number" }, "FeesAndChargesNotes": { "description": "Supplementary information for fees and charges", "type": "string" } }, "required": ["FeeFrequency", "FeeAmount", "Negotiable"], "additionalProperties": false } }, "required": ["FeeType", "FeeSubDetails"], "additionalProperties": false } }, "required": ["FeeSubType", "FeeDetail"], "additionalProperties": false }, "minItems": 1 } }, "required": ["FeeDetails"], "additionalProperties": false } }, "required": ["ProductSubType", "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": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "BenefitItem": { "description": "Benefit Item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": { "description": "Criteria that is required in order to be eligible for the Benefit", "enum": ["Deposit", "Direct Debit", "Other"] }, "MinimumCriteria": { "description": "Minimum amount for the criteria", "type": "number" }, "MaximumCriteria": { "description": "Maximum amount for the criteria", "type": "number" }, "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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": ["ProductSubType", "BenefitItem"], "additionalProperties": false } } }, "required": ["Benefit"], "additionalProperties": false } }, "required": ["Organisation", "ProductName", "ProductTypeName", "ProductSegment", "ProductDescription", "TsandCs", "CustomerAccessChannels", "Ccy", "MinimumLoanTerm", "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": {} } } } } }, "/commercial-credit-cards": { "get": { "tags": ["CCC"], "description": "Gets a list of all `Commerical Credit Card` 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 `Commercial Credit Card` 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" }, "License": { "description": "Open Banking License", "type": "string", "format": "uri" }, "TermsOfUse": { "description": "Open Banking Terms of Use", "type": "string", "format": "uri" } }, "required": ["LastUpdated", "TotalResults", "License", "TermsOfUse"], "additionalProperties": false }, "data": { "type": "array", "items": { "description": "Commercial Credit Card", "type": "object", "properties": { "Organisation": { "description": "Organisation", "type": "object", "properties": { "ParentGroupName": { "description": "Parent company that owns or partially owns subsidiary organisations", "type": "string" }, "ParentGroupID": { "description": "Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme", "type": "string", "pattern": "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?" }, "BrandName": { "description": "Name by which an organisation is known that is printed on top of the ATM", "type": "string" }, "BrandID": { "description": "Unique and unambiguous way to identify the organisation that is shown on top of the ATM", "type": "string" } }, "required": ["ParentGroupName", "ParentGroupID", "BrandName", "BrandID"], "additionalProperties": false }, "ProductName": { "description": "Name of the Commercial Credit Card", "type": "string" }, "ProductType": { "description": "Descriptive code for the product category", "enum": ["Commercial Credit Cards"] }, "ProductSegment": { "description": "Marketing or industry segment that the product is designed for", "type": "array", "items": { "description": "Marketing or industry segment that the product is designed for", "enum": ["CashBack", "Rewards", "Corporate", "SME", "General"] } }, "ProductIdentifier": { "description": "Identifier within the parent organisation for the product. Must be unique in the organisation", "type": "string" }, "ProductURL": { "type": "array", "items": { "type": "string" }, "minItems": 1 }, "Description": { "description": "Product description", "type": "string" }, "KeyFeatures": { "description": "Product key features", "type": "string" }, "PaymentHoliday": { "description": "Indicates whether a payment holiday is possible", "type": "boolean" }, "PaymentHolidayDescription": { "description": "Detailed description on the payment holiday if available", "type": "string" }, "OtherKeyFeatures": { "description": "Additional Features of the card", "type": "string" }, "TsandCs": { "description": "URL provided by the parent organisation which redirects to the current T&Cs. Only applies on live products", "type": "array", "items": { "type": "string" }, "minItems": 1 }, "Details": { "description": "Commercial Credit Card Group ", "type": "object", "properties": { "ProductSubType": { "description": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "CommercialCreditCardItem": { "description": "Commercial Credit Card Item ", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" }, "MinimumCreditLimit": { "description": "Minimum £500, maximum subject to status", "type": "number" }, "RepaymentFrequency": { "description": "Repayment frequency", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "APRRate": { "description": "Annual Percentage Rate", "type": "number" }, "BalanceTransferInterestRatePeriod": { "description": "The period used to define the specific interest rate for balance transfers", "enum": ["Monthly", "Annual"] }, "PurchaseRate": { "description": "Purchase rate", "type": "number" }, "BalanceTransferRate": { "description": "Balance transfer rate", "type": "number" }, "CashAdvanceRate": { "description": "Cash advance rate", "type": "number" }, "OverLimitFee": { "description": "Fee applicable if the card was credited over its limit", "type": "number" }, "MaximumNumberOfCardsPermitted": { "description": "The maximum numbers of cards per account", "type": "integer" }, "CardScheme": { "description": "Indicates the card scheme", "enum": ["Visa", "Mastercard", "Cashcard"] }, "AbilityToSetIndividualLimits": { "description": "The ability to set separate limts on different cards in one account", "type": "boolean" }, "AccessToOnlineDataReportingTool": { "description": "Describes whether the account have access to an online tool for reprting on expenditure", "type": "boolean" }, "CashWithdrawalsAllowed": { "description": "Describes whether cash withdrawals are allowed", "type": "boolean" }, "ConvenienceCheque": { "description": "Describes whether the card account allow convenience cheques", "type": "boolean" }, "DaysInterestFreeCreditIfPaymentFull": { "description": "Describes how many interest free days are given if the card is fully paid at each term", "type": "integer" }, "IssuingEmergencyCardsFees": { "description": "Amount payable for issuing an emergency card", "type": "number" }, "AnnualFeeAmount": { "description": "Details on annual account fee, such as non payable when there is a turnover above a certain sum", "type": "number" }, "CashbackPercent": { "description": "Percent of cashback on amount spend", "type": "number" }, "FeesOnCheque": { "description": "Percentage fee on a convenince cheques", "type": "number" }, "MinimumRepaymentPercent": { "description": "Minimum repayment as percentage", "type": "integer" }, "MinimumRepaymentAmount": { "description": "Minimum repayment amount", "type": "number" }, "PaymentDaysAfterStatement": { "description": "How many days after statement is the payment expected", "type": "integer" }, "RepaymentNotes": { "description": "Additional notes", "type": "string" }, "MinimumLendingAmmount": { "description": "The minimum lending available", "type": "number" }, "StatementAtAccountLevel": { "description": "Describes whether there is a statement at account level", "type": "boolean" }, "StatementAtPersonalLevel": { "description": "Describes whether there is a statement at card level", "type": "boolean" }, "PaymentSchemeExchangeRate": { "description": "The base exchange rate used in settlement of the transaction between issuer and scheme", "type": "number" }, "ExchangeRateAdjustment": { "description": "The margin added, by certain card issuers, to the scheme rate in order to arrive at the exchange rate qouted as the reference exchange rate to the cardholder", "type": "number" }, "PaymentSchemeExchangeFee": { "description": "Any payment network fee applied to some or all non-sterling transactions that the card issuer recover directly from the cardholder", "type": "number" }, "PaymentSchemeExchangeFeeRate": { "description": "Any payment network fee rate applied to some or all non-sterling transactions that the card issuer recover directly from the cardholder", "type": "number" }, "NonSterlingTransactionFee": { "description": "A fee applied to all non-Sterling card transactions", "type": "number" }, "NonSterlingTransactionFeeRate": { "description": "A fee rate applied to all non-Sterling card transactions", "type": "number" }, "NonSterlingPurchaseFee": { "description": "An additional fee applied to certain card retail transactions", "type": "number" }, "NonSterlingPurchaseFeeRate": { "description": "An additional fee rate applied to certain card retail transactions", "type": "number" }, "NonSterlingCashFee": { "description": "An additional fee applied to certain card cash withdrawals. This fee also applies to cash near fees such as gambling", "type": "number" }, "NonSterlingCashFeeRate": { "description": "An additional fee rate applied to certain card cash withdrawals. This fee also applies to cash near fees such as gambling", "type": "number" }, "ForeignPurchaseFee": { "description": "Additional card fee applied to sterling retail transactions made abroad", "type": "number" }, "ForeignPurchaseFeeRate": { "description": "Additional card fee rate applied to sterling retail transactions made abroad", "type": "number" }, "ForeignCashFee": { "description": "Additional card fee applied to sterling cash withdrawal made abroad", "type": "number" }, "ForeignCashFeeRate": { "description": "Additional card fee rate applied to sterling cash withdrawal made abroad", "type": "number" } }, "required": ["MinimumCreditLimit", "RepaymentFrequency", "APRRate", "PurchaseRate", "BalanceTransferRate", "CashAdvanceRate", "CardScheme", "AbilityToSetIndividualLimits", "AccessToOnlineDataReportingTool", "CashWithdrawalsAllowed", "ConvenienceCheque", "DaysInterestFreeCreditIfPaymentFull", "IssuingEmergencyCardsFees", "AnnualFeeAmount", "PaymentDaysAfterStatement", "MinimumLendingAmmount", "StatementAtAccountLevel", "StatementAtPersonalLevel", "PaymentSchemeExchangeRate", "ExchangeRateAdjustment"], "additionalProperties": false } }, "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", "enum": ["Single Income", "Joint Income", "Single or Joint Income"] }, "MinimumIncomeTurnoverAmount": { "description": "Minimum income / Turnover required to hold the product", "type": "number" }, "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", "enum": ["Daily", "Weekly", "Monthly", "Yearly", "University Term", "Flexible"] }, "AnnualBusinessTurnover": { "description": "Annual Business Turnover", "type": "integer" }, "AnnualBusinessTurnoverCurrency": { "description": "Annual Business Turnover Currency", "type": "string", "pattern": "[A-Z]{3}" }, "ResidencyResticted": { "description": "Indicates a customer's residency forms part of the eligibility criteria", "type": "boolean" }, "ResidencyRestictedRegion": { "description": "Indicates a customer must be current resident of a geographic area/country", "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": "number" }, "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": "number" }, "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": "number" }, "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", "enum": ["Business Only", "Students Only", "NTB Business", "Credit Scoring", "Sole UK account", "Any business customer", "ID and Verification", "Arrears on Loan, Credit Card, mortgage", "Over Overdraft for more than 30 days", "Sole UK Account or Bankrupt", "UCAS Fulltime for 2 years", "Date Limited (2 months within course start date)", "Email Address", "Sole Student Account"] }, "EligibilityNotes": { "description": "Optional additional notes to supplement the eligibility conditions. Only used for very specific conditions", "type": "string" }, "PreviousBancruptcy": { "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", "enum": ["Switchers Only", "New Customers Only"] }, "uniqueItems": true } }, "required": ["AgeRestricted", "OtherFinancialHoldingRequired", "Description", "IncomeTurnoverRelated", "ResidencyResticted", "ThirdSectorOrganisations", "PreviousBancruptcy"], "additionalProperties": false }, "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": "Describes if the offering is promotional, regular or a description of a future state", "enum": ["Promotional", "Regular", "Future Regular Terms"] }, "BenefitItem": { "description": "Benefit Item", "type": "object", "properties": { "StartPromotionOrFutureTerms": { "description": "Describes the start date", "type": "string", "pattern": "^[0-9]{4}-(0[1-9]|(1[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[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[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": { "description": "Criteria that is required in order to be eligible for the Benefit", "enum": ["Deposit", "Direct Debit", "Other"] }, "MinimumCriteria": { "description": "Minimum amount for the criteria", "type": "number" }, "MaximumCriteria": { "description": "Maximum amount for the criteria", "type": "number" }, "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[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[1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$" } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": ["ProductSubType", "BenefitItem"], "additionalProperties": false } } }, "required": ["Benefit"], "additionalProperties": false } }, "required": ["Organisation", "ProductName", "ProductType", "ProductIdentifier", "ProductURL", "Description", "KeyFeatures", "PaymentHoliday", "PaymentHolidayDescription", "OtherKeyFeatures", "TsandCs", "Details", "Eligibility", "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": { "enum": ["400"] }, "title": { "enum": ["Bad request"] }, "description": { "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": { "enum": ["408"] }, "title": { "enum": ["Client timeout"] }, "description": { "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": { "enum": ["429"] }, "title": { "enum": ["Too many requests"] }, "description": { "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": { "enum": ["500"] }, "title": { "enum": ["Internal server error"] }, "description": { "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": { "enum": ["503"] }, "title": { "enum": ["Service temporarily unavailable"] }, "description": { "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": ["CCC"], "description": "Gets header information on the current set of `Commerical Credit Card` 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": {} } } } } } } }