UK Open Banking · Schema
Account and Transaction API Specification
Swagger for Account and Transaction API Specification. **Please Note**: There are no optional fields, if a field is not marked as “Required” it is a Conditional field.
Open BankingFinancial ServicesPaymentsAccount InformationPSD2UKBankingFintechRegulated
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/open-banking-uk/refs/heads/main/json-schema/account-info.json",
"title": "Account and Transaction API Specification",
"description": "Swagger for Account and Transaction API Specification.\n\n**Please Note**: There are no optional fields, if a field is not marked as \u201cRequired\u201d it is a Conditional field.\n",
"version": "4.0.1",
"$defs": {
"OBIntermediaryAgent": {
"description": "The intermediary agent associated with this transaction.",
"type": "object",
"properties": {
"Name": {
"description": "Name by which an agent is known and which is usually used to identify that agent.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"SchemeName": {
"$ref": "#/components/schemas/OBInternalAccountIdentification4Code"
},
"Identification": {
"description": "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"LEI": {
"$ref": "#/components/schemas/LEI"
},
"PostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress7"
},
"ProcessingStatus": {
"description": "Status of the payment at the Intermediary Agent. For a full list of enumeration values refer to `OBIntermediaryAgentStatus1Code` in `OB_Internal_CodeSet` [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)",
"type": "string",
"enum": [
"PDNG",
"RCVD",
"ACSP",
"ACSC",
"RJCT",
"UNKN",
"CANC"
]
}
}
},
"ExternalCreditorReferenceType1Code": {
"type": "string",
"minLength": 1,
"maxLength": 4,
"description": "Specifies the type of creditor reference as published in an external creditor reference type code set. For more information see `ExternalCreditorReferenceType1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)",
"enum": [
"DISP",
"FXDR",
"PUOR",
"RPIN",
"RADM",
"SCOR"
]
},
"ExternalDocumentType1Code": {
"type": "string",
"minLength": 1,
"maxLength": 4,
"description": "Specifies the document type as published in an external document type code list. For more information see `ExternalDocumentType1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)",
"enum": [
"AROI",
"BOLD",
"CINV",
"CMCN",
"CNFA",
"CONT",
"CREN",
"DEBN",
"DISP",
"DNFA",
"HIRI",
"INVS",
"MSIN",
"PROF",
"PUOR",
"QUOT",
"SBIN",
"SOAC",
"SPRR",
"TISH",
"TSUT",
"USAR",
"VCHR"
]
},
"OBReferredDocumentInformation": {
"type": "object",
"properties": {
"Code": {
"$ref": "#/components/schemas/ExternalDocumentType1Code"
},
"Issuer": {
"description": "Identification of the issuer of the reference document type.",
"type": "string",
"maxLength": 140,
"minLength": 1
},
"Number": {
"description": "Identification of the type specified for the referred document line.",
"type": "string",
"maxLength": 35,
"minLength": 1
},
"RelatedDate": {
"description": "Date associated with the referred document line.",
"type": "string",
"format": "date-time"
},
"LineDetails": {
"description": "Set of elements used to provide the content of the referred document line.",
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 2048
}
}
}
},
"OBRemittanceInformation2": {
"type": "object",
"description": "Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system",
"properties": {
"Structured": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OBRemittanceInformationStructured"
}
},
"Unstructured": {
"type": "array",
"description": "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.",
"items": {
"type": "string",
"maxLength": 140,
"minLength": 1
}
}
}
},
"OBRemittanceInformationStructured": {
"type": "object",
"properties": {
"ReferredDocumentInformation": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OBReferredDocumentInformation"
}
},
"ReferredDocumentAmount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"CreditorReferenceInformation": {
"description": "Reference information provided by the creditor to allow the identification of the underlying documents.",
"type": "object",
"properties": {
"Code": {
"$ref": "#/components/schemas/ExternalCreditorReferenceType1Code"
},
"Issuer": {
"description": "Entity that assigns the identification.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Reference": {
"description": "Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction.",
"type": "string",
"minLength": 1,
"maxLength": 35
}
}
},
"Invoicer": {
"$ref": "#/components/schemas/Identification_3"
},
"Invoicee": {
"$ref": "#/components/schemas/Identification_4"
},
"TaxRemittance": {
"description": "Provides remittance information about a payment made for tax-related purposes.",
"type": "string",
"maxLength": 140,
"minLength": 1
},
"AdditionalRemittanceInformation": {
"description": "Additional information, in free text form, to complement the structured remittance information.",
"type": "array",
"items": {
"type": "string",
"maxLength": 140,
"minLength": 1
},
"maxItems": 3
}
}
},
"OBUltimateCreditor1": {
"description": "Ultimate party to which an amount of money is due.",
"type": "object",
"properties": {
"Name": {
"description": "Name by which a party is known and which is usually used to identify that party.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"Identification": {
"description": "Identification assigned by an institution.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"LEI": {
"$ref": "#/components/schemas/LEI"
},
"SchemeName": {
"$ref": "#/components/schemas/OBInternalAccountIdentification4Code"
},
"PostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress7"
}
}
},
"OBUltimateDebtor1": {
"description": "Ultimate party that owes an amount of money to the (ultimate) creditor.",
"type": "object",
"properties": {
"Name": {
"description": "Name by which a party is known and which is usually used to identify that party.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"Identification": {
"description": "Identification assigned by an institution.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"LEI": {
"$ref": "#/components/schemas/LEI"
},
"SchemeName": {
"$ref": "#/components/schemas/OBInternalAccountIdentification4Code"
},
"PostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress7"
}
}
},
"OBFrequency6": {
"description": "Regularity with which credit transfer instructions are to be created and processed",
"type": "object",
"required": [
"Type"
],
"properties": {
"Type": {
"oneOf": [
{
"$ref": "#/components/schemas/OBFrequency6Code"
},
{
"$ref": "#/components/schemas/Frequency_1"
}
]
},
"CountPerPeriod": {
"description": "Number of instructions to be created and processed during the specified period. Specifies a frequency in terms of a count per period within a specified frequency type. Note: should not be used alongside `PointInTime`",
"type": "integer",
"example": 1,
"format": "int32"
},
"PointInTime": {
"$ref": "#/components/schemas/PointInTime"
}
}
},
"PointInTime": {
"description": "Exact2NumericText - Further information on the exact point in time the event should take place. Specifies a frequency in terms of an exact point in time or moment within a specified frequency type. Note: should not be used alongside `CountPerPeriod`.",
"type": "string",
"example": "00",
"maxLength": 2
},
"OBFrequency6Code": {
"description": "For a full list of values see `OBFrequency6Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)",
"type": "string",
"example": "MNTH",
"enum": [
"ADHO",
"YEAR",
"DAIL",
"FRTN",
"INDA",
"MNTH",
"QURT",
"MIAN",
"WEEK",
"WODL",
"FOWK",
"TWMH",
"FOMH",
"FIMH",
"ALMH",
"NONE",
"LWMH",
"LXMH",
"TWYR"
]
},
"OBProxy1": {
"description": "Specifies an alternate assumed name for the identification of the account.",
"type": "object",
"required": [
"Identification",
"Code"
],
"properties": {
"Identification": {
"description": "Identification used to indicate the account identification under another specified name.",
"type": "string",
"example": "2360549017905188",
"minLength": 1,
"maxLength": 2048
},
"Code": {
"$ref": "#/components/schemas/ExternalProxyAccountType1Code"
},
"Type": {
"type": "string",
"description": "Type of the proxy identification.",
"minLength": 1,
"maxLength": 35
}
}
},
"ExternalProxyAccountType1Code": {
"description": "Specifies the external proxy account type code, as published in the proxy account type external code set.<br /> For more information and a full list of values see `ExternalProxyAccountType1Code` in *ISO_External_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)",
"type": "string",
"example": "TELE",
"enum": [
"TELE",
"EMAL",
"DNAM",
"CINC",
"COTX",
"COID",
"CUST",
"DRLC",
"EIDN",
"EWAL",
"PVTX",
"LEIC",
"MBNO",
"NIDN",
"CCPT",
"SHID",
"SOSE",
"TOKN",
"UBIL",
"VIPN",
"BIID"
]
},
"AccountId": {
"description": "A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner.",
"type": "string",
"example": "22289",
"minLength": 1,
"maxLength": 40
},
"ActiveOrHistoricCurrencyCode_0": {
"description": "Identification of the currency in which the account is held. \nUsage: Currency should only be used in case one and the same account number covers several currencies\nand the initiating party needs to identify which currency needs to be used for settlement on the account.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"ActiveOrHistoricCurrencyCode_1": {
"description": "A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".",
"type": "string",
"example": "GBP",
"pattern": "^[A-Z]{3,3}$"
},
"AddressLine": {
"description": "Information that locates and identifies a specific address for a transaction entry, that is presented in free format text.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"BeneficiaryId": {
"description": "A unique and immutable identifier used to identify the beneficiary resource. This identifier has no meaning to the account owner.",
"type": "string",
"example": "Ben1",
"minLength": 1,
"maxLength": 40
},
"BookingDateTime": {
"description": "Date and time when a transaction entry is posted to an account on the account servicer's books.\nUsage: Booking date is the expected booking date, unless the status is booked, in which case it is the actual booking date. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"BuildingName": {
"description": "Name of a referenced building.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"BuildingNumber": {
"description": "Number that identifies the position of a building on a street.",
"type": "string",
"example": "11",
"minLength": 1,
"maxLength": 16
},
"CareOf": {
"description": "The 'care of' address is used whenever sending mail to a person or organisation who does not actually live or work at the address. They will receive the mail for the individual.",
"type": "string",
"example": "Jane Smith",
"minLength": 1,
"maxLength": 140
},
"CountryCode": {
"description": "Nation with its own government, occupying a particular territory.",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
},
"CountrySubDivision": {
"description": "Identifies a subdivision of a country eg, state, region, county.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"CreationDateTime": {
"description": "Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"example": "2024-05-29T00:00:00Z",
"format": "date-time"
},
"Date": {
"description": "Date and time associated with the date time type. All dates in the JSON payloads are represented in ISO 8601 date format. \n An example is below:\n2017-04-05",
"type": "string",
"format": "date"
},
"DateTime": {
"description": "Date and time associated with the date time type. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"example": "2024-05-29T00:00:00Z",
"format": "date-time"
},
"DebtorReference": {
"description": "A reference value provided by the PSU to the PISP while setting up the scheduled payment.",
"type": "string",
"example": "REF51561806",
"minLength": 1,
"maxLength": 35
},
"Description_0": {
"description": "Specifies the description of the account type.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Description_1": {
"description": "Description that may be available for the statement fee.",
"type": "string",
"example": "International usage charge",
"minLength": 1,
"maxLength": 128
},
"Description_2": {
"description": "Description that may be available for the statement interest.",
"example": "Interest occurred over statement duration",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Description_3": {
"description": "Description to describe the purpose of the code",
"type": "string",
"minLength": 1,
"maxLength": 350
},
"DirectDebitId": {
"description": "A unique and immutable identifier used to identify the direct debit resource. This identifier has no meaning to the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"DistrictName": {
"description": "Number that of the regional area, known as a district, which forms part of an address",
"type": "string",
"example": "Greater London",
"minLength": 1,
"maxLength": 140
},
"EmailAddress": {
"description": "Address for electronic mail (e-mail).",
"type": "string",
"example": "[email protected]",
"minLength": 1,
"maxLength": 256
},
"EndDateTime": {
"description": "Date and time at which the statement period ends. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"example": "2017-07-12T00:00:00+00:00",
"format": "date-time"
},
"File": {
"type": "object",
"properties": {}
},
"FinalPaymentDateTime": {
"description": "The date on which the final payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"FirstPaymentDateTime": {
"description": "The date on which the first payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Floor": {
"description": "Number that identifies the level within a building",
"type": "string",
"example": "11",
"minLength": 1,
"maxLength": 70
},
"Frequency_1": {
"description": "Individual Definitions:\nNotKnown - Not Known\nEvryDay - Every day\nEvryWorkgDay - Every working day\nIntrvlDay - An interval specified in number of calendar days (02 to 31)\nIntrvlWkDay - An interval specified in weeks (01 to 09), and the day within the week (01 to 07)\nWkInMnthDay - A monthly interval, specifying the week of the month (01 to 05) and day within the week (01 to 07)\nIntrvlMnthDay - An interval specified in months (between 01 to 06, 12, 24), specifying the day within the month (-05 to -01, 01 to 31)\nQtrDay - Quarterly (either ENGLISH, SCOTTISH, or RECEIVED)\nENGLISH = Paid on the 25th March, 24th June, 29th September and 25th December.\nSCOTTISH = Paid on the 2nd February, 15th May, 1st August and 11th November.\nRECEIVED = Paid on the 20th March, 19th June, 24th September and 20th December.\nIndividual Patterns:\nNotKnown (ScheduleCode)\nEvryDay (ScheduleCode)\nEvryWorkgDay (ScheduleCode)\nIntrvlDay:NoOfDay (ScheduleCode + NoOfDay)\nIntrvlWkDay:IntervalInWeeks:DayInWeek (ScheduleCode + IntervalInWeeks + DayInWeek)\nWkInMnthDay:WeekInMonth:DayInWeek (ScheduleCode + WeekInMonth + DayInWeek)\nIntrvlMnthDay:IntervalInMonths:DayInMonth (ScheduleCode + IntervalInMonths + DayInMonth)\nQtrDay: + either (ENGLISH, SCOTTISH or RECEIVED) ScheduleCode + QuarterDay\nThe regular expression for this element combines five smaller versions for each permitted pattern. To aid legibility - the components are presented individually here:\nNotKnown\nEvryDay\nEvryWorkgDay\nIntrvlDay:((0[2-9])|([1-2][0-9])|3[0-1])\nIntrvlWkDay:0[1-9]:0[1-7]\nWkInMnthDay:0[1-5]:0[1-7]\nIntrvlMnthDay:(0[1-6]|12|24):(-0[1-5]|0[1-9]|[12][0-9]|3[01])\nQtrDay:(ENGLISH|SCOTTISH|RECEIVED)\nFull Regular Expression:\n^(NotKnown)$|^(EvryDay)$|^(EvryWorkgDay)$|^(IntrvlDay:((0[2-9])|([1-2][0-9])|3[0-1]))$|^(IntrvlWkDay:0[1-9]:0[1-7])$|^(WkInMnthDay:0[1-5]:0[1-7])$|^(IntrvlMnthDay:(0[1-6]|12|24):(-0[1-5]|0[1-9]|[12][0-9]|3[01]))$|^(QtrDay:(ENGLISH|SCOTTISH|RECEIVED))$",
"type": "string",
"pattern": "^(NotKnown)$|^(EvryDay)$|^(EvryWorkgDay)$|^(IntrvlDay:((0[2-9])|([1-2][0-9])|3[0-1]))$|^(IntrvlWkDay:0[1-9]:0[1-7])$|^(WkInMnthDay:0[1-5]:0[1-7])$|^(IntrvlMnthDay:(0[1-6]|12|24):(-0[1-5]|0[1-9]|[12][0-9]|3[01]))$|^(QtrDay:(ENGLISH|SCOTTISH|RECEIVED))$"
},
"FullLegalName": {
"description": "The full legal name of the party.",
"type": "string",
"example": "Jane Smith",
"minLength": 1,
"maxLength": 350
},
"ISODateTime": {
"description": "All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Identification_0": {
"description": "Identification assigned by an institution to identify an account. This identification is known by the account owner.",
"type": "string",
"example": "80200112344562",
"minLength": 1,
"maxLength": 256
},
"Identification_1": {
"description": "Unique and unambiguous identification of the servicing institution.",
"type": "string",
"example": "80200112344562",
"minLength": 1,
"maxLength": 35
},
"Identification_2": {
"description": "Unique and unambiguous identification of a financial institution or a branch of a financial institution.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Identification_3": {
"description": "Identification of the organisation issuing the invoice, when it is different from the creditor or ultimate creditor",
"type": "string",
"example": "80200112344562",
"minLength": 1,
"maxLength": 256
},
"Identification_4": {
"description": "Identification of the party to whom an invoice is issued, when it is different from the debtor or ultimate debtor.",
"type": "string",
"example": "80200112344562",
"minLength": 1,
"maxLength": 256
},
"LastPaymentDateTime": {
"description": "The date on which the last (most recent) payment for a Standing Order schedule was made. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"example": "2017-07-12T00:00:00+00:00",
"format": "date-time"
},
"LEI": {
"description": "Legal entity identification as an alternate identification for a party. Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".",
"type": "string",
"example": "IZ9Q00LZEVUKWCQY6X15",
"minLength": 1,
"maxLength": 20,
"pattern": "^[A-Z0-9]{18,18}[0-9]{2,2}$"
},
"Links": {
"type": "object",
"description": "Links relevant to the payload",
"properties": {
"Self": {
"type": "string",
"format": "uri"
},
"First": {
"type": "string",
"format": "uri"
},
"Prev": {
"type": "string",
"format": "uri"
},
"Next": {
"type": "string",
"format": "uri"
},
"Last": {
"type": "string",
"format": "uri"
}
},
"additionalProperties": false,
"required": [
"Self"
]
},
"MandateIdentification": {
"description": "Direct Debit reference. For AUDDIS service users provide Core Reference. For non AUDDIS service users provide Core reference if possible or last used reference.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"MaturityDate": {
"description": "Maturity date of the account. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Meta": {
"title": "MetaData",
"type": "object",
"description": "Meta Data relevant to the payload",
"properties": {
"TotalPages": {
"type": "integer",
"format": "int32"
},
"FirstAvailableDateTime": {
"$ref": "#/components/schemas/ISODateTime"
},
"LastAvailableDateTime": {
"$ref": "#/components/schemas/ISODateTime"
}
},
"additionalProperties": false
},
"Name_0": {
"description": "The account name is the name or names of the account owner(s) represented at an account level, as displayed by the ASPSP's online channels.\nNote, the account name is not the product name or the nickname of the account.",
"type": "string",
"example": "Jane Smith",
"minLength": 1,
"maxLength": 350
},
"Name_1": {
"description": "Name by which an agent is known and which is usually used to identify that agent.",
"type": "string",
"example": "Agent Name",
"minLength": 1,
"maxLength": 140
},
"Name_2": {
"description": "Name of Service User.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"Name_3": {
"description": "Name by which a party is known and which is usually used to identify that party.",
"type": "string",
"example": "Mx Jane Smith",
"minLength": 1,
"maxLength": 350
},
"Name_4": {
"description": "Long name associated with the code",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"NextPaymentDateTime": {
"description": "The date on which the next payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00",
"type": "string",
"example": "2017-07-12T00:00:00+00:00",
"format": "date-time"
},
"Nickname": {
"description": "The nickname of the account, assigned by the account owner in order to provide an additional means of identification of the account.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"NumberOfPayments": {
"description": "Number of the payments that will be made in completing this frequency sequence including any executed since the sequence start date.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Number_0": {
"description": "Indicates whether the advertised overdraft rate is guaranteed to be offered to a borrower by the bank e.g. if it s part of a government scheme, or whether the rate may vary dependent on the applicant s circumstances.",
"type": "integer"
},
"Number_1": {
"description": "fee/charges are captured dependent on the number of occurrences rather than capped at a particular amount",
"type": "integer"
},
"OBAccount6": {
"type": "object",
"description": "Unambiguous identification of the account to which credit and debit entries are made. The following fields are optional only for accounts that are switched:\n\n * Data.Currency \n * Data.AccountCategory \n * Data.AccountTypeCode\n\nFor all other accounts, the fields must be populated by the ASPSP.",
"required": [
"AccountId"
],
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"Status": {
"$ref": "#/components/schemas/OBInternalAccountStatus1Code"
},
"StatusUpdateDateTime": {
"$ref": "#/components/schemas/StatusUpdateDateTime"
},
"Currency": {
"$ref": "#/components/schemas/ActiveOrHistoricCurrencyCode_0"
},
"AccountCategory": {
"$ref": "#/components/schemas/OBInternalAccountType1Code"
},
"AccountTypeCode": {
"$ref": "#/components/schemas/OBExternalAccountSubType1Code"
},
"Description": {
"$ref": "#/components/schemas/Description_0"
},
"Nickname": {
"$ref": "#/components/schemas/Nickname"
},
"OpeningDate": {
"$ref": "#/components/schemas/OpeningDate"
},
"MaturityDate": {
"$ref": "#/components/schemas/MaturityDate"
},
"SwitchStatus": {
"$ref": "#/components/schemas/OBInternalSwitchStatusCode"
},
"Account": {
"type": "array",
"items": {
"type": "object",
"description": "Provides the details to identify an account.",
"required": [
"SchemeName",
"Identification"
],
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBInternalAccountIdentification4Code"
},
"Identification": {
"$ref": "#/components/schemas/Identification_0"
},
"Name": {
"$ref": "#/components/schemas/Name_0"
},
"LEI": {
"$ref": "#/components/schemas/LEI"
},
"SecondaryIdentification": {
"$ref": "#/components/schemas/SecondaryIdentification"
}
}
}
},
"StatementFrequencyAndFormat": {
"$ref": "#/components/schemas/StatementFrequencyAndFormat"
},
"Servicer": {
"$ref": "#/components/schemas/OBBranchAndFinancialInstitutionIdentification5_0"
}
},
"additionalProperties": false
},
"OBAccount6Basic": {
"type": "object",
"description": "Unambiguous identification of the account to which credit and debit entries are made.",
"required": [
"AccountId"
],
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"Status": {
"$ref": "#/components/schemas/OBInternalAccountStatus1Code"
},
"StatusUpdateDateTime": {
"$ref": "#/components/schemas/StatusUpdateDateTime"
},
"Currency": {
"$ref": "#/components/schemas/ActiveOrHistoricCurrencyCode_0"
},
"AccountCategory": {
"$ref": "#/components/schemas/OBInternalAccountType1Code"
},
"AccountTypeCode": {
"$ref": "#/components/schemas/OBExternalAccountSubType1Code"
},
"Description": {
"$ref": "#/components/schemas/Description_0"
},
"Nickname": {
"$ref": "#/components/schemas/Nickname"
},
"OpeningDate": {
"$ref": "#/components/schemas/OpeningDate"
},
"MaturityDate": {
"$ref": "#/components/schemas/MaturityDate"
},
"SwitchStatus": {
"$ref": "#/components/schema
# --- truncated at 32 KB (533 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/open-banking-uk/refs/heads/main/json-schema/account-info.json