Groupe BPCE · Schema
HalTransactions
HYPERMEDIA structure used for returning the list of the transactions for a given account to the AISP
CompanyBankingFinancial ServicesOpen BankingPSD2PaymentsInsuranceFrance
Properties
| Name | Type | Description |
|---|---|---|
| transactions | array | List of transactions |
| _links | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/groupe-bpce/main/json-schema/groupe-bpce-hal-transactions-schema.json",
"title": "HalTransactions",
"description": "HYPERMEDIA structure used for returning the list of the transactions for a given account to the AISP",
"x-generated": "2026-10-09",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/groupe-bpce-psd2-accounts-openapi.yml#/components/schemas/HalTransactions",
"type": "object",
"properties": {
"transactions": {
"description": "List of transactions",
"type": "array",
"items": {
"$ref": "#/$defs/TransactionResource"
}
},
"_links": {
"$ref": "#/$defs/TransactionsLinks"
}
},
"required": [
"transactions",
"_links"
],
"$defs": {
"AccountIdentification": {
"description": "Unique and unambiguous identification for the account between the account owner and the account servicer.\nCard accounts must provide the identification of the card through the \"other\" substructure by giving, for instance, the masked PAN (MPAN).\nThe currency used for the account, when needed, can be specified through the [currency] field.\n",
"type": "object",
"properties": {
"workspace": {
"description": "Workspace to which the account is linked.\nThis workspace might be specified by the AISP when forwarding the consent on accounts.\nIf not provided, the default workspace is computed from the authentication that was used for getting the OAuth2 Access Token.\n",
"type": "string",
"maxLength": 32
},
"iban": {
"description": "ISO20022: International Bank Account Number (IBAN) - identification used internationally by financial institutions to uniquely identify the account of a customer.\n\nFurther specifications of the format and content of the IBAN can be found in the standard ISO 13616 \"Banking and related financial services - International Bank Account Number (IBAN)\" version 1997-10-01, or later revisions.\n",
"type": "string",
"pattern": "^[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}$"
},
"other": {
"$ref": "#/$defs/GenericIdentification"
},
"currency": {
"$ref": "#/$defs/CurrencyCode"
}
}
},
"AmountAndCurrencyExchange": {
"description": "Provides detailed information on the original amount.\nThe [instructedAmount] property identifies the amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party and provides currency exchange information in case the instructed amount and/or currency is/are different from the entry amount and/or currency.\nThe [transactionAmount] property identifies the amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party and provides currency exchange information in case the instructed amount and/or currency is/are different from the entry amount and/or currency.\nThe [cunterValueAmount] property embbeds the set of elements used to provide the countervalue amount and currency exchange information.\n- This can be either the counter amount quoted in an FX deal, or the result of the currency information applied to an instructed amount, before deduction of charges.\nThe [announcedPostingAmount] property specifies the amount of money, based on terms of corporate action event and balance of underlying securities, entitled to/from the account owner.\n- In some situations, this amount may alternatively be called entitled amount.\n",
"type": "object",
"properties": {
"instructedAmount": {
"$ref": "#/$defs/AmountAndCurrencyExchangeDetails"
},
"transactionAmount": {
"$ref": "#/$defs/AmountAndCurrencyExchangeDetails"
},
"counterValueAmount": {
"$ref": "#/$defs/AmountAndCurrencyExchangeDetails"
},
"announcedPostingAmount": {
"$ref": "#/$defs/AmountAndCurrencyExchangeDetails"
},
"proprietaryAmount": {
"description": "Set of elements used to provide information on the original amount and currency exchange.\n",
"type": "array",
"items": {
"$ref": "#/$defs/AmountAndCurrencyExchangeDetails"
}
}
}
},
"AmountAndCurrencyExchangeDetails": {
"description": "ISO20022: details on amount and currency exchange\nThe [amount] property is the amount of money to be exchanged against another amount of money in the counter currency.\nThe [sourceCurency] property indicates the currency from which an amount is to be converted in a currency conversion.\nThe [targetCurrency] property indicates the currency into which an amount is to be converted in a currency conversion.\nThe [unitCurrency] indicates the currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.\nAPI: Amounts must always be set as positive values.\n",
"type": "object",
"properties": {
"type": {
"description": "specifies the type of amount in case of proprietary amount",
"type": "string",
"maxLength": 35
},
"amount": {
"$ref": "#/$defs/AmountType"
},
"sourceCurrency": {
"$ref": "#/$defs/CurrencyCode"
},
"targetCurrency": {
"$ref": "#/$defs/CurrencyCode"
},
"unitCurrency": {
"$ref": "#/$defs/CurrencyCode"
},
"exchangeRate": {
"description": "Factor used to convert an amount from one currency into another. This reflects the price at which one currency was bought with another currency.\nExchangeRate expresses the ratio between UnitCurrency and QuotedCurrency (ExchangeRate = UnitCurrency/QuotedCurrency).\n",
"type": "number",
"format": "float"
},
"contractIdentification": {
"description": "Unique identification to unambiguously identify the foreign exchange contract.",
"type": "string",
"maxLength": 35
},
"quotationDate": {
"description": "Date and time at which an exchange rate is quoted.",
"type": "string",
"format": "date"
}
},
"required": [
"amount",
"sourceCurrency",
"exchangeRate"
]
},
"AmountType": {
"description": "Structure aiming to embed the amount and the currency to be used.\n",
"type": "object",
"properties": {
"amount": {
"description": "ISO20022: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.\n",
"type": "number",
"format": "float",
"pattern": "^\\-{0,1}[0-9]{1,13}(\\.[0-9]{0,5}){0,1}$"
},
"currency": {
"$ref": "#/$defs/CurrencyCode"
}
},
"required": [
"amount",
"currency"
]
},
"BankTransactionCode": {
"description": "Set of elements used to fully identify the type of underlying transaction resulting in an entry.\n\nISO20022 provides a list of [possible Bank Transaction Code combinations](https://www.iso20022.org/external_code_list.page)\n\nTransaction codification might also be specified at national community level.\n\nFor instance a French Transaction codification is [available](https://www.cfonb.org/fichiers/20190913092943_Brochure_Codes_Operation_pour_restitutions_clienteles_V5_0_novembre_2018.pdf)\n\nIt applies with § 2 code table using the following mapping:\n - domain must be set with \"FR\"\n - family must be set with one of the values that are provided in the [code Famille] column (e.g. \"OPCA\")\n - subFamily must be set with one of the values that are provided in the [code opération] column (e.g. \"05\")\n - code might be set with a proprietary transaction code that must be documented by the implementation.\n",
"type": "object",
"properties": {
"domain": {
"description": "Set of elements used to provide the domain, the family and the sub-family of the bank transaction code, in a structured and hierarchical format.\n",
"type": "string",
"maxLength": 4
},
"family": {
"description": "Specifies the family and the sub-family of the bank transaction code, within a specific domain, in a structured and hierarchical format.\n",
"type": "string",
"maxLength": 4
},
"subFamily": {
"description": "Specifies the sub-product family within a specific family.\n",
"type": "string",
"maxLength": 4
},
"code": {
"description": "Proprietary bank transaction code to identify the underlying transaction.\n",
"type": "string",
"maxLength": 35
},
"issuer": {
"description": "Identification of the issuer of the proprietary bank transaction code.\n",
"type": "string",
"maxLength": 35
}
},
"required": [
"domain",
"family",
"subFamily"
]
},
"ChargeBearerCode": {
"description": "ISO20022: Specifies which party/parties will bear the charges associated with the processing of the payment transaction.\nThe following values are allowed:\n| Code | Name | Description |\n| ---- | ---- | ---------- |\n| DEBT | BorneByDebtor | All transaction charges are to be borne by the debtor. |\n| CRED | BorneByCreditor | All transaction charges are to be borne by the creditor. |\n| SHAR | Shared | In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor. |\n| SLEV | FollowingServiceLevel | Charges are to be applied following the rules agreed in the service level and/or scheme. |\n",
"type": "string",
"enum": [
"DEBT",
"CRED",
"SHAR",
"SLEV"
]
},
"Charges": {
"description": "ISO20022: Provides further details on the charges related to the payment transaction.\nAPI: Amounts must always be set as positive values.\n",
"type": "object",
"properties": {
"totalChargesAndTaxAmount": {
"$ref": "#/$defs/AmountType"
},
"record": {
"description": "Provides details of the individual charges record.",
"type": "array",
"items": {
"$ref": "#/$defs/ChargesRecord"
}
}
}
},
"ChargesRecord": {
"description": "ISO20022: Provides further individual record details on the charges related to the payment transaction.\n- The [amount] proprty specifies the transaction charges to be paid by the charge bearer.\n- The [creditDebitIndicator] property indicates whether the charges amount is a credit or a debit amount.\n A zero amount is considered to be a credit.\n- the [code] property is the charge type, in a coded form\n- the [rate] property is the rate used to calculate the amount of the charge or fee.\n- the [bearer] property specifies which party/parties will bear the charges associated with the processing of the payment transaction.\n- the [agent] property specifies the agent that takes the transaction charges or to which the transaction charges are due.\n- the [tax] property provides details on the tax applied to charges.\nAPI: Amounts must always be set as positive values.\n",
"type": "object",
"properties": {
"amount": {
"$ref": "#/$defs/AmountType"
},
"creditDebitIndicator": {
"$ref": "#/$defs/CreditDebitIndicator"
},
"chargeIncludedIndicator": {
"description": "Indicates whether the charge should be included in the amount or is added as pre-advice.\nOne of the following values must be used:\n - Meaning When True: Included\n - Meaning When False: Pre-advised\n",
"type": "boolean"
},
"code": {
"$ref": "#/$defs/CodeAndIssuer"
},
"rate": {
"$ref": "#/$defs/PercentageRate"
},
"bearer": {
"$ref": "#/$defs/ChargeBearerCode"
},
"agent": {
"$ref": "#/$defs/FinancialInstitutionIdentification"
},
"tax": {
"$ref": "#/$defs/TaxCharges"
}
}
},
"ClearingSystemMemberIdentification": {
"description": "ISO20022: Information used to identify a member within a clearing system.\nAPI: to be used for some specific international credit transfers in order to identify the beneficiary bank\n",
"type": "object",
"properties": {
"clearingSystemId": {
"description": "ISO20022: Specification of a pre-agreed offering between clearing agents or the channel through which the payment instruction is processed.\n",
"type": "string",
"maxLength": 35
},
"memberId": {
"description": "ISO20022: Identification of a member of a clearing system.\n",
"type": "string",
"maxLength": 35
}
},
"required": [
"clearingSystemId",
"memberId"
]
},
"CodeAndIssuer": {
"description": "Specifies a code and the issuer of this code.\n",
"type": "object",
"properties": {
"code": {
"description": "Provides the code.",
"type": "string",
"maxLength": 4
},
"issuer": {
"description": "Identification of the issuer of the code.",
"type": "string",
"maxLength": 35
}
},
"required": [
"code"
]
},
"ContactDetails": {
"description": "Indicates how to contact the party.\n",
"type": "object",
"properties": {
"phoneNumber": {
"$ref": "#/$defs/PhoneNumber"
},
"faxNumber": {
"$ref": "#/$defs/PhoneNumber"
},
"emailAddress": {
"description": "email address of the contact",
"type": "string",
"pattern": "^.+@.+$",
"maxLength": 2048
}
}
},
"CreditDebitIndicator": {
"description": "Accounting flow of the amount\n| Code | Description |\n| ---- | ----------- |\n| CRDT | Credit type amount |\n| DBIT | Debit type amount |\n",
"type": "string",
"enum": [
"CRDT",
"DBIT"
]
},
"CreditorReferenceInformation": {
"description": "Reference information provided by the creditor to allow the identification of the underlying documents.",
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/CodeAndIssuer"
},
"reference": {
"description": "Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction.",
"type": "string",
"maxLength": 35
}
}
},
"CurrencyCode": {
"description": "Specifies the currency of the amount or of the account.\nA 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\".\n",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"DateAndPlaceOfBirth": {
"description": "Date and place of birth of a person.\nThis information must be requested for detection of Fraud, Money-Laundering and Terrorism Financing in case of international payment.\n",
"type": "object",
"properties": {
"birthDate": {
"description": "Date on which a person is born.",
"type": "string",
"format": "date"
},
"cityOfBirth": {
"description": "City where a person was born.",
"type": "string",
"maxLength": 35
},
"countryOfBirth": {
"description": "Country where a person was born.",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
}
},
"required": [
"birthDate",
"cityOfBirth",
"countryOfBirth"
]
},
"DocumentAdjustment": {
"description": "ISO20022: Specifies detailed information on the amount and reason of the adjustment.\nAPI: Amounts must always be set as positive values.\n",
"type": "object",
"properties": {
"amount": {
"$ref": "#/$defs/AmountType"
},
"creditDebitIndicator": {
"$ref": "#/$defs/CreditDebitIndicator"
},
"reason": {
"description": "Specifies the reason for the adjustment.",
"type": "string",
"maxLength": 4
},
"additionalInformation": {
"description": "Provides further details on the document adjustment.",
"type": "string",
"maxLength": 140
}
},
"required": [
"amount"
]
},
"DocumentLineIdentification": {
"description": "Provides identification of the document line.\nthe [type] property must be used for specifying the type of referred document type.\n",
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/CodeAndIssuer"
},
"number": {
"description": "Unique and unambiguous identification of the referred document line.",
"type": "string",
"maxLength": 35
},
"relatedDate": {
"description": "Date associated with the referred document line.",
"type": "string",
"format": "date"
}
}
},
"EndDate": {
"description": "The last applicable day of execution for a given period.\nIf not given, the period is considered as endless.\n",
"type": "string",
"format": "date-time"
},
"EndToEndId": {
"description": "ISO20022: Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.\n",
"type": "string",
"pattern": "^([a-zA-Z0-9 /\\-?:\\()\\.,']{1,36})$"
},
"ExecutionRule": {
"description": "Execution date shifting rule for standing orders\nThis data attribute defines the behaviour when recurring payment dates falls on a weekend or bank holiday.\nThe payment is then executed either the \"preceding\" or \"following\" working day.\nASPSP might reject the request due to the communicated value, if rules in Online-Banking are not supporting\nthis execution rule.\n| Code | Description |\n| ---- | ----------- |\n| FWNG | following |\n| PREC | preceding |\n",
"type": "string",
"enum": [
"FWNG",
"PREC"
]
},
"FinancialInstitutionIdentification": {
"description": "ISO20022: Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme.\n",
"type": "object",
"properties": {
"bicFi": {
"description": "ISO20022: Code allocated to a financial institution by the ISO 9362 Registration Authority as described in ISO 9362 \"Banking - Banking telecommunication messages - Business identification code (BIC)\".\n",
"type": "string",
"pattern": "^[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}$"
},
"clearingSystemMemberId": {
"$ref": "#/$defs/ClearingSystemMemberIdentification"
},
"lei": {
"$ref": "#/$defs/LeiIdentification"
},
"name": {
"description": "Name of the financial institution",
"type": "string",
"maxLength": 140
},
"postalAddress": {
"$ref": "#/$defs/PostalAddress"
}
},
"required": [
"bicFi"
]
},
"FrequencyCode": {
"description": "Frequency rule for standing orders.\nThe following codes from the \"EventFrequency7Code\" of ISO 20022 are supported.\n| Code | Description |\n| ---- | ----------- |\n| DAIL | Daily |\n| WEEK | Weekly |\n| TOWK | EveryTwoWeeks |\n| MNTH | Monthly |\n| TOMN | EveryTwoMonths |\n| QUTR | Quarterly |\n| SEMI | SemiAnnual |\n| YEAR | Annual |\nHowever, each ASPSP might restrict these values into a subset if needed.\n",
"type": "string",
"enum": [
"DAIL",
"WEEK",
"TOWK",
"MNTH",
"TOMN",
"QUTR",
"SEMI",
"YEAR"
]
},
"GenericIdentification": {
"description": "ISO20022: Unique identification of an account, a person or an organisation, as assigned by an issuer.\nAPI: The ASPSP will document which account reference type it will support.\n",
"type": "object",
"properties": {
"identification": {
"description": "API: Identifier\n",
"type": "string",
"maxLength": 70
},
"schemeName": {
"description": "Name of the identification scheme.\nPossible values for the scheme name, partially based on ISO20022 external code list, are the following:\n| Code | Name | Description |\n| ---- | ---- | ----------- |\n| BANK | BankPartyIdentification | Unique and unambiguous assignment made by a specific bank or similar financial institution to identify a relationship as defined between the bank and its client. |\n| BBAN | BBANIdentifier | Basic Bank Account Number (BBAN) - identifier used nationally by financial institutions, ie, in individual countries, generally as part of a National Account Numbering Scheme(s), to uniquely identify the account of a customer. |\n| COID | CountryIdentificationCode) : Country authority given organisation identification (e.g., corporate registration number) |\n| SREN | SIREN | The SIREN number is a 9 digit code assigned by INSEE, the French National Institute for Statistics and Economic Studies, to identify an organisation in France. |\n| SRET | SIRET | The SIRET number is a 14 digit code assigned by INSEE, the French National Institute for Statistics and Economic Studies, to identify an organisation unit in France. It consists of the SIREN number, followed by a five digit classification number, to identify the local geographical unit of that entity. |\n| NIDN | NationalIdentityNumber | Number assigned by an authority to identify the national identity number of a person. |\nOther values are also permitted, for instance:\n| Code | Name | Description |\n| ---- | ---- | ----------- |\n| OAUT | OAUTH2 | OAUTH2 access token that is owned by the PISP being also an AISP and that can be used in order to identify the PSU |\n| CPAN | CardPan | Card PAN |\n| MPAN | MaskedPan | Card PAN where some digits were replaced for security reason |\n| TPAN | TokenizedPan | Token which was provided by a Token Service Provider (TSP) in order to obfuscate a real card PAN. The TSP must be identified in the issuer field |\n| TBAN | TokenizedIBAN | Token which was provided by a Token Service Provider (TSP) in order to obfuscate an IBAN. The TSP must be identified in the issuer field |\nEach implementation of the STET PSD2 API must specify in its own documentation which schemes can actually been used\n",
"type": "string",
"maxLength": 70
},
"issuer": {
"description": "ISO20022: Entity that assigns the identification. this could a country code or any organisation name or identifier that can be recognized by both parties\n",
"type": "string",
"maxLength": 35
}
},
"required": [
"identification",
"schemeName"
]
},
"GenericLink": {
"description": "hypertext reference",
"type": "object",
"properties": {
"href": {
"description": "URI to be used. HREF stands for Hypertext REFerence.",
"type": "string",
"maxLength": 2000
},
"templated": {
"description": "This field must be set with \"true\" when [href] is an URI template, i.e. with parameters that will be set by the client afterwards. Parameter fields must be included by the API server according to RFC6570.\nOtherwise, this property must be absent or set to false\ndefault value: false\n",
"type": "boolean"
}
},
"required": [
"href"
]
},
"LeiIdentification": {
"description": "Legal Entity Identifier is a code allocated to a party as described in ISO 17442 \"Financial Services - Legal Entity Identifier (LEI)\".\n",
"type": "string",
"pattern": "^[A-Z0-9]{18,18}[0-9]{2,2}$"
},
"LineDetail": {
"description": "Set of elements used to provide the content of the referred document line.",
"type": "object",
"properties": {
"identification": {
"$ref": "#/$defs/DocumentLineIdentification"
},
"description": {
"description": "Description associated with the document line.",
"type": "string",
"maxLength": 2048
},
"amount": {
"$ref": "#/$defs/RemittanceAmount"
}
}
},
"PartyIdentification": {
"description": "API : Description of a Party which can be either a person or an organization.\n",
"type": "object",
"properties": {
"name": {
"description": "ISO20022: Name by which a party is known and which is usually used to identify that party.\nThe [organisationId] property allows the specification of an unique and unambiguous way to identify an organisation.\nThe [privateId] property allows the specification of an unique and unambiguous way to identify a person.\n",
"type": "string",
"maxLength": 140
},
"dateAndPlaceOfBirth": {
"$ref": "#/$defs/DateAndPlaceOfBirth"
},
"postalAddress": {
"$ref": "#/$defs/PostalAddress"
},
"contactDetails": {
"$ref": "#/$defs/ContactDetails"
},
"organisationId": {
"$ref": "#/$defs/GenericIdentification"
},
"privateId": {
"$ref": "#/$defs/GenericIdentification"
},
"lei": {
"$ref": "#/$defs/LeiIdentification"
}
},
"required": [
"name"
]
},
"PercentageRate": {
"description": "Rate expressed as a percentage, ie, in hundredths, eg, 0.7 is 7/10 of a percent, and 7.0 is 7%.",
"type": "number",
"format": "float"
},
"Period": {
"description": "definition of a time period",
"type": "object",
"properties": {
"startDate": {
"$ref": "#/$defs/StartDate"
},
"endDate": {
"$ref": "#/$defs/EndDate"
}
}
},
"PhoneNumber": {
"description": "The collection of information which identifies a specific phone or FAX number as defined by telecom services.\nIt consists of a \"+\" followed by the country code (from 1 to 3 characters) then a \"-\" and finally, any combination of numbers, \"(\", \")\", \"+\" and \"-\" (up to 30 characters).\n",
"type": "string",
"pattern": "^\\+[0-9]{1,3}-[0-9()+\\-]{1,30}$"
},
"PostalAddress": {
"description": "ISO20022: Information that locates and identifies a specific address, as defined by postal services.\n",
"type": "object",
"properties": {
"addressType": {
"description": "ISO20022: Identifies the nature of the postal address.\nAPI: Cannot be used for SEPA payments. Proprietary codes can be specified and documented if needed.\n| Code | Name | Description |\n| ---- | ---- | ----------- |\n| BIZZ | Business | Address is the business address |\n| DLVY | Delivery | Address is the address to which delivery is to take place |\n| MLTO | Mail To | Address is the address to which mail is sent |\n| PBOX | PO Box | Address is is a postal office (PO) box |\n| ADDR | Postal | Address is the complete postal address |\n| HOME | Business | Address is the home address |\n",
"type": "string",
"enum": [
"BIZZ",
"DLVY",
"MLTO",
"PBOX",
"ADDR",
"HOME"
]
},
"department": {
"description": "ISO20022: Identification of a division of a large organisation or building.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 70
},
"subDepartment": {
"description": "ISO20022: Identification of a sub-division of a large organisation or building.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 70
},
"streetName": {
"description": "ISO20022: Name of a street or thoroughfare.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 70
},
"buildingNumber": {
"description": "ISO20022: Number that identifies the position of a building on a street.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 16
},
"buildingName": {
"description": "ISO20022: Name of the building or house.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 16
},
"postCode": {
"description": "ISO20022: Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 16
},
"townName": {
"description": "ISO20022: Name of a built-up area, with defined boundaries, and a local government.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 35
},
"countrySubDivision": {
"description": "ISO20022: Identifies a subdivision of a country such as state, region, county.\nAPI: Cannot be used for SEPA payments.\n",
"type": "string",
"maxLength": 35
},
"country": {
"description": "ISO20022: Country in which a person resides (the place of a person's home). In the case of a company, it is the country from which the affairs of that company are directed.\n",
"type": "string",
"pattern": "^([A-Z]{2,2})$"
},
"addressLine": {
"description": "Unstructured address. The lines must embed zip code and town name.\nFor SEPA payments, only two address lines are allowed.\n",
"type": "array",
"items": {
"description": "Address line",
"type": "string",
"maxLength": 70
},
"minItems": 1,
"maxItems": 7
}
},
"required": [
"country"
]
},
"ReferredDocumentInformation": {
"description": "Provides the identification and the content of the referred document.",
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/CodeAndIssuer"
},
"number": {
"description": "Unique and unambiguous identification of the referred document.",
"type": "string",
"maxLength": 35
},
"relatedDate": {
"description": "Date associated with the referred document.",
"type": "string",
"format": "date"
},
"lineDetails": {
"description": "Sets of elements used to provide the content of the referred document line.",
"type": "array",
"items": {
"$ref": "#/$defs/LineDetail"
},
"minItems": 1
}
}
},
"ReferredDocumentInformations": {
"description": "Provides the identification and the content of the referred documents.\n",
"type": "array",
"items": {
"$ref": "#/$defs/ReferredDocumentInformation"
},
"minItems": 1
},
"RelatedParties": {
"description": "information about the parties that are related to the transaction",
"
# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/groupe-bpce/refs/heads/main/json-schema/groupe-bpce-hal-transactions-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/groupe-bpce-hal-transactions"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.