Endpoints url
discount sandbox
https://mtls-api-nonprod.discountbank.co.il/devapi/cert
discount prod
https://mtls-api.discountbank.co.il/prod/d
mercantile sandbox
https://mtls-api-nonprod.mercantile.co.il/devapi/cert
mercantile prod
https://mtls-api.mercantile.co.il/prod/d
Summary
The processing of direct debit transactions comes with a related mandate of the debtor towards the creditor, creditor bank and debtor bank to process such mandates. Such a mandate might come with a creditor mandate flow or a debtor mandate flow, depending on the underlying direct debit scheme. The mandate can be signed by the debtor manually or the debtor agrees via electronic means, again depending on the related direct debit scheme rules.
Paths
/v2/mandates
Establish Mandate Request on Dedicated Account
Creates a mandate resource at the ASPSP for the account specified in this request. Note: This call is a Transaction Initiation Request in the sense of [oFA SMPF] and makes use e.g. of authorisation processes, where applicable, and header parameters as defined therein.
ID of the request, unique to the call, as determined by the initiating party.
{
"x-example": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
}
Is contained if and only if the "Signature" element is contained in the header of the request.
{
"x-example": "SHA-256=hl1\/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A="
}
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
{
"x-example": "keyId=\"SN=9FA1,CA=CN=D-TRUST%20CA%202-1%202015,O=D-Trust%20GmbH,C=DE\",algorithm=\"rsa-sha256\", headers=\"Digest X-Request-ID PSU-ID TPP-Redirect-URI Date\", signature=\"Base64(RSA-SHA256(signing string))\""
}
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-Redirect-Preferred equals "true". It is recommended to always use this header field. Remark for Future: This field might be changed to mandatory in the next version of the specification.
{
"maxLength": 2048
}
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP.
{
"maxLength": 2048
}
BOI-REMARK- If it equals "false" , the ASPSP has to choose Decoupled SCA approach if supported by the ASPSP for the related PSU, because Embedded does not supported. ASPSP not supporting Decoupled SCA approach can ignore this attribute.
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect SCA approach, depending on the choice of the SCA procedure by the TPP/PSU. If the parameter is not used, the ASPSP will choose the SCA approach to be applied depending on the parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used.
Remark for Future: TPP-Redirect-Preferred and TPP-Decoupled-Preferred will be revised in future versions, maybe merged. Currently kept separate for downward compatibility.
If it equals "true", the TPP prefers to start the authorisation process separately, e.g. because of the usage of a signing basket. This preference might be ignored by the ASPSP, if a signing basket is not supported as functionality.
If it equals "false" or if the parameter is not used, there is no preference of the TPP. This especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, without using a signing basket.
If it equals "true" then the TPP prefers a rejection of the payment initiation in case the ASPSP is providing an integrated confirmation of funds request an the result of this is that not sufficient funds are available.
If it equals "false" then the TPP prefers that the ASPSP is dealing with the payment initiation like in the ASPSPs online channel, potentially waiting for a certain time period for funds to arrive to initiate the payment.
This parameter might be ignored by the ASPSP.
This header might be used by TPPs to inform the ASPSP about the brand used by the TPP towards the PSU. This information is meant for logging entries to enhance communication between ASPSP and PSU or ASPSP and TPP.
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP.
For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies:
URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant.
Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply.
{
"maxLength": 2048
}
The string has the form
status=X1, ..., Xn
where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics:
SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP.
PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP.
This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP.
{
"maxLength": 2048
}
BOI-REMARK - The PSU id number or passport number. Possible values are:
- ID = only digits.
- Passport = 2 characters ISO 3166 country code + '-' + Passport number.
{
"pattern": "^([0-9]{9}|[A-Za-z]{2}-([A-Za-z0-9]){1,16})$",
"x-example": "IL-12345678945"
}
BOI-REMARK - Specific brands or channels of the ASPSP only in case there is more than one. Possible values should be found in ASPSP's documentation and get approved in advance by BOI.
{
"enum": [
"Retail",
"SME"
]
}
Might be mandated in the ASPSP's documentation. Only used in a corporate context.
{
"pattern": "^[A-Z]{2}[-]\\d{9}|\\d{9}$"
}
Might be mandated in the ASPSP's documentation. Only used in a corporate context.
{
"enum": [
"Company",
"ForeignCompany",
"StatutoryWithoutID"
]
}
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. If not available, the TPP shall use the IP Address used by the TPP when submitting this request.
{
"x-example": "192.168.8.78"
}
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.
{
"maxLength": 5,
"x-example": "1234"
}
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
{
"maxLength": 1024
}
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
{
"maxLength": 1024
}
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
{
"maxLength": 1024
}
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
{
"maxLength": 1024
}
The forwarded Agent header field of the HTTP request between PSU and TPP, if available.
{
"maxLength": 1024
}
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
- GET
- POST
- PUT
- PATCH
- DELETE
{
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device.
{
"x-example": "99435c7e-ad88-49ec-a2ad-99ddcb1f5555"
}
The forwarded Geo Location of the corresponding http request between PSU and TPP if available.
{
"pattern": "^GEO:-?[0-9]{1,2}\\.[0-9]{6};-?[0-9]{1,3}\\.[0-9]{6}$",
"x-example": "GEO:52.506931;13.144558"
}
Request body for a mandates request
Created
Bad Request
Unauthorised
Forbidden
Not Found
Method not allowed
Not Acceptable
Request Timeout
Conflict
Unsupported Media Type
Internal Server Error
Service Unavailable
/v2/mandates/{resourceId}
Get Mandate Request
Returns the content of a mandate object. This is returning the data for the API Client especially in cases, where the mandate was directly managed in detail between ASPSP and PSU e.g. in a re-direct SCA Approach.
Resource identification of the related payment initiation, signing basket, consent, subscription or other related business transaction resource.
{
"maxLength": 70
}
Bad Request
Unauthorised
Forbidden
Not Found
Method not allowed
Not Acceptable
Request Timeout
Conflict
Unsupported Media Type
Internal Server Error
Service Unavailable
Cancellation of a Mandate
Deletes a given mandate
Resource identification of the related payment initiation, signing basket, consent, subscription or other related business transaction resource.
{
"maxLength": 70
}
ID of the request, unique to the call, as determined by the initiating party.
{
"x-example": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
}
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-Redirect-Preferred equals "true". It is recommended to always use this header field. Remark for Future: This field might be changed to mandatory in the next version of the specification.
{
"maxLength": 2048
}
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP.
{
"maxLength": 2048
}
Is contained if and only if the "Signature" element is contained in the header of the request.
{
"x-example": "SHA-256=hl1\/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A="
}
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
{
"x-example": "keyId=\"SN=9FA1,CA=CN=D-TRUST%20CA%202-1%202015,O=D-Trust%20GmbH,C=DE\",algorithm=\"rsa-sha256\", headers=\"Digest X-Request-ID PSU-ID TPP-Redirect-URI Date\", signature=\"Base64(RSA-SHA256(signing string))\""
}
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
Received
NO CONTENT
Bad Request
Unauthorised
Forbidden
Not Found
Method not allowed
Not Acceptable
Request Timeout
Conflict
Unsupported Media Type
Internal Server Error
Service Unavailable
/v2/mandates/{resourceId}/status
Get Status Request
Can check the status of a mandate resource.
Resource identification of the related payment initiation, signing basket, consent, subscription or other related business transaction resource.
{
"maxLength": 70
}
ID of the request, unique to the call, as determined by the initiating party.
{
"x-example": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
}
Bad Request
Unauthorised
Forbidden
Not Found
Method not allowed
Not Acceptable
Request Timeout
Conflict
Unsupported Media Type
Internal Server Error
Service Unavailable
/v2/oauth/mandates/.well-known/oauth-authorization-server
OAuth2 Location
The link where the configuration of the OAuth2 Server is defined.
This field is not verified
A signature of the request by the TPP on application level. This field is not verified.
The certificate used for signing the request, in base64 encoding. The certificate is eIDAS Qseal certificate must contain the same O + OU that exsists in the eIDAS Qwac certificate.
200 OK
/v2/oauth/mandates/cancellation/.well-known/oauth-authorization-server
The certificate used for signing the request, in base64 encoding. The certificate is eIDAS Qseal certificate must contain the same O + OU that exsists in the eIDAS Qwac certificate.
Definitions
{
"type": "object",
"required": [
"mandateId",
"type",
"creditor",
"creditorAccount",
"debtor",
"mandateStatus",
"lastActionDate",
"debtorAccount"
],
"properties": {
"mandateId": {
"description": "Unique identification, as assigned by the creditor, to unambiguously identify the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"type": {
"description": "Specifies the type of mandate, such as paper, electronic or scheme.\n",
"allOf": [
{
"$ref": "#\/definitions\/mandateType"
}
]
},
"occurrences": {
"description": "Provides details of the duration of the mandate and occurrence of the underlying direct debit transactions.\n",
"allOf": [
{
"$ref": "#\/definitions\/ocurrences"
}
]
},
"firstCollectionAmount": {
"description": "Amount different from the collection amount, as it includes the costs associated with the first debited amount.\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"collectionAmount": {
"description": "Fixed amount to be collected from the debtor's account\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"maximumAmount": {
"description": "Maximum amount that may be collected from the debtor's account, per instruction.\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"reasonCode": {
"description": "Provides the reason for the setup of the mandate as an ISO code.\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateSetupReasonCode"
}
]
},
"reasonProprietary": {
"description": "Provides the reason for the setup of the mandate as a proprietary code.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"creditorSchemeIdentification": {
"description": "Credit party that signs the mandate. Could be mandated by ASPSP to fulfil requirements of the related direct debit schemes.\n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"creditor": {
"description": "Party that signs the mandate and to whom an amount of money is due.\n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"creditorAccount": {
"description": "This attribute is optional by default, but maybe mandated by ASPSPs or Direct Debit Schemes. If so, this must be documented accordingly in e.g. related Discovery Services.\n",
"allOf": [
{
"$ref": "#\/definitions\/accountReference"
}
]
},
"creditorAgent": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/agentDescription"
}
]
},
"ultimateCreditor": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"debtor": {
"description": "In case of synchronous authorisation, this attribute might be made optional by rules of direct debit schemes or the implementing ASPSP in case the debtorAccount is provided. \n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"debtorAccount": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/accountReference"
}
]
},
"ultimateDebtor": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"mandateReference": {
"description": "Reference assigned by a creditor or ultimate creditor for internal usage for the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"referredDocument": {
"description": "Provides information to identify the underlying documents associated with the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/referredMandateDocumentInformation"
}
]
},
"mandateStatus": {
"description": "The status of the mandate resource.\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateStatus"
}
]
},
"lastActionDate": {
"description": "This date is containing the date of the last action on the mandate object either through the openFinance API or the PSU\/ASPSP interface having an impact on the status.\n",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
}
}
}
{
"type": "object",
"required": [
"mandateStatus"
],
"properties": {
"mandateStatus": {
"description": "This is the overall lifecycle status of the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateStatus"
}
]
},
"mandateReasonCode": {
"description": "Mandate reason code.\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateReasonCode"
}
]
},
"mandateReasonProprietary": {
"description": "Proprietary mandate reason code.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
Body of the JSON response for a successful mandate request.
{
"properties": {
"mandateResourceId": {
"description": "Technical resource identification\n",
"allOf": [
{
"$ref": "#\/definitions\/UUID"
}
]
},
"mandateStatus": {
"description": "authentication status of the mandate\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateStatus"
}
]
},
"mandateReasonCode": {
"description": "Mandate reason code\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateReasonCode"
}
]
},
"mandateReasonProprietary": {
"description": "Propietary mandate reason code\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"_links": {
"description": "A list of hyperlinks to be recognised by the API Client. \nType of links admitted in this response (which might be extended by single ASPSPs as indicated in its documentation) are defined in [oFA SMPF] generically for all Transaction Initiation Response messages. \n",
"allOf": [
{
"$ref": "#\/definitions\/_links_201_Mandates"
}
]
},
"psuMessage": {
"description": "Text to be displayed to the PSU, e.g. in a Decoupled SCA Approach\n",
"allOf": [
{
"$ref": "#\/definitions\/Max512Text"
}
]
}
},
"required": [
"mandateStatus",
"mandateResourceId",
"_links"
],
"type": "object",
"additionalProperties": true
}
{
"type": "object",
"required": [
"mandateId",
"type",
"creditor",
"debtor",
"debtorAccount"
],
"properties": {
"mandateId": {
"description": "Unique identification, as assigned by the creditor, to unambiguously identify the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"type": {
"description": "Specifies the type of mandate, such as paper, electronic or scheme.\n",
"allOf": [
{
"$ref": "#\/definitions\/mandateType"
}
]
},
"occurrences": {
"description": "Provides details of the duration of the mandate and occurrence of the underlying direct debit transactions.\n",
"allOf": [
{
"$ref": "#\/definitions\/ocurrences"
}
]
},
"firstCollectionAmount": {
"description": "Amount different from the collection amount, as it includes the costs associated with the first debited amount.\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"collectionAmount": {
"description": "Fixed amount to be collected from the debtor's account\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"maximumAmount": {
"description": "Maximum amount that may be collected from the debtor's account, per instruction.\n",
"allOf": [
{
"$ref": "#\/definitions\/amount"
}
]
},
"reasonCode": {
"description": "Provides the reason for the setup of the mandate as an ISO code.\n",
"allOf": [
{
"$ref": "#\/definitions\/MandateSetupReasonCode"
}
]
},
"reasonProprietary": {
"description": "Provides the reason for the setup of the mandate as a proprietary code.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"creditorSchemeIdentification": {
"description": "Credit party that signs the mandate. Could be mandated by ASPSP to fulfil requirements of the related direct debit schemes.\n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"creditor": {
"description": "Party that signs the mandate and to whom an amount of money is due.\n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"creditorAccount": {
"description": "This attribute is optional by default, but maybe mandated by ASPSPs or Direct Debit Schemes. If so, this must be documented accordingly in e.g. related Discovery Services.\n",
"allOf": [
{
"$ref": "#\/definitions\/accountReference"
}
]
},
"creditorAgent": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/agentDescription"
}
]
},
"ultimateCreditor": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"debtor": {
"description": "In case of synchronous authorisation, this attribute might be made optional by rules of direct debit schemes or the implementing ASPSP in case the debtorAccount is provided. \n",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"debtorAccount": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/accountReference"
}
]
},
"ultimateDebtor": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/extendedPartyDescription"
}
]
},
"mandateReference": {
"description": "Reference assigned by a creditor or ultimate creditor for internal usage for the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"referredDocument": {
"description": "Provides information to identify the underlying documents associated with the mandate.\n",
"allOf": [
{
"$ref": "#\/definitions\/referredMandateDocumentInformation"
}
]
},
"ServiceLevelCode": {
"description": "See document \\\"openFinance API Framework Data Dictionary\\\", section \\\"Other ISO-related basic Types\\\" for more details.\n",
"allOf": [
{
"$ref": "#\/definitions\/ServiceLevelCode"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"BKTR",
"G001",
"G002",
"G003",
"G004",
"NPCA",
"NUGP",
"NURG",
"PRPT",
"SDVA",
"SEPA",
"SVDE",
"URGP",
"URNS",
"INST",
"SRTP",
"SVAT",
"G006",
"G007",
"G005",
"G009",
"WFSM",
"EOLO"
],
"example": "SEPA"
}
{
"type": "string",
"maxLength": 2048,
"example": "Text, maximum of 2048 characters."
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_409_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
{
"type": "object",
"additionalProperties": {
"$ref": "#\/definitions\/hrefType"
},
"properties": {
"scaOAuth": {
"$ref": "#\/definitions\/hrefType"
},
"confirmation": {
"$ref": "#\/definitions\/hrefType"
},
"self": {
"$ref": "#\/definitions\/hrefType"
},
"status": {
"$ref": "#\/definitions\/hrefType"
},
"scaStatus": {
"$ref": "#\/definitions\/hrefType"
}
}
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_403_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Preferred Method\" for more details.
{
"type": "string",
"enum": [
"LETT",
"MAIL",
"PHON",
"FAXX",
"CELL"
],
"example": "MAIL"
}
{
"type": "string",
"enum": [
"BANK",
"CBID",
"CHID",
"CINC",
"COID",
"CUST",
"DUNS",
"EMPL",
"GS1G",
"SREN",
"SRET",
"TXID",
"BDID",
"BOID"
],
"example": "BOID"
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_400"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_403"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Ocurrences\" for more details.
{
"type": "object",
"required": [
"sequenceType"
],
"properties": {
"sequenceType": {
"description": "A code allocated to a business entity or to a financial institution by a Registration Authority under an international identification scheme.",
"allOf": [
{
"$ref": "#\/definitions\/SequenceTypeCode"
}
]
},
"frequencyType": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/FrequencyCode"
}
]
},
"duration": {
"description": "Length of time for which the mandate remains valid.",
"allOf": [
{
"$ref": "#\/definitions\/duration"
}
]
},
"firstCollectionDate": {
"description": "Date of the first collection of a direct debit as per the mandate.",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
},
"finalCollectionDate": {
"description": "Date of the final collection of a direct debit as per the mandate.",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
}
}
}
{
"type": "string",
"maxLength": 500,
"example": "Text, maximum of 500 characters."
}
Body of the response for a successful cancel mandate request.
{
"type": "object",
"required": [
"mandateStatus"
],
"properties": {
"mandateStatus": {
"$ref": "#\/definitions\/MandateStatus"
},
"_links": {
"$ref": "#\/definitions\/_linksMandateCancellation"
}
}
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_400_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[A-Z]{3}",
"example": "EUR"
}
See document \"openFinance API Framework Data Dictionary\", section
{
"type": "string",
"enum": [
"Daily",
"Weekly",
"EveryTwoWeeks",
"Monthly",
"EveryTwoMonths",
"Quarterly",
"SemiAnnual",
"Annual",
"MonthlyVariable"
],
"example": "Monthly"
}
{
"type": "string",
"maxLength": 70,
"example": "Text, maximum of 70 characters."
}
See document \"openFinance API Framework Data Dictionary\", section \"Mandate Type\" for more details.
{
"type": "object",
"properties": {
"localInstrumentCode": {
"description": "External List e.g. Core, B2B, DDMC (for electronic mandate)",
"allOf": [
{
"$ref": "#\/definitions\/ExternalLocalInstrumentCode"
}
]
},
"localInstrumentProprietary": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"serviceLevelCode": {
"description": "External code",
"allOf": [
{
"$ref": "#\/definitions\/ServiceLevelCode"
}
]
},
"serviceLevelProprietary": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"categoryPurposeCode": {
"description": "External list",
"allOf": [
{
"$ref": "#\/definitions\/CategoryPurposeCode"
}
]
},
"categoryPurposeProprietary": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"classificationCode": {
"description": "FIXE, USGB, VARI (internal code)\n",
"allOf": [
{
"$ref": "#\/definitions\/ClassificationCode"
}
]
},
"classificationProprietary": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Referred Mandate Document Information\" for more details.
{
"type": "object",
"properties": {
"typeCode": {
"description": "Specifies the type of referred document, provided as code.\n",
"allOf": [
{
"$ref": "#\/definitions\/ReferredDocumentTypeCode"
}
]
},
"typeProprietary": {
"description": "Specifies the type of referred document, provided in proprietary encoding.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"typeIssuer": {
"description": "Issuer of the document type.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"number": {
"description": "Unique and unambiguous identification of the referred document.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"creditorReference": {
"description": "Unique and unambiguous identification as assigned by the creditor to the referred document shared with the debtor for its own reference.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"relatedDate": {
"description": "Date associated with the referred document.\n",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Mandate Classification Code\" for more details.
{
"type": "string",
"enum": [
"FIXE",
"USGB",
"VARI"
],
"example": "FIXE"
}
See document \"openFinance API Framework Data Dictionary\", section \"Mandate Setup Reason Code\" for more details.
{
"type": "string"
}
See document \"openFinance API Framework Data Dictionary\", section \"href Type\" for more details.
{
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"description": "",
"type": "string"
}
}
}
A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when processing the request.
Remark: All links can be relative or full links, to be decided by the ASPSP.
Type of links admitted in this response, (further links might be added for ASPSP defined extensions): BOI Remarks: Added by BOI
- 'scaOAuth': In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.
{
"type": "object",
"additionalProperties": {
"$ref": "#\/definitions\/hrefType"
},
"properties": {
"scaOAuth": {
"$ref": "#\/definitions\/hrefType"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Links\" for more details.
{
"type": "object",
"properties": {
"scaOAuth": {
"description": "The link refers to a JSON document specifying the OAuth details of the ASPSP's authorisation server. JSON document follows the definition given in [RFC 8414].\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"confirmation": {
"description": "\\\"confirmation\\\": Might be added by the ASPSP if either the \\\"scaRedirect\\\" or \\\"scaOAuth\\\" hyperlink is returned in the same response message. \nThis hyperlink defines the URL to the resource which needs to be updated with \n* a confirmation code as retrieved after the plain redirect authentication process with the ASPSP authentication server or\n* an access token as retrieved by submitting an authorization code after the integrated Oauth based authentication process with the ASPSP authentication server.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"self": {
"description": "The link to the payment initiation resource created by the request itself. \nThis link can be used later to retrieve the transaction status of the payment initiation.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"status": {
"description": "A link to retrieve the status of the transaction resource.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"transactionfees": {
"description": "The link is to the status resource. \nThis link is only added within the authorisation process in case fee information is available via the status resource.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"scaStatus": {
"description": "A link to retrieve the status of the authorisation or cancellation-authorisation sub-resource.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"account": {
"description": "A link to the resource providing the details of one account\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"savingsAccount": {
"description": "A link to the resource providing the details of a savings account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"loanAccount": {
"description": "A link to the resource providing the details of a loan account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"balances": {
"description": "A link to the resource providing the balance of a dedicated account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"transactions": {
"description": "A link to the resource providing the transaction history of a dedicated account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"cardAccount": {
"description": "A link to the resource providing the details of one card account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"cardTransactions": {
"description": "A link to the resource providing the transaction history of a dedicated card account.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"transactionDetails": {
"description": "A link to the resource providing details of a dedicated transaction.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"ibanCheck": {
"description": "A link to the endpoint offering the addressed iban check result.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"paymentInitiation": {
"description": "A link to an initiation related to a payment resource.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"securitiesAccount": {
"description": "A link to the resource providing the details of one securitiesAccount.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"positions": {
"description": "A link to the resource providing the list of positions of one securitiesAccount.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"orders": {
"description": "A link to the resource providing the list of orders of one securitiesAccount.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"orderDetails": {
"description": "A link to the resource providing details of one specific order.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"relatedOrders": {
"description": "An array of links to request order details of related orders related to the order that is represented by the data structure containing this element \n(e.g. other orders that originated from the same order split as this order). \n",
"type": "array",
"items": {
"$ref": "#\/definitions\/hrefType"
}
},
"relatedTransactions": {
"description": "An array of links to request securities transaction details of transactions that resulted from this order.\n",
"type": "array",
"items": {
"$ref": "#\/definitions\/hrefType"
}
},
"subscription": {
"description": "A link to the resource providing the details of a subscription for Push AIS Services.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"entryStatusRevoked": {
"description": "Links to entry endpoints where the entry status is revoked.\n",
"type": "array",
"items": {
"$ref": "#\/definitions\/hrefType"
}
},
"first": {
"description": "Navigation link for paginated account reports.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"next": {
"description": "Navigation link for paginated account reports.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"previous": {
"description": "Navigation link for paginated account reports.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"last": {
"description": "Navigation link for paginated account reports.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"download": {
"description": "Download link for huge AIS data packages.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"confirmInitiation": {
"description": "link to a confirmation endpoint, where a payment initiation needs to be confirmed explicitly by the API Client for execution.\n",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"aspspParameters": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"aspspContacts": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
},
"aspspDowntimes": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/hrefType"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"format": "uuid",
"example": "99435c7e-ad88-49ec-a2ad-99ddcb1f5555"
}
See document \"openFinance API Framework Data Dictionary\", section \"Generic Financial Institution Identification\" for more details.
{
"type": "object",
"required": [
"identification"
],
"properties": {
"identification": {
"description": "Unique and unambiguous identification of a financial insitution.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"schemeNameCode": {
"description": "An entry provided by an external ISO code list\n",
"allOf": [
{
"$ref": "#\/definitions\/FinancialInstitutionIdentificationCode"
}
]
},
"schemeNameProprietary": {
"description": "A scheme name defined in a proprietary way.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"issuer": {
"description": "Issuer of the identification\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Financial Institution Identification\" for more details.
{
"type": "object",
"properties": {
"bicfi": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/BICFI"
}
]
},
"clearingSystemMemberId": {
"description": "Information used to identify a member within a clearing system.\n",
"allOf": [
{
"$ref": "#\/definitions\/clearingSystemMemberIdentification"
}
]
},
"name": {
"description": "Name of the financial institution\n",
"allOf": [
{
"$ref": "#\/definitions\/Max140Text"
}
]
},
"postalAddress": {
"description": "Postal Address of the financial institution.\n",
"allOf": [
{
"$ref": "#\/definitions\/postalAddress"
}
]
},
"other": {
"description": "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n",
"allOf": [
{
"$ref": "#\/definitions\/genericFinancialInstitutionIdentification"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Authentication Type\" for more details.
{
"type": "string",
"enum": [
"SMS_OTP",
"CHIP_OTP",
"PHOTO_OTP",
"PUSH_OTP",
"SMTP_OTP"
],
"example": "PUSH_OTP"
}
{
"type": "string",
"maxLength": 35,
"example": "Text, maximum of 35 characters."
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"RCUR",
"OOFF"
],
"example": "OOFF"
}
An alias to access a payment account via a registered mobile phone number.
{
"type": "string",
"pattern": "^[0-9]{3}-\\+?[1-9]\\d{1,14}(\\s?\\d{1,13})*$"
}
See document \"openFinance API Framework Data Dictionary\", section \"Account Reference\" for more details.
{
"type": "object",
"properties": {
"iban": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/IBAN"
}
]
},
"bban": {
"description": "BBAN of the account. This data elements is used for payment accounts which have no IBAN.\n",
"allOf": [
{
"$ref": "#\/definitions\/BBAN"
}
]
},
"maskedPan": {
"description": "Primary Account Number (PAN) of a card in a masked form.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"msisdn": {
"description": "An alias to access a payment account via a registered mobile phone number.\n",
"allOf": [
{
"$ref": "#\/definitions\/msisdn"
}
]
},
"other": {
"description": "An alias with a proprietary coding\n",
"allOf": [
{
"$ref": "#\/definitions\/genericAccountIdentification"
}
]
},
"typeCode": {
"description": "Remark: Shall not be used in the consent model, since account category provides enough information for the ASPSP.\n",
"allOf": [
{
"$ref": "#\/definitions\/CashAccountType"
}
]
},
"typeProprietary": {
"description": "Remark: Shall not be used in the consent model, since account category provides enough information for the ASPSP.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"currency": {
"description": "ISO 4217 Alpha 3 currency code\n",
"allOf": [
{
"$ref": "#\/definitions\/CurrencyCode"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}",
"example": "FR7612345987650123456789014"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more detail
{
"type": "string",
"enum": [
"ATBLZ",
"AUBSB",
"CACPA",
"CHBCC",
"CHSIC",
"CNAPS",
"DEBLZ",
"ESNCC",
"GBDSC",
"GRBIC",
"HKNCC",
"IENCC",
"INFSC",
"ITNCC",
"JPZGN",
"NZNCC",
"PLKNR",
"PTNCC",
"RUCBC",
"SESBA",
"SGIBG",
"THCBC",
"TWNCC",
"USABA",
"USPID",
"ZANCC",
"NZRSA",
"MZBMO",
"CNCIP",
"KRBOK"
],
"example": "DEBLZ"
}
{
"type": "string",
"maxLength": 16,
"example": "16 Chars at most"
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_405"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_405"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_404_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted\n",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_404"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"CACC"
],
"example": "CACC"
}
See document \"openFinance API Framework Data Dictionary\", section \"Generic Account Identification\" for more details.
{
"type": "object",
"required": [
"identification"
],
"properties": {
"identification": {
"description": "Unique and unambiguous identification of an account.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"schemeNameCode": {
"description": "An entry provided by an external ISO code list\n",
"allOf": [
{
"$ref": "#\/definitions\/AccountIdentificationCode"
}
]
},
"schemeNameProprietary": {
"description": "A scheme name defined in a proprietary way.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"issuer": {
"description": "Issuer of the identification\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Postal Address\" for more details.
{
"type": "object",
"properties": {
"addressLines": {
"description": "At most seven entries are permitted. May only be used, if none of the structured address elements \\\"streetName\\\", \\\"buildingNumber\\\", \\\"postcode\\\" or \\\"townName\\\" is used.\n*Remark:* For SEPA transactions this is further restricted to a maximum of 1 entry.\n",
"type": "array",
"maxItems": 7,
"items": {
"$ref": "#\/definitions\/Max140Text"
}
},
"department": {
"description": "Identification of a division of a large organisation or building.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"subDepartment": {
"description": "Identification of a sub-division of a large organisation or building.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"streetName": {
"description": "Name of a street or thoroughfare.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"buildingNumber": {
"description": "Number that identifies the position of a building on a street.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max16Text"
}
]
},
"buildingName": {
"description": "Name of the building or house.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"floor": {
"description": "Floor or storey within a building.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"postBox": {
"description": "Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max16Text"
}
]
},
"room": {
"description": "Building room number.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"postCode": {
"description": "Identifier consisting of a group of letters and\/or numbers that is added to a postal address to assist the sorting of mail.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max16Text"
}
]
},
"townName": {
"description": "Name of a built-up area, with defined boundaries, and a local government. \n*Usage Rule:* If address lines are not used, this attribute is mandatrory.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"townLocationName": {
"description": "Specific location name within the town.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"districtName": {
"description": "Identifies a subdivision within a country sub-division.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"countrySubDivision": {
"description": "Identifies a subdivision of a country such as state, region, county.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"country": {
"description": "Nation with its own government.\n*Usage Rule:* If address lines are not used, this attribute is mandatrory.\n",
"allOf": [
{
"$ref": "#\/definitions\/CountryCode"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Generic Organisation Identification\" for more details.
{
"type": "object",
"required": [
"identification"
],
"properties": {
"identification": {
"description": "Unique and unambiguous identification of an organisation.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"schemeNameCode": {
"description": "An entry provided by an external ISO code list\n",
"allOf": [
{
"$ref": "#\/definitions\/OrganisationIdentificationCode"
}
]
},
"schemeNameProprietary": {
"description": "A scheme name defined in a proprietary way.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"issuer": {
"description": "Issuer of the identification\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
Psu Id number or passport number.
{
"type": "string",
"pattern": "^([0-9]{9}|[A-Za-z]{2}-([A-Za-z0-9]){1,16})$"
}
See document \"openFinance API Framework Data Dictionary\", section \"Person Identification\" for more details.
{
"type": "object",
"required": [
"identification"
],
"properties": {
"identification": {
"description": "Unique and unambiguous identification of a oersib.\n",
"allOf": [
{
"$ref": "#\/definitions\/psuId"
}
]
},
"schemeNameCode": {
"description": "An entry provided by an external ISO code list\n",
"allOf": [
{
"$ref": "#\/definitions\/PersonIdentificationCode"
}
]
},
"schemeNameProprietary": {
"description": "A scheme name defined in a proprietary way.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"issuer": {
"description": "Issuer of the identification\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Private Identification\" for more details.
{
"type": "object",
"properties": {
"birthDate": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
},
"provinceOfBirth": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"cityOfBirth": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"countryOfBirth": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/CountryCode"
}
]
},
"others": {
"description": "Unique identification of a person, as assigned by an institution, using an identification scheme. \nShall be used if none of the above attributes is used.\n",
"type": "array",
"items": {
"$ref": "#\/definitions\/personIdentification"
}
}
}
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_400"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_400"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted\n",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_409"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_401"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_401"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_404"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_404"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"AIIN",
"BBAN",
"CUID",
"UPIC"
],
"example": "AIIN"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"BONU",
"CASH",
"CBLK",
"CCRD",
"CORT",
"DCRD",
"DIVI",
"DVPM",
"EPAY",
"FCIN",
"FCOL",
"GP2P",
"GOVT",
"HEDG",
"ICCP",
"IDCP",
"INTC",
"INTE",
"LBOX",
"LOAN",
"MP2B",
"MP2P",
"OTHR",
"PENS",
"RPRE",
"RRCT",
"RVPM",
"SALA",
"SECU",
"SSBE",
"SUPP",
"TAXS",
"TRAD",
"TREA",
"VATX",
"WHLD",
"SWEP",
"TOPG",
"ZABA",
"VOST",
"FCDT",
"CIPC",
"CONC"
],
"example": "OTHR"
}
{
"type": "string",
"maxLength": 256,
"example": "Text, maximum of 256 characters."
}
See document \"openFinance API Framework Data Dictionary\", section \"Clearing System Member Identification\" for more details.
{
"type": "object",
"properties": {
"memberId": {
"description": "Identification of a member of a clearing system.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"clearingSystemIdentificationCode": {
"description": "Identification of a clearing system, in a coded form as published in an external list.\n",
"allOf": [
{
"$ref": "#\/definitions\/ClearingSystemIdentificationCode"
}
]
},
"clearingSystemIdentificationProprietary": {
"description": "Identification code for a clearing system, that has not yet been identified in the list of clearing systems.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Organisation Identification\" for more details.
{
"type": "object",
"properties": {
"anyBIC": {
"description": "A code allocated to a business entity or to a financial institution by a Registration Authority under an international identification scheme.\n",
"allOf": [
{
"$ref": "#\/definitions\/BICFI"
}
]
},
"lei": {
"description": "Legal Entity Identifier.\n",
"allOf": [
{
"$ref": "#\/definitions\/LEI"
}
]
},
"others": {
"description": "Unique identification of an organisation, as assigned by an institution, using an identification scheme.\n",
"type": "array",
"items": {
"$ref": "#\/definitions\/genericOrganisationIdentification"
}
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Extended Party Description\" for more details.
{
"type": "object",
"properties": {
"name": {
"description": "Name of the party.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max140Text"
}
]
},
"postalAddress": {
"description": "Postal Address of the party.\n",
"allOf": [
{
"$ref": "#\/definitions\/postalAddress"
}
]
},
"identification": {
"description": "Identification of the party.\n",
"allOf": [
{
"$ref": "#\/definitions\/partyIdentification"
}
]
},
"countryOfResidence": {
"description": "Country in which a person resides (the place of a person's home). \nIn the case of a company, it is the country from which the affairs of that company are directed.\n",
"allOf": [
{
"$ref": "#\/definitions\/CountryCode"
}
]
},
"contactDetails": {
"description": "Set of elements used to indicate how to contact the party.\n",
"allOf": [
{
"$ref": "#\/definitions\/contactDetails"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Agent Description\" for more details.
{
"type": "object",
"required": [
"financialInstitutionId"
],
"properties": {
"financialInstitutionId": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/financialInstitutionIdentification"
}
]
},
"branchIdentificationId": {
"description": "Unique and unambiguous identification of a branch of a financial institution.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"branchIdentificationName": {
"description": "Name by which an agent is known and which is usually used to identify that agent.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max140Text"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Authentication Object\" for more details.
{
"type": "object",
"required": [
"authenticationType",
"authenticationMethodId",
"name"
],
"properties": {
"authenticationType": {
"description": "Type of the authentication method.\n",
"allOf": [
{
"$ref": "#\/definitions\/AuthenticationType"
}
]
},
"authenticationVersion": {
"description": "Depending on the \\\"authenticationType\\\". This version can be used by differentiating authentication tools used within performing OTP generation in the same authentication type. \nThis version can be referred to in the ASPSP's documentation.\n",
"type": "string"
},
"authenticationMethodId": {
"description": "An identification provided by the ASPSP for the later identification of the authentication method selection.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"name": {
"description": "This is the name of the authentication method defined by the PSU in the Online Banking frontend of the ASPSP. \nAlternatively this could be a description provided by the ASPSP like \\\"SMS OTP on phone +49160 xxxxx 28\\\".\nThis name shall be used by the TPP when presenting a list of authentication methods to the PSU, if available.\n",
"type": "string"
},
"explanation": {
"description": "detailed information about the SCA method for the PSU\n",
"type": "string"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Duration\" for more details.
{
"type": "object",
"required": [
"fromDate"
],
"properties": {
"fromDate": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
},
"toDate": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/ISODate"
}
]
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Referred Document Type Code\" for more details.
{
"type": "string",
"enum": [
"MSIN",
"CNFA",
"DNFA",
"CINV",
"CREN",
"DEBN",
"HIRI",
"SBIN",
"CMCN",
"SOAC",
"DISP",
"BOLD",
"VCHR",
"AROI",
"TSUT",
"PUOR"
],
"example": "PUOR"
}
See document \"openFinance API Framework Data Dictionary\", section \"Mandate Status\" for more details.
{
"type": "string",
"enum": [
"received",
"rejected",
"partiallyAuthorised",
"valid",
"revokedByPsu",
"expired",
"terminatedByTpp"
],
"example": "received"
}
See document \"openFinance API Framework Data Dictionary\", section \"Name Prefix Code\" for more details.
{
"type": "string",
"enum": [
"DOCT",
"MADM",
"MISS",
"MIST",
"MIKS"
],
"example": "MADM"
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_405_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}",
"example": "ECBFDEFFFIM"
}
See document \"openFinance API Framework Data Dictionary\", section \"Mandate Reason Code\" for more details.
{
"type": "string",
"enum": [
"AC01",
"AC04",
"AC06",
"AG01",
"AG02",
"AM02",
"AM03",
"AM05",
"BE01",
"BE04",
"BE05",
"BE06",
"BE07",
"DT01",
"FF01",
"MD01",
"MD02",
"MD07",
"MD08",
"MD09",
"MD10",
"MD11",
"MD12",
"MD13",
"MD14",
"MD15",
"MD16",
"MD17",
"MD18",
"MD19",
"MD20",
"MD21",
"MD22",
"MD23",
"MS02",
"MS03",
"NARR",
"RC01",
"RF01",
"RR01",
"RR02",
"RR03",
"RR04",
"SL01",
"SL11",
"SL12",
"SL13",
"SL14"
],
"example": "SL14"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[A-Z]{2}",
"example": "SE"
}
{
"type": "string",
"maxLength": 140,
"example": "Text, maximum of 140 characters."
}
{
"type": "string",
"maxLength": 512,
"example": "Text, maximum of 512 characters."
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted\n",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_405"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"enum": [
"ARNU",
"CCPT",
"CUST",
"DRLC",
"EMPL",
"NIDN",
"SOSE",
"TELE",
"TXID",
"POID"
],
"example": "NIDN"
}
See document \"openFinance API Framework Data Dictionary\", section \"Amount\" for more details.
{
"type": "object",
"required": [
"currency",
"amount"
],
"properties": {
"currency": {
"description": "ISO 4217 Alpha 3 currency code\n",
"allOf": [
{
"$ref": "#\/definitions\/CurrencyCode"
}
]
},
"amount": {
"description": "The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus.\nThe decimal separator is a dot.\nExample: Valid representations for EUR with up to two decimals are:\n* 1056\n* 5768.2\n* -1.50\n* 5877.78\n",
"type": "string",
"pattern": "-?[0-9]{1,14}(\\.[0-9]{1,3})?"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Exchange Rate Type Code\" for more details.
{
"type": "string",
"enum": [
"MASAV"
],
"example": "MASAV"
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"enum": [
"STATUS_INVALID"
],
"example": "STATUS_INVALID"
}
See document \"openFinance API Framework Data Dictionary\", section \"Contact Details\" for more details.
{
"type": "object",
"properties": {
"namePrefix": {
"description": "Specifies the terms used to formally address a person.\n",
"allOf": [
{
"$ref": "#\/definitions\/NamePrefixCode"
}
]
},
"name": {
"description": "",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"phoneNumber": {
"description": "pattern \\+[0-9]{1,3}-[0-9()+\\-]{1,30}\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"mobileNumber": {
"description": "pattern \\+[0-9]{1,3}-[0-9()+\\-]{1,30}\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"faxNumber": {
"description": "pattern \\+[0-9]{1,3}-[0-9()+\\-]{1,30}\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"emailAddress": {
"description": "Address for electronic mail (e-mail).\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"emailPurpose": {
"description": "Purpose for which an email address may be used.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"jobTitle": {
"description": "Title of the function.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"responsibility": {
"description": "Role of a person in an organisation.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"department": {
"description": "Identification of a division of a large organisation or building.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max35Text"
}
]
},
"preferredMethod": {
"description": "Preferred method used to reach the contact.\n",
"allOf": [
{
"$ref": "#\/definitions\/PreferredMethod"
}
]
}
}
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_409"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_409"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string"
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"type": "string",
"enum": [
"SERVICE_INVALID"
],
"example": "SERVICE_INVALID"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"format": "date",
"example": "2020-01-01"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[A-Z0-9]{18,18}[0-9]{2,2}",
"example": "549300DTUYXVMJXZNY75"
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"type": "string",
"enum": [
"RESOURCE_UNKNOWN"
],
"example": "RESOURCE_UNKNOWN"
}
See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
{
"type": "string",
"pattern": "[a-zA-Z0-9]{1,30}",
"example": "BARC12345612345678"
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"type": "string",
"enum": [
"SERVICE_BLOCKED",
"CONSENT_UNKNOWN",
"RESOURCE_UNKNOWN",
"RESOURCE_EXPIRED"
],
"example": "SERVICE_BLOCKED"
}
{
"type": "object",
"required": [
"category",
"code"
],
"properties": {
"category": {
"description": "Only \\\"ERROR\\\" or \\\"WARNING\\\" permitted",
"type": "string"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_401"
},
"path": {
"type": "string"
},
"text": {
"$ref": "#\/definitions\/Max500Text"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"type": "string",
"enum": [
"CERTIFICATE_INVALID",
"ROLE_INVALID",
"CERTIFICATE_EXPIRED",
"CERTIFICATE_BLOCKED",
"CERTIFICATE_REVOKED",
"CERTIFICATE_MISSING",
"CLIENT_INVALID",
"CLIENT_INCONSISTENT",
"SIGNATURE_INVALID",
"SIGNATURE_MISSING",
"PSU_CREDENTIALS_INVALID",
"CORPORATE_ID_INVALID",
"CONSENT_INVALID",
"CONSENT_EXPIRED",
"TOKEN_UNKNOWN",
"TOKEN_INVALID",
"TOKEN_EXPIRED"
],
"example": "CERTIFICATE_INVALID"
}
See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
{
"type": "string",
"enum": [
"FORMAT_ERROR",
"PARAMETER_NOT_CONSISTENT",
"PARAMETER_NOT_SUPPORTED",
"SERVICE_INVALID",
"CONSENT_UNKNOWN",
"RESOURCE_UNKNOWN",
"RESOURCE_EXPIRED",
"RESOURCE_BLOCKED",
"TIMESTAMP_INVALID",
"PERIOD_INVALID",
"SCA_METHOD_UNKNOWN",
"SCA_INVALID"
],
"example": "FORMAT_ERROR"
}
{
"type": "object",
"properties": {
"apiClientMessages": {
"type": "array",
"items": {
"$ref": "#\/definitions\/clientMessageInformation_401_Mandates"
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Challenge\" for more details.
{
"type": "object",
"properties": {
"image": {
"description": "PNG data (max. 512 kilobyte) to be displayed to the PSU, Base64 encoding, cp. [RFC4648].\nThis attribute is used only, when PHOTO_OTP or CHIP_OTP is the selected SCA method.\n",
"type": "string"
},
"data": {
"description": "A collection of challenge data\n",
"type": "array",
"items": {
"type": "string"
}
},
"imageLink": {
"description": "A link where the ASPSP will provides the challenge image for the TPP.\n",
"type": "string"
},
"otpMaxLength": {
"description": "The maximal length for the OTP to be typed in by the PSU.\n",
"type": "integer"
},
"otpFormat": {
"description": "The format type of the OTP to be typed in. The admitted values are \\\"characters\\\" or \\\"integer\\\".\n",
"type": "string"
},
"additionalInformation": {
"description": "Additional explanation for the PSU to explain e.g. fallback mechanism for the chosen SCA method. The TPP is obliged to show this to the PSU.\n",
"type": "string"
}
}
}
Standardised definition of reporting error information according to [RFC7807].
{
"type": "object",
"required": [
"type",
"code"
],
"properties": {
"type": {
"description": "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future.\n",
"type": "string",
"format": "uri",
"maxLength": 70
},
"title": {
"description": "Short human readable description of error type. Could be in local language. To be provided by ASPSPs.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max70Text"
}
]
},
"status": {
"description": "HTTP response code generated by the server.\nIf contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server. \n",
"type": "integer"
},
"detail": {
"description": "Detailed human readable text specific to this instance of the error. \n",
"allOf": [
{
"$ref": "#\/definitions\/Max500Text"
}
]
},
"instance": {
"description": "This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.\n",
"allOf": [
{
"$ref": "#\/definitions\/Max256Text"
}
]
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_403"
},
"additionalErrors": {
"description": "Array of Error Information Blocks.\nMight be used if more than one error is to be communicated\n",
"type": "array",
"items": {
"description": "This is a data element to support the declaration of additional errors in the context of [RFC7807].",
"type": "object",
"required": [
"code"
],
"properties": {
"title": {
"$ref": "#\/definitions\/Max70Text"
},
"detail": {
"$ref": "#\/definitions\/Max500Text"
},
"code": {
"$ref": "#\/definitions\/MessageCode_ServiceUnspecific_403"
}
}
}
},
"_links": {
"$ref": "#\/definitions\/links"
}
}
}
See document \"openFinance API Framework Data Dictionary\", section \"Party Identification\" for more details.
{
"type": "object",
"properties": {
"organisationId": {
"description": "An entry provided by an external ISO code list\n",
"allOf": [
{
"$ref": "#\/definitions\/organisationIdentification"
}
]
},
"privateId": {
"description": "A scheme name defined in a proprietary way.\n",
"allOf": [
{
"$ref": "#\/definitions\/privateIdentification"
}
]
}
}
}
{
"properties": {
"issuer": {
"type": "object",
"example": "https:\/\/mtls-api-nonprod.discountbank.co.il"
},
"authorization_endpoint": {
"type": "string",
"example": "https:\/\/api-nonprod.discountbank.co.il\/devapi\/cert\/mandate\/authorize"
},
"token_endpoint": {
"type": "string",
"example": "https:\/\/mtls-api-nonprod.discountbank.co.il\/devapi\/cert\/mandate\/token"
},
"response_types_supported": {
"type": "array",
"items": {
"type": "string"
},
"example": "[\"code\" ]"
}
},
"additionalProperties": false
}
{
"properties": {
"issuer": {
"type": "object",
"example": "https:\/\/mtls-api-nonprod.discountbank.co.il"
},
"authorization_endpoint": {
"type": "string",
"example": "https:\/\/api-nonprod.discountbank.co.il\/devapi\/cert\/mandate\/cancellation\/authorize"
},
"response_types_supported": {
"type": "array",
"items": {
"type": "string"
},
"example": "[\"code\" ]"
}
},
"additionalProperties": false
}
{
"properties": {
"response": {
"$ref": "#\/definitions\/well-known",
"example": "{ \"issuer\": \"https:\/\/mtls-api-nonprod.discountbank.co.il\", \"authorization_endpoint\": \"https:\/\/api-nonprod.discountbank.co.il\/development\/cert-dev\/mandate\/authorize\", \"token_endpoint\": \"https:\/\/mtls-api-nonprod.discountbank.co.il\/development\/cert-dev\/mandate\/token\", \"response_types_supported\": [ \"code\" ] }"
}
},
"additionalProperties": false
}
{
"properties": {
"response": {
"$ref": "#\/definitions\/well-known-cancellation",
"example": "{ \"issuer\": \"https:\/\/mtls-api-nonprod.discountbank.co.il\", \"authorization_endpoint\": \"https:\/\/api-nonprod.discountbank.co.il\/development\/cert-dev\/mandate\/cancellation\/authorize\", \"response_types_supported\": [ \"code\" ] }"
}
},
"additionalProperties": false
}