Paths
/domestic-vrp-consents
Create a domestic VRP consent
Create a domestic VRP consent
TPP client credential authorisation flow with the ASPSP
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
Every request will be processed only once per x-idempotency-key. The Idempotency Key will be valid for 24 hours.
{
"maxLength": 40,
"pattern": "^(?!\\s)(.*)(\\S)$"
}
A detached JWS signature of the body of the payload.
Indicates the user-agent that the PSU is using.
Default
application/json
application/jose+jwe
Default response
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
/domestic-vrp-consents/{ConsentId}
Retrieve a domestic VRP consent
Retrieve a domestic VRP consent
TPP client credential authorisation flow with the ASPSP
ConsentId
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
Indicates the user-agent that the PSU is using.
application/json
application/jose+jwe
Default response
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
Delete a domestic VRP
Delete a domestic VRP
TPP client credential authorisation flow with the ASPSP
ConsentId
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
Indicates the user-agent that the PSU is using.
application/json
application/jose+jwe
delete successful
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
/domestic-vrp-consents/{ConsentId}/funds-confirmation
Confirm availability of funds for a VRP
Confirm availability of funds for a VRP
OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU. The below example Authorization URL shows the personal channel. For business and commercial specific authorization URLs please refer to the well known endpoint or the Technical Implementation Guide.
ConsentId
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
A detached JWS signature of the body of the payload.
Indicates the user-agent that the PSU is using.
Default
application/json
application/jose+jwe
Default response
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
/domestic-vrps
Create a domestic VRP
Create a domestic VRP
OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU. The below example Authorization URL shows the personal channel. For business and commercial specific authorization URLs please refer to the well known endpoint or the Technical Implementation Guide.
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
A detached JWS signature of the body of the payload.
Indicates the user-agent that the PSU is using.
Default
application/json
application/jose+jwe
Default response
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
/domestic-vrps/{DomesticVRPId}
Retrieve a domestic VRP
Retrieve a domestic VRP
TPP client credential authorisation flow with the ASPSP
DomesticVRPId
The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC
{
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
The PSU's IP address if the PSU is currently logged in with the TPP.
An RFC4122 UID used as a correlation id.
An Authorisation Token as per https://tools.ietf.org/html/rfc6750
Indicates the user-agent that the PSU is using.
application/json
application/jose+jwe
Default response
Bad request
Unauthorized
Forbidden
Method Not Allowed
Not Acceptable
Unsupported Media Type
Too Many Requests
Internal Server Error
Definitions
{
"title": "OBError1",
"type": "object",
"properties": {
"ErrorCode": {
"description": "Low level textual error code, e.g., UK.OBIE.Field.Missing",
"type": "string"
},
"Message": {
"description": "A description of the error that occurred. e.g., 'A mandatory field isn't supplied' or 'RequestedExecutionDateTime must be in future'\nOBIE doesn't standardise this field",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"Path": {
"description": "Recommended but optional reference to the JSON Path of the field with error, e.g., Data.Initiation.InstructedAmount.Currency",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"Url": {
"description": "URL to help remediate the problem, or provide more information, or to API Reference, or help etc",
"type": "string"
}
},
"required": [
"ErrorCode",
"Message"
],
"minProperties": 1
}
An array of detail error codes, and messages, and URLs to documentation to help remediation.
{
"title": "OBErrorResponse1",
"type": "object",
"properties": {
"Code": {
"description": "High level textual error code, to help categorize the errors.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"Id": {
"description": "A unique reference for the error instance, for audit purposes, in case of unknown/unclassified errors.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"Message": {
"description": "Brief Error message, e.g., 'There is something wrong with the request parameters provided'",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"Errors": {
"type": "array",
"items": {
"$ref": "#/definitions/OBError1",
"minProperties": 1
},
"minItems": 1,
"minProperties": 1
}
},
"required": [
"Code",
"Message",
"Errors"
]
}
{
"title": "OBDomesticVRPConsentResponse",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data"
},
"Risk": {
"$ref": "#/definitions/OBRisk1"
},
"Links": {
"$ref": "#/definitions/Links"
},
"Meta": {
"description": "Meta Data relevant to the payload. At present no fields are used for VRP.",
"type": "object"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
]
}
{
"title": "OBDomesticVRPConsentRequest",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data1"
},
"Risk": {
"$ref": "#/definitions/OBRisk1"
}
},
"required": [
"Data",
"Risk"
]
}
{
"title": "OBDomesticVRPControlParameters",
"type": "object",
"properties": {
"ValidFromDateTime": {
"description": "^ Start date time for which the consent remains valid. | ISODateTime",
"type": "string",
"format": "date-time"
},
"ValidToDateTime": {
"description": "^ End date time for which the consent remains valid. | ISODateTime",
"type": "string",
"format": "date-time"
},
"MaximumIndividualAmount": {
"$ref": "#/definitions/MaximumIndividualAmount"
},
"PeriodicLimits": {
"type": "array",
"items": {
"$ref": "#/definitions/PeriodicLimit"
},
"minItems": 1
},
"VRPType": {
"description": "^ The types of payments that can be made under this VRP consent. This can be used to indicate whether this include sweeping payment or other ecommerce payments. | OBVRPConsentType - Namespaced Enumeration",
"type": "array",
"items": {
"type": "string"
},
"minItems": 1
},
"PSUAuthenticationMethods": {
"description": "^ Indicates that the PSU authentication methods supported. | OBVRPAuthenticationMethods - Namespaced Enumeration",
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"enum": [
"UK.OBIE.SCA",
"UK.OBIE.SCANotRequired"
]
},
"PSUInteractionTypes": {
"description": "^ Indicates interaction type, currently if customer is present or not present. | OBVRPInteractionTypes",
"type": "array",
"items": {
"type": "string"
},
"enum": [
"InSession",
"OffSession"
]
},
"SupplementaryData": {
"description": "^ Additional information that can not be captured in the structured fields and/or any other specific block",
"type": "object"
}
},
"required": [
"VRPType",
"PSUAuthenticationMethods",
"MaximumIndividualAmount",
"PeriodicLimits"
]
}
{
"title": "OBDomesticVRPInitiation",
"type": "object",
"properties": {
"DebtorAccount": {
"$ref": "#/definitions/OBCashAccountDebtorWithName"
},
"CreditorPostalAddress": {
"$ref": "#/definitions/OBPostalAddress6"
},
"CreditorAccount": {
"$ref": "#/definitions/OBCashAccountCreditor3"
},
"RemittanceInformation": {
"$ref": "#/definitions/RemittanceInformation"
}
}
}
^ Only incuded in the response if Data. ReadRefundAccount
is set to Yes
in the consent.
{
"title": "OBCashAccountDebtorWithName",
"type": "object",
"properties": {
"SchemeName": {
"description": "^ Name of the identification scheme, in a coded form as published in an external list. | Namespaced Enumeration OBExternalAccountIdentification4Code",
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.BBAN",
"UK.OBIE.IBAN",
"UK.OBIE.PAN",
"UK.OBIE.Paym",
"UK.OBIE.SortCodeAccountNumber"
]
},
"Identification": {
"description": "^ Identification assigned by an institution to identify an account. This identification is known by the account owner. | Max256Text",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "^ Name of the account, as assigned by the account servicing institution. Usage The account name is the name or names of the account owner(s) represented at an account level. The account name is not the product name or the nickname of the account.",
"type": "string",
"minLength": 1,
"maxLength": 350
},
"SecondaryIdentification": {
"description": "^ This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination) | Max34Text",
"type": "string",
"minLength": 1,
"maxLength": 34
}
},
"required": [
"SchemeName",
"Identification",
"Name"
]
}
{
"title": "OBCashAccountCreditor3",
"type": "object",
"properties": {
"SchemeName": {
"description": "^ Name of the identification scheme, in a coded form as published in an external list. | Namespaced Enumeration OBExternalAccountIdentification4Code",
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.BBAN",
"UK.OBIE.IBAN",
"UK.OBIE.PAN",
"UK.OBIE.Paym",
"UK.OBIE.SortCodeAccountNumber"
]
},
"Identification": {
"description": "^ Identification assigned by an institution to identify an account. This identification is known by the account owner. | Max256Text",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "^ Name of the account, as assigned by the account servicing institution. Usage The account name is the name or names of the account owner(s) represented at an account level. The account name is not the product name or the nickname of the account.",
"type": "string",
"minLength": 1,
"maxLength": 350
},
"SecondaryIdentification": {
"description": "^ This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination) | Max34Text",
"type": "string",
"minLength": 1,
"maxLength": 34
}
},
"required": [
"SchemeName",
"Identification",
"Name"
]
}
{
"title": "OBBranchAndFinancialInstitutionIdentification6",
"type": "object",
"properties": {
"SchemeName": {
"description": "^ 0..1) | `SchemeName` |Name of the identification scheme, in a coded form as published in an external list. |OBExternalFinancialInstitutionIdentification4Code",
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.BICFI"
]
},
"Identification": {
"description": "^ 0..1) | `Identification` |Unique and unambiguous identification of a financial institution or a branch of a financial institution. | Max35Text",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Name": {
"description": "^ 0..1) | `Name` | Name by which an agent is known and which is usually used to identify that agent. | Max140Text",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"PostalAddress": {
"$ref": "#/definitions/OBPostalAddress6"
}
}
}
{
"title": "OBDomesticVRPRequest",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data2"
},
"Risk": {
"$ref": "#/definitions/OBRisk1"
}
},
"required": [
"Data",
"Risk"
]
}
{
"title": "OBDomesticVRPResponse",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data3"
},
"Risk": {
"$ref": "#/definitions/OBRisk1"
},
"Links": {
"$ref": "#/definitions/Links"
},
"Meta": {
"description": "Meta Data relevant to the payload. At present no fields are used for VRP.",
"type": "object"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
]
}
{
"title": "OBDomesticVRPDetails",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data4"
}
}
}
The OBVRPFundsConfirmationRequest object must be used to request funds availability for a specific amount in the Debtor Account included in the VRP consents.
{
"title": "OBVRPFundsConfirmationRequest",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data5"
}
},
"required": [
"Data"
]
}
The confirmation of funds response contains the result of a funds availability check.
{
"title": "OBVRPFundsConfirmationResponse",
"type": "object",
"properties": {
"Data": {
"$ref": "#/definitions/Data6"
}
}
}
Availaility result, clearly indicating the availability of funds given the Amount in the request.
{
"title": "OBPAFundsAvailableResult1",
"type": "object",
"properties": {
"FundsAvailableDateTime": {
"description": "Date and time at which the funds availability check was generated.",
"type": "string",
"format": "date-time"
},
"FundsAvailable": {
"$ref": "#/definitions/FundsAvailable"
}
},
"required": [
"FundsAvailableDateTime",
"FundsAvailable"
]
}
{
"title": "OBCharge2",
"type": "object",
"properties": {
"ChargeBearer": {
"$ref": "#/definitions/OBChargeBearerType1Code"
}
},
"required": [
"ChargeBearer"
]
}
{
"title": "OBExternalStatus2Code",
"x-enum-elements": [
{
"name": "Authorised",
"description": ""
},
{
"name": "AwaitingFurtherAuthorisation",
"description": ""
},
{
"name": "Rejected",
"description": ""
}
],
"type": "string",
"enum": [
"Authorised",
"AwaitingFurtherAuthorisation",
"Rejected"
]
}
Specifies which party/parties will bear the charges associated with the processing of the payment transaction.
{
"title": "OBChargeBearerType1Code",
"x-enum-elements": [
{
"name": "BorneByCreditor",
"description": ""
},
{
"name": "BorneByDebtor",
"description": ""
},
{
"name": "FollowingServiceLevel",
"description": ""
},
{
"name": "Shared",
"description": ""
}
],
"type": "string",
"enum": [
"BorneByCreditor",
"BorneByDebtor",
"FollowingServiceLevel",
"Shared"
]
}
{
"title": "OBDomesticVRPInstruction",
"type": "object",
"properties": {
"InstructionIdentification": {
"description": "Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction. \nUsage: the instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. \nIt can be included in several messages related to the instruction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"EndToEndIdentification": {
"description": "Unique identification assigned by the initiating party to unambiguously identify the transaction. \nThis identification is passed on, unchanged, throughout the entire end-to-end chain. \nUsage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. \nIt can be included in several messages related to the transaction. \nOB: The Faster Payments Scheme can only access 31 characters for the EndToEndIdentification field",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"RemittanceInformation": {
"$ref": "#/definitions/OBVRPRemittanceInformation"
},
"LocalInstrument": {
"description": "User community specific instrument.\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.",
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.BACS",
"UK.OBIE.BalanceTransfer",
"UK.OBIE.CHAPS",
"UK.OBIE.Euro1",
"UK.OBIE.FPS",
"UK.OBIE.Link",
"UK.OBIE.MoneyTransfer",
"UK.OBIE.Paym",
"UK.OBIE.SEPACreditTransfer",
"UK.OBIE.SEPAInstantCreditTransfer",
"UK.OBIE.SWIFT",
"UK.OBIE.Target2"
]
},
"InstructedAmount": {
"$ref": "#/definitions/OBActiveOrHistoricCurrencyAndAmount"
},
"CreditorPostalAdress": {
"$ref": "#/definitions/OBPostalAddress6"
},
"CreditorAccount": {
"$ref": "#/definitions/OBCashAccountCreditor3"
},
"SupplementaryData": {
"description": "^ Additional information that can not be captured in the structured fields and/or any other specific block",
"type": "object"
}
},
"required": [
"InstructionIdentification",
"EndToEndIdentification",
"CreditorAccount",
"InstructedAmount"
]
}
Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system.
{
"title": "OBVRPRemittanceInformation",
"type": "object",
"properties": {
"Unstructured": {
"description": "Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"Reference": {
"description": "Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction. The PISP must populate this with the same value as specified in the ControlParameters.Reference field of the consent.",
"type": "string",
"minLength": 1,
"maxLength": 35
}
}
}
{
"title": "OBActiveOrHistoricCurrencyAndAmount",
"type": "object",
"properties": {
"Amount": {
"description": "A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.",
"type": "string",
"pattern": "^\\d{1,13}$|^\\d{1,13}\\.\\d{1,5}$"
},
"Currency": {
"description": "A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\".",
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"minLength": 3,
"maxLength": 3
}
},
"required": [
"Amount",
"Currency"
]
}
{
"title": "OBExternalPaymentChargeType1Code",
"x-enum-elements": [
{
"name": "Enum_UKOBIECHAPSOut",
"description": ""
},
{
"name": "Enum_UKOBIEBalanceTransferOut",
"description": ""
},
{
"name": "Enum_UKOBIEMoneyTransferOut",
"description": ""
}
],
"type": "string",
"enum": [
"UK.OBIE.CHAPSOut",
"UK.OBIE.BalanceTransferOut",
"UK.OBIE.MoneyTransferOut"
]
}
The Risk section is sent by the initiating party to the ASPSP. It is used to specify additional details for risk scoring for Payments.
{
"title": "OBRisk1",
"type": "object",
"properties": {
"PaymentContextCode": {
"$ref": "#/definitions/PaymentContextCode"
},
"MerchantCategoryCode": {
"description": "Category code conform to ISO 18245, related to the type of services or goods the merchant provides for the transaction.",
"type": "string",
"minLength": 3,
"maxLength": 4
},
"MerchantCustomerIdentification": {
"description": "The unique customer identifier of the PSU with the merchant.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"ContractPresentIndicator": {
"type": "boolean",
"description": "Indicates if Payee has a contractual relationship with the PISP."
},
"BeneficiaryPrepopulatedIndicator": {
"type": "boolean",
"description": "Indicates if PISP has immutably prepopulated payment details in for the PSU."
},
"PaymentPurposeCode": {
"type": "string",
"minLength": 3,
"maxLength": 4,
"description": "Category code, related to the type of services or goods that corresponds to the underlying purpose of the payment that conforms to Recommended UK Purpose Code in ISO 20022 Payment Messaging List"
},
"BeneficiaryAccountType": {
"$ref": "#/definitions/OBExternalExtendedAccountType1Code"
},
"DeliveryAddress": {
"$ref": "#/definitions/DeliveryAddress"
}
}
}
Links relevant to the payload
{
"title": "Links",
"type": "object",
"properties": {
"Self": {
"type": "string"
},
"First": {
"type": "string"
},
"Prev": {
"type": "string"
},
"Next": {
"type": "string"
},
"Last": {
"type": "string"
}
},
"required": [
"Self"
]
}
Set of elements used to provide details of a charge for the payment initiation.
{
"title": "Charge",
"type": "object",
"properties": {
"ChargeBearer": {
"$ref": "#/definitions/OBChargeBearerType1Code"
},
"Type": {
"$ref": "#/definitions/OBExternalPaymentChargeType1Code"
},
"Amount": {
"$ref": "#/definitions/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"ChargeBearer",
"Type",
"Amount"
]
}
{
"title": "Data",
"type": "object",
"properties": {
"ReadRefundAccount": {
"$ref": "#/definitions/ReadRefundAccount"
},
"ConsentId": {
"description": "Unique identification as assigned by the ASPSP to uniquely identify the consent resource. | Max128Text",
"type": "string"
},
"CreationDateTime": {
"description": "Date and time at which the resource was created.|ISODateTime",
"type": "string",
"format": "date-time"
},
"Status": {
"description": "Specifies the status of resource in code form. |Authorised AwaitingAuthorisation Rejected Revoked Expired",
"type": "string"
},
"StatusUpdateDateTime": {
"description": "Date and time at which the resource status was updated. | ISODateTime",
"type": "string",
"format": "date-time"
},
"ControlParameters": {
"$ref": "#/definitions/OBDomesticVRPControlParameters"
},
"Initiation": {
"$ref": "#/definitions/OBDomesticVRPInitiation"
},
"DebtorAccount": {
"$ref": "#/definitions/OBCashAccountDebtorWithName"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"ControlParameters",
"Initiation"
]
}
{
"title": "Data1",
"type": "object",
"properties": {
"ReadRefundAccount": {
"$ref": "#/definitions/ReadRefundAccount"
},
"ControlParameters": {
"$ref": "#/definitions/OBDomesticVRPControlParameters"
},
"Initiation": {
"$ref": "#/definitions/OBDomesticVRPInitiation"
}
},
"required": [
"ControlParameters",
"Initiation"
]
}
{
"title": "Data2",
"type": "object",
"properties": {
"ConsentId": {
"description": "Identifier for the Domestic VRP Consent that this payment is made under.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"PSUAuthenticationMethod": {
"description": "^ The authentication method that was used to authenicate the PSU. | OBVRPAuthenticationMethods - Namespaced Enumeration",
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.SCA",
"UK.OBIE.SCANotRequired"
]
},
"PSUInteractionType": {
"description": "^ The interaction type used",
"type": "string",
"enum": [
"InSession",
"OffSession"
]
},
"Initiation": {
"$ref": "#/definitions/OBDomesticVRPInitiation"
},
"Instruction": {
"$ref": "#/definitions/OBDomesticVRPInstruction"
}
},
"required": [
"ConsentId",
"PSUAuthenticationMethod",
"Initiation",
"Instruction"
]
}
{
"title": "Data3",
"type": "object",
"properties": {
"DomesticVRPId": {
"description": "Unique identification as assigned by the ASPSP to uniquely identify the domestic payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "Identifier for the Domestic VRP Consent that this payment is made under.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "Date and time at which the resource was created.",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/definitions/Status"
},
"StatusReason": {
"type": "string",
"x-namespaced-enum": [
"UK.OBIE.ExemptionNotApplied",
"UK.OBIE.OtherReason"
],
"description": "Reason Code provided for the status of a VRP. To be documented in the Developer Portal."
},
"StatusReasonDescription": {
"type": "string",
"minLength": 1,
"maxLength": 256,
"description": "Description related to provided Status/StatusReason"
},
"StatusUpdateDateTime": {
"description": "Date and time at which the resource status was updated.",
"type": "string",
"format": "date-time"
},
"ExpectedExecutionDateTime": {
"description": "Expected execution date and time for the payment resource.",
"type": "string",
"format": "date-time"
},
"ExpectedSettlementDateTime": {
"description": "Expected settlement date and time for the payment resource.",
"type": "string",
"format": "date-time"
},
"Refund": {
"$ref": "#/definitions/OBCashAccountDebtorWithName"
},
"Charges": {
"type": "array",
"items": {
"$ref": "#/definitions/Charge"
}
},
"Initiation": {
"$ref": "#/definitions/OBDomesticVRPInitiation"
},
"Instruction": {
"$ref": "#/definitions/OBDomesticVRPInstruction"
},
"DebtorAccount": {
"$ref": "#/definitions/OBCashAccountDebtorWithName"
}
},
"required": [
"DomesticVRPId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation",
"Instruction"
]
}
{
"title": "Data4",
"type": "object",
"properties": {
"PaymentStatus": {
"type": "array",
"items": {
"$ref": "#/definitions/PaymentStatus"
}
}
}
}
{
"title": "Data5",
"type": "object",
"properties": {
"ConsentId": {
"description": "Unique identification as assigned by the ASPSP to uniquely identify the funds confirmation consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Reference": {
"description": "nique reference, as assigned by the PISP, to unambiguously refer to the request related to the payment transaction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"InstructedAmount": {
"$ref": "#/definitions/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"ConsentId",
"InstructedAmount"
]
}
{
"title": "Data6",
"type": "object",
"properties": {
"FundsConfirmationId": {
"description": "Unique identification as assigned by the ASPSP to uniquely identify the funds confirmation resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "Unique identification as assigned by the ASPSP to uniquely identify the funds confirmation consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "Date and time at which the resource was created.",
"type": "string",
"format": "date-time"
},
"Reference": {
"description": "Unique reference, as assigned by the CBPII, to unambiguously refer to the request related to the payment transaction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"FundsAvailableResult": {
"$ref": "#/definitions/OBPAFundsAvailableResult1"
},
"InstructedAmount": {
"$ref": "#/definitions/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"FundsConfirmationId",
"ConsentId",
"CreationDateTime",
"FundsAvailableResult",
"InstructedAmount"
]
}
Information that locates and identifies a specific address, as defined by postal services or in free format text.
{
"title": "DeliveryAddress",
"type": "object",
"properties": {
"AddressLine": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 70
},
"minItems": 0,
"maxItems": 2
},
"StreetName": {
"description": "Name of a street or thoroughfare.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"BuildingNumber": {
"description": "Number that identifies the position of a building on a street.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"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.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"TownName": {
"description": "Name of a built-up area, with defined boundaries, and a local government.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"CountrySubDivision": {
"description": "Identifies a subdivision of a country such as state, region, county.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Country": {
"description": "Nation with its own government, occupying a particular territory.",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
}
},
"required": [
"TownName",
"Country"
]
}
Availaility result, clearly indicating the availability of funds given the Amount in the request.
{
"title": "FundsAvailable",
"x-enum-elements": [
{
"name": "Available",
"description": ""
},
{
"name": "NotAvailable",
"description": ""
}
],
"type": "string",
"enum": [
"Available",
"NotAvailable"
]
}
{
"title": "MaximumIndividualAmount",
"type": "object",
"properties": {
"Amount": {
"description": "^ A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.",
"type": "string",
"pattern": "^\\d{1,13}$|^\\d{1,13}\\.\\d{1,5}$"
},
"Currency": {
"description": "^ A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\". | ActiveOrHistoricCurrencyCode",
"type": "string",
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Z]{3,3}$"
}
},
"required": [
"Amount",
"Currency"
]
}
Specifies the payment context
{
"title": "PaymentContextCode",
"type": "string",
"enum": [
"BillingGoodsAndServicesInAdvance",
"BillingGoodsAndServicesInArrears",
"PispPayee",
"EcommerceMerchantInitiatedPayment",
"FaceToFacePointOfSale",
"TransferToSelf",
"TransferToThirdParty",
"BillPayment",
"EcommerceGoods",
"EcommerceServices",
"Other",
"PartyToParty"
]
}
{
"title": "PaymentStatus",
"type": "object",
"properties": {
"PaymentTransactionId": {
"description": "Unique identifier for the transaction within an servicing institution. This identifier is both unique and immutable.",
"type": "string",
"maxLength": 210
},
"Status": {
"$ref": "#/definitions/Status1"
},
"StatusUpdateDateTime": {
"description": "Date and time at which the status was assigned to the transfer.",
"type": "string",
"format": "date-time"
},
"StatusDetail": {
"$ref": "#/definitions/StatusDetail"
}
},
"required": [
"PaymentTransactionId",
"Status",
"StatusUpdateDateTime"
]
}
^ Specifies whether the period starts on the date of consent creation or lines up with a calendar
{
"title": "PeriodAlignment",
"x-enum-elements": [
{
"name": "Consent",
"description": ""
},
{
"name": "Calendar",
"description": ""
}
],
"type": "string",
"enum": [
"Consent",
"Calendar"
]
}
{
"title": "PeriodicLimit",
"type": "object",
"properties": {
"PeriodType": {
"$ref": "#/definitions/PeriodType"
},
"PeriodAlignment": {
"$ref": "#/definitions/PeriodAlignment"
},
"Amount": {
"description": "^ A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.",
"type": "string"
},
"Currency": {
"description": "^ A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 \"Codes for the representation of currencies and funds\". | ActiveOrHistoricCurrencyCode",
"type": "string"
}
},
"required": [
"PeriodType",
"PeriodAlignment",
"Amount",
"Currency"
]
}
^ Period type for this period limit
{
"title": "PeriodType",
"x-enum-elements": [
{
"name": "Day",
"description": ""
},
{
"name": "Week",
"description": ""
},
{
"name": "Fortnight",
"description": ""
},
{
"name": "Month",
"description": ""
},
{
"name": "Halfyear",
"description": ""
},
{
"name": "Year",
"description": ""
}
],
"type": "string",
"enum": [
"Day",
"Week",
"Fortnight",
"Month",
"Half-year",
"Year"
]
}
^ 0..1) | PostalAddress
|Information that locates and identifies a specific address, as defined by postal services.| OBPostalAddress6
{
"title": "OBPostalAddress6",
"type": "object",
"properties": {
"AddressType": {
"description": "^ 0..1) | `PostalAddress. AddressType` |Identifies the nature of the postal address. |OBAddressTypeCode |Business Correspondence DeliveryTo MailTo POBox Postal Residential Statement",
"type": "string",
"enum": [
"Business",
"Correspondence",
"DeliveryTo",
"MailTo",
"POBox",
"Postal",
"Residential",
"Statement"
]
},
"Department": {
"description": "^ 0..1) | `PostalAddress. Department` |Identification of a division of a large organisation or building. | Max70Text",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SubDepartment": {
"description": "^ 0..1) | `PostalAddress. SubDepartment` |Identification of a sub-division of a large organisation or building. |Max70Text",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"StreetName": {
"description": "^ 0..1) | `PostalAddress. StreetName` |Name of a street or thoroughfare. |Max70Text",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"BuildingNumber": {
"description": "^ 0..1) | `PostalAddress. BuildingNumber` |Number that identifies the position of a building on a street. |Max16Text",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"PostCode": {
"description": "^ 0..1) | `PostalAddress. PostCode` |Identifier consisting of a group of letters and. or numbers that is added to a postal address to assist the sorting of mail. |Max16Text",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"TownName": {
"description": "^ 0..1) | `PostalAddress. TownName` |Name of a built-up area, with defined boundaries, and a local government. |Max35Text",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"CountrySubDivision": {
"description": "^ 0..1) | `PostalAddress. CountrySubDivision` |Identifies a subdivision of a country such as state, region, county. |Max35Text",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Country": {
"description": "^ 0..1) | `PostalAddress. Country` | Nation with its own government. |CountryCode",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
},
"AddressLine": {
"type": "array",
"items": {
"type": "string",
"description": "Information that locates and identifies a specific address, as defined by postal services, presented in free format text.",
"minLength": 1,
"maxLength": 70
},
"minItems": 0,
"maxItems": 7
}
}
}
Indicates whether information about RefundAccount should be included in the payment response.
{
"title": "ReadRefundAccount",
"x-enum-elements": [
{
"name": "Yes",
"description": ""
},
{
"name": "No",
"description": ""
}
],
"type": "string",
"enum": [
"Yes",
"No"
]
}
^ Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system.
{
"title": "RemittanceInformation",
"type": "object",
"properties": {
"Unstructured": {
"description": "^ Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"Reference": {
"description": "^ Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction. Usage - If available, the initiating party should provide this reference in the structured remittance information, to enable reconciliation by the creditor upon receipt of the amount of money. If the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.",
"type": "string",
"minLength": 1,
"maxLength": 35
}
}
}
Specifies the status of the payment information group.
{
"title": "Status",
"x-enum-elements": [
{
"name": "AcceptedCreditSettlementCompleted",
"description": ""
},
{
"name": "AcceptedWithoutPosting",
"description": ""
},
{
"name": "AcceptedSettlementCompleted",
"description": ""
},
{
"name": "AcceptedSettlementInProcess",
"description": ""
},
{
"name": "Pending",
"description": ""
},
{
"name": "Rejected",
"description": ""
}
],
"type": "string",
"enum": [
"AcceptedCreditSettlementCompleted",
"AcceptedWithoutPosting",
"AcceptedSettlementCompleted",
"AcceptedSettlementInProcess",
"Pending",
"Rejected"
]
}
Status of a transfer, as assigned by the transaction administrator.
{
"title": "Status1",
"x-enum-elements": [
{
"name": "Accepted",
"description": ""
},
{
"name": "AcceptedCancellationRequest",
"description": ""
},
{
"name": "AcceptedCreditSettlementCompleted",
"description": ""
},
{
"name": "AcceptedCustomerProfile",
"description": ""
},
{
"name": "AcceptedFundsChecked",
"description": ""
},
{
"name": "AcceptedSettlementCompleted",
"description": ""
},
{
"name": "AcceptedSettlementInProcess",
"description": ""
},
{
"name": "AcceptedTechnicalValidation",
"description": ""
},
{
"name": "AcceptedWithChange",
"description": ""
},
{
"name": "AcceptedWithoutPosting",
"description": ""
},
{
"name": "Cancelled",
"description": ""
},
{
"name": "NoCancellationProcess",
"description": ""
},
{
"name": "PartiallyAcceptedCancellationRequest",
"description": ""
},
{
"name": "PartiallyAcceptedTechnicalCorrect",
"description": ""
},
{
"name": "PaymentCancelled",
"description": ""
},
{
"name": "Pending",
"description": ""
},
{
"name": "PendingCancellationRequest",
"description": ""
},
{
"name": "Received",
"description": ""
},
{
"name": "Rejected",
"description": ""
},
{
"name": "RejectedCancellationRequest",
"description": ""
}
],
"type": "string",
"enum": [
"Accepted",
"AcceptedCancellationRequest",
"AcceptedCreditSettlementCompleted",
"AcceptedCustomerProfile",
"AcceptedFundsChecked",
"AcceptedSettlementCompleted",
"AcceptedSettlementInProcess",
"AcceptedTechnicalValidation",
"AcceptedWithChange",
"AcceptedWithoutPosting",
"Cancelled",
"NoCancellationProcess",
"PartiallyAcceptedCancellationRequest",
"PartiallyAcceptedTechnicalCorrect",
"PaymentCancelled",
"Pending",
"PendingCancellationRequest",
"Received",
"Rejected",
"RejectedCancellationRequest"
]
}
{
"title": "StatusDetail",
"type": "object",
"properties": {
"LocalInstrument": {
"description": "User community specific instrument.\nUsage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or service level.",
"type": "string"
},
"Status": {
"description": "Status of a transfer, as assigned by the transaction administrator.",
"type": "string",
"maxLength": 128
},
"StatusReason": {
"$ref": "#/definitions/StatusReason"
},
"StatusReasonDescription": {
"description": "Reason provided for the status of a transfer.",
"type": "string",
"maxLength": 128
}
},
"required": [
"Status"
]
}
Reason Code provided for the status of a transfer.
{
"title": "StatusReason",
"x-enum-elements": [
{
"name": "Cancelled",
"description": ""
},
{
"name": "PendingFailingSettlement",
"description": ""
},
{
"name": "PendingSettlement",
"description": ""
},
{
"name": "Proprietary",
"description": ""
},
{
"name": "ProprietaryRejection",
"description": ""
},
{
"name": "Suspended",
"description": ""
},
{
"name": "Unmatched",
"description": ""
}
],
"type": "string",
"enum": [
"Cancelled",
"PendingFailingSettlement",
"PendingSettlement",
"Proprietary",
"ProprietaryRejection",
"Suspended",
"Unmatched"
]
}
Specifies the extended type of account.
{
"title": "BeneficiaryAccountType",
"type": "string",
"enum": [
"Business",
"BusinessSavingsAccount",
"Charity",
"Collection",
"Corporate",
"Ewallet",
"Government",
"Investment",
"ISA",
"JointPersonal",
"Pension",
"Personal",
"PersonalSavingsAccount",
"Premier",
"Wealth"
]
}