Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Yorkshire Building Society Payment Initiation API

OBIE Read/Write Payment Initiation (PISP) API v3.1.2 - lets FCA-authorised payment initiation service providers set up domestic single, scheduled, standing-order and file payment consents and initiate payments from consenting YBS and Chelsea Building Society accounts. FAPI-secured (OAuth2/OIDC, mTLS, PSD2 SCA).

Yorkshire Building Society Payment Initiation API is one of 6 APIs that Yorkshire Building Society publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Payment Initiation, PISP, and Payments. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a getting-started guide.

This API exposes 41 operations across 40 paths, organized into 8 resource areas, and defines 57 schemas. It is described by OpenAPI 3.0.1, at version v3.1.2.

Requests are made against the base URL https://ob-ybs.api.ybs.co.uk/open-banking/v3.1/pisp.

41 operations 40 paths 57 schemas 26 GET15 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.1
API Version
v3.1.2
Base URL
https://ob-ybs.api.ybs.co.uk/open-banking/v3.1/pisp
Authentication
OAuth 2.0, OAuth 2.0
Terms of Service
Resource Areas
8

Authentication & Security 2

Yorkshire Building Society Payment Initiation API declares 2 security schemes for authenticating requests. It supports OAuth 2.0 (TPPOAuth2Security) using the clientCredentials flow, exposing 1 scope. It supports OAuth 2.0 (PSUOAuth2Security) using the authorizationCode flow, exposing 1 scope.

  • TPPOAuth2Security — TPP client credential authorisation flow with the ASPSP
  • PSUOAuth2Security — 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

Paths & Operations 41

Across 40 paths, the API surfaces 41 operations — 26 GET, 15 POST. They span 8 resource areas: Domestic Payments, Payment Details, Domestic Scheduled Payments, Domestic Standing Orders, File Payments, International Payments, International Scheduled Payments, International Standing Orders. Each is listed below with its method, path, parameters, and response codes.

Domestic Payments 5
POST
/domestic-payment-consents
Create Domestic Payment Consents
CreateDomesticPaymentConsents 6 params body → 201400401403404405406429
GET
/domestic-payment-consents/{ConsentId}
Get Domestic Payment Consents
GetDomesticPaymentConsentsConsentId 5 params → 200400401403404405406429
GET
/domestic-payment-consents/{ConsentId}/funds-confirmation
Get Domestic Payment Consents
GetDomesticPaymentConsentsConsentIdFundsConfirmation 5 params → 200400401403404405406429
POST
/domestic-payments
Create Domestic Payments
CreateDomesticPayments 6 params body → 201400401403404405406429
GET
/domestic-payments/{DomesticPaymentId}
Get Domestic Payments
GetDomesticPaymentsDomesticPaymentId 5 params → 200400401403404405406429
Payment Details 7
GET
/domestic-payments/{DomesticPaymentId}/payment-details
Get Payment Details
GetDomesticPaymentsDomesticPaymentIdPaymentDetails 5 params → 200400401403404405406429
GET
/domestic-scheduled-payments/{DomesticScheduledPaymentId}/payment-details
Get Payment Details
GetDomesticScheduledPaymentsDomesticScheduledPaymentIdPaymentDetails 5 params → 200400401403404405406429
GET
/domestic-standing-orders/{DomesticStandingOrderId}/payment-details
Get Payment Details
GetDomesticStandingOrdersDomesticStandingOrderIdPaymentDetails 5 params → 200400401403404405406429
GET
/file-payments/{FilePaymentId}/payment-details
Get Payment Details
GetFilePaymentsFilePaymentIdPaymentDetails 5 params → 200400401403404405406429
GET
/international-payments/{InternationalPaymentId}/payment-details
Get Payment Details
GetInternationalPaymentsInternationalPaymentIdPaymentDetails 5 params → 200400401403404405406429
GET
/international-scheduled-payments/{InternationalScheduledPaymentId}/payment-details
Get Payment Details
GetInternationalScheduledPaymentsInternationalScheduledPaymentIdPaymentDetails 5 params → 200400401403404405406429
GET
/international-standing-orders/{InternationalStandingOrderPaymentId}/payment-details
Get Payment Details
GetInternationalStandingOrdersInternationalStandingOrderPaymentIdPaymentDetails 5 params → 200400401403404405406429
Domestic Scheduled Payments 4
POST
/domestic-scheduled-payment-consents
Create Domestic Scheduled Payment Consents
CreateDomesticScheduledPaymentConsents 6 params body → 201400401403404405406429
GET
/domestic-scheduled-payment-consents/{ConsentId}
Get Domestic Scheduled Payment Consents
GetDomesticScheduledPaymentConsentsConsentId 5 params → 200400401403404405406429
POST
/domestic-scheduled-payments
Create Domestic Scheduled Payments
CreateDomesticScheduledPayments 6 params body → 201400401403404405406429
GET
/domestic-scheduled-payments/{DomesticScheduledPaymentId}
Get Domestic Scheduled Payments
GetDomesticScheduledPaymentsDomesticScheduledPaymentId 5 params → 200400401403404405406429
Domestic Standing Orders 4
POST
/domestic-standing-order-consents
Create Domestic Standing Order Consents
CreateDomesticStandingOrderConsents 6 params body → 201400401403404405406429
GET
/domestic-standing-order-consents/{ConsentId}
Get Domestic Standing Order Consents
GetDomesticStandingOrderConsentsConsentId 5 params → 200400401403404405406429
POST
/domestic-standing-orders
Create Domestic Standing Orders
CreateDomesticStandingOrders 6 params body → 201400401403404405406429
GET
/domestic-standing-orders/{DomesticStandingOrderId}
Get Domestic Standing Orders
GetDomesticStandingOrdersDomesticStandingOrderId 5 params → 200400401403404405406429
File Payments 7
POST
/file-payment-consents
Create File Payment Consents
CreateFilePaymentConsents 6 params body → 201400401403404405406429
GET
/file-payment-consents/{ConsentId}
Get File Payment Consents
GetFilePaymentConsentsConsentId 5 params → 200400401403404405406429
POST
/file-payment-consents/{ConsentId}/file
Create File Payment Consents
CreateFilePaymentConsentsConsentIdFile 7 params body → 200400401403404405406429
GET
/file-payment-consents/{ConsentId}/file
Get File Payment Consents
GetFilePaymentConsentsConsentIdFile 5 params → 200400401403404405406429
POST
/file-payments
Create File Payments
CreateFilePayments 6 params body → 201400401403404405406429
GET
/file-payments/{FilePaymentId}
Get File Payments
GetFilePaymentsFilePaymentId 5 params → 200400401403404405406429
GET
/file-payments/{FilePaymentId}/report-file
Get File Payments
GetFilePaymentsFilePaymentIdReportFile 5 params → 200400401403404405406429
International Payments 5
POST
/international-payment-consents
Create International Payment Consents
CreateInternationalPaymentConsents 6 params body → 201400401403404405406429
GET
/international-payment-consents/{ConsentId}
Get International Payment Consents
GetInternationalPaymentConsentsConsentId 5 params → 200400401403404405406429
GET
/international-payment-consents/{ConsentId}/funds-confirmation
Get International Payment Consents
GetInternationalPaymentConsentsConsentIdFundsConfirmation 5 params → 200400401403404405406429
POST
/international-payments
Create International Payments
CreateInternationalPayments 6 params body → 201400401403404405406429
GET
/international-payments/{InternationalPaymentId}
Get International Payments
GetInternationalPaymentsInternationalPaymentId 5 params → 200400401403404405406429
International Scheduled Payments 5
POST
/international-scheduled-payment-consents
Create International Scheduled Payment Consents
CreateInternationalScheduledPaymentConsents 6 params body → 201400401403404405406429
GET
/international-scheduled-payment-consents/{ConsentId}
Get International Scheduled Payment Consents
GetInternationalScheduledPaymentConsentsConsentId 5 params → 200400401403404405406429
GET
/international-scheduled-payment-consents/{ConsentId}/funds-confirmation
Get International Scheduled Payment Consents
GetInternationalScheduledPaymentConsentsConsentIdFundsConfirmation 5 params → 200400401403404405406429
POST
/international-scheduled-payments
Create International Scheduled Payments
CreateInternationalScheduledPayments 6 params body → 201400401403404405406429
GET
/international-scheduled-payments/{InternationalScheduledPaymentId}
Get International Scheduled Payments
GetInternationalScheduledPaymentsInternationalScheduledPaymentId 5 params → 200400401403404405406429
International Standing Orders 4
POST
/international-standing-order-consents
Create International Standing Order Consents
CreateInternationalStandingOrderConsents 6 params body → 201400401403404405406429
GET
/international-standing-order-consents/{ConsentId}
Get International Standing Order Consents
GetInternationalStandingOrderConsentsConsentId 5 params → 200400401403404405406429
POST
/international-standing-orders
Create International Standing Orders
CreateInternationalStandingOrders 6 params body → 201400401403404405406429
GET
/international-standing-orders/{InternationalStandingOrderPaymentId}
Get International Standing Orders
GetInternationalStandingOrdersInternationalStandingOrderPaymentId 5 params → 200400401403404405406429

Schemas 57

The contract defines 57 schemas that model the data the API accepts and returns. The most detailed are OBPostalAddress6 (10 properties), Links (5 properties), OBWriteInternationalStandingOrderConsentResponse4 (4 properties), OBWriteDomesticScheduledConsentResponse3 (4 properties). Each schema is shown below with its type and property counts.

ActiveOrHistoricCurrencyCode
string
A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international st…
BuildingNumber
string
Number that identifies the position of a building on a street.
CountryCode
string
Nation with its own government.
CountrySubDivision
string
Identifies a subdivision of a country such as state, region, county.
Department
string
Identification of a division of a large organisation or building.
File
object
ISODateTime
string
All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below:…
Identification
string
Identification assigned by an institution to identify an account. This identification is known by the account owner.
Links
object
Links relevant to the payload
5 properties 1 required
Meta
object
Meta Data relevant to the payload
3 properties
OBActiveCurrencyAndAmount_SimpleType
string
A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.
OBActiveOrHistoricCurrencyAndAmount
object
Amount of money associated with the charge type.
2 properties 2 required
OBAddressTypeCode
string
Identifies the nature of the postal address.
OBChargeBearerType1Code
string
Specifies which party/parties will bear the charges associated with the processing of the payment transaction.
OBError1
object
4 properties 2 required
OBErrorResponse1
object
An array of detail error codes, and messages, and URLs to documentation to help remediation.
4 properties 3 required
OBExternalAccountIdentification4Code
string
Name of the identification scheme, in a coded form as published in an external list.
OBExternalLocalInstrument1Code
string
User community specific instrument. Usage: This element is used to specify a local instrument, local clearing option and/or further qualify the service or serv…
OBExternalPaymentChargeType1Code
string
Charge type, in a coded form.
OBPostalAddress6
object
Information that locates and identifies a specific address, as defined by postal services.
10 properties
OBRisk1
object
The Risk section is sent by the initiating party to the ASPSP. It is used to specify additional details for risk scoring for Payments.
4 properties
OBSupplementaryData1
object
Additional information that can not be captured in the structured fields and/or any other specific block.
OBWriteDomestic2
object
2 properties 2 required
OBWriteDomesticConsent3
object
2 properties 2 required
OBWriteDomesticConsentResponse3
object
4 properties 2 required
OBWriteDomesticResponse3
object
3 properties 1 required
OBWriteDomesticScheduled2
object
2 properties 2 required
OBWriteDomesticScheduledConsent3
object
2 properties 2 required
OBWriteDomesticScheduledConsentResponse3
object
4 properties 2 required
OBWriteDomesticScheduledResponse3
object
3 properties 1 required
OBWriteDomesticStandingOrder3
object
2 properties 2 required
OBWriteDomesticStandingOrderConsent4
object
2 properties 2 required
OBWriteDomesticStandingOrderConsentResponse4
object
4 properties 2 required
OBWriteDomesticStandingOrderResponse4
object
3 properties 1 required
OBWriteFile2
object
1 property 1 required
OBWriteFileConsent3
object
1 property 1 required
OBWriteFileConsentResponse3
object
3 properties 1 required
OBWriteFileResponse2
object
3 properties 1 required
OBWriteFundsConfirmationResponse1
object
3 properties 1 required
OBWriteInternational2
object
2 properties 2 required
OBWriteInternationalConsent3
object
2 properties 2 required
OBWriteInternationalConsentResponse3
object
4 properties 2 required
OBWriteInternationalResponse3
object
3 properties 1 required
OBWriteInternationalScheduled2
object
2 properties 2 required
OBWriteInternationalScheduledConsent3
object
2 properties 2 required
OBWriteInternationalScheduledConsentResponse3
object
4 properties 2 required
OBWriteInternationalScheduledResponse3
object
3 properties 1 required
OBWriteInternationalStandingOrder3
object
2 properties 2 required
OBWriteInternationalStandingOrderConsent4
object
2 properties 2 required
OBWriteInternationalStandingOrderConsentResponse4
object
4 properties 2 required
OBWriteInternationalStandingOrderResponse4
object
3 properties 1 required
OBWritePaymentDetailsResponse1
object
3 properties 1 required
PostCode
string
Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.
SecondaryIdentification
string
This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally ident…
StreetName
string
Name of a street or thoroughfare.
SubDepartment
string
Identification of a sub-division of a large organisation or building.
TownName
string
Name of a built-up area, with defined boundaries, and a local government.

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

yorkshire-building-society-payment-initiation-api-openapi.yaml Raw ↑

Other APIs Yorkshire Building Society publishes across the network.

Yorkshire Building Society Account Information API
Yorkshire Building Society Confirmation of Funds API
Yorkshire Building Society Event Subscriptions API
Yorkshire Building Society Dynamic Client Registration API
Yorkshire Building Society Generate Access Token API