Implementation Guide: BoI

This page has been created and maintained by the relevant ASPSP, and OBIE takes no liability for the completeness nor accuracy of this data.

Note to ASPSP: Please indicate which brands this applies to and/or duplicate this page per brand if relevant.


ASPSPBank of Ireland (UK) Plc
Brand

Date

29 March 2019

Developer portal (s)

https://developer.bankofireland.com

The PSD2 Sandbox test facility and developer portal is now available since 14 March 2019. The Sandbox allows testing of AIS v3, PIS v3 and DCR v1.2 APIs, error events, messages and secure communication for Bank of Ireland UK and Republic of Ireland. The Sandbox also allows testing using test eIDAS certificates as well as OB legacy and OB-issued ETSI-profile certificates.

On-boarding

Supports dynamic client registration (Y/N)

BOI supports Dynamic Client registration. For full details on how to invoke and test DCR, please refer Developer Hub. DCR is available for testing now in the Sandbox.

Current BOI implementation supports a key size of up to 2048-bit for client based authentication. Hence it is recommended that TPPs use client certificates with up to this key size in order to on-board with BOI.

Instructions for manual onboarding

Bank of Ireland UK does not support manual onboarding. Please refer to DCR instructions.

OIDC .well-known endpoint

Sandbox URL: https://auth-sandbox.bankofireland.com/oauth/as/b365/.well-known/openid-configuration

Please note updated production well-known endpoints for the 2 online channels:

Notes on testing

Bank of Ireland is providing flexibility to TPPs who are in various stages of registrations (with National Competent Authorities or with Open Banking Implementation Entity) for testing APIs.

Please refer the ‘Getting Started’ guide on the developer portal for details on on-boarding and testing Bank of Ireland APIs - https://eu1.anypoint.mulesoft.com/exchange/portals/bankofireland/pages/Getting%20Started/

Other on-boarding notes

Please note the current authentication URLs for the 2 online channels:

Documentation URL

Version 3 API Documentation and technical specifications are available in the Developer Hub. Select ‘Access API Documentation’ option on the Bank of Ireland Developer Hub overview page. For AIS v2  and PIS v1.1. documentation is available in https://www.bankofireland.com/api/developer/versions/.

Account Information API

Note to ASPSP: Please add a column per brand if relevant

Swagger version

Versions supported:

V 3.0

V 2.0
Base URI

https://api.obapi.bankofireland.com/1/api/open-banking/v2.0

https://api.obapi.bankofireland.com/1/api/open-banking/v3.0
General variances to specification 

Please refer the “Important Information & BOI’s API Implementation” section for details on the variations –

https://eu1.anypoint.mulesoft.com/exchange/portals/bankofireland/a52d35f4-6c7f-4e2a-97c2-2be7cd7d592c/account-and-transaction/api/v3.0.0/pages/Important%20Information%20%26%20BOI%E2%80%99s%20API%20Implementation/  
Non-functional limitationsRate limiting will be applied for API calls in production and in sandbox
RefAreaFieldAvailable (Y/N)Exception/Notes (inc details on classification codes, field limits, and field formats)

Endpoint 1

POST /account-access-consents

-

Y

Mandatory

API Endpoint available

Endpoint 2

GET /account-access-consents/{ConsentId}

-

Y

Optional

API Endpoint available

Endpoint 3

DELETE /account-access-consents/{ConsentId}

-

Y

Mandatory

API Endpoint available

Endpoint 4

GET /accounts

-

Y

Mandatory

API Endpoint available

Endpoint 5

GET /accounts/{AccountId}

-

Y

Mandatory

API Endpoint available

Endpoint 6

GET /accounts/{AccountId}/balances

-

Y

Mandatory

API Endpoint available

Endpoint 7

GET /accounts/{AccountId}/beneficiaries

-

Y

Conditional

API Endpoint available

Endpoint 8

GET /accounts/{AccountId}/direct-debits

-

Y

Conditional

API Endpoint available

Endpoint 9

GET /accounts/{AccountId}/product

-

Y

Conditional

API Endpoint available

Endpoint 10

GET /accounts/{AccountId}/standing-orders

-

Y

Conditional

API Endpoint available

Endpoint 11

GET /accounts/{AccountId}/transactions

-

Y

Conditional

API Endpoint available

Endpoint 12

GET /accounts/{AccountId}/offers

 

N

API Endpoint not available

Endpoint 13

GET /accounts/{AccountId}/party

 

N

API Endpoint not available

Endpoint 14

GET /accounts/{AccountId}/scheduled-payments

 

N

Conditional

API Endpoint not available but planned for future release

Endpoint 15

GET /accounts/{AccountId}/statements

GET /accounts/{AccountId}/statements/{StatementId}

GET /accounts/{AccountId}/statements/{StatementId}/file

GET /accounts/{AccountId}/statements/{StatementId}/transactions

 

N

N

N

N

Conditional - API Endpoint not available but planned for future release

Conditional - API Endpoint not applicable

Optional - API Endpoint not available but planned for future release

Conditional - API Endpoint not applicable

Endpoint 16

GET /balances, GET /transactions, GET /beneficiaries, GET /direct-debits, GET /standing-orders, GET /products, GET /offers, GET /party, GET /scheduled-payments, GET /statements

 

N

Optional APIs not implemented


Payment Initiation API

Swagger version

Versions supported:

V 3.0 - Table below contains only V3.0 Endpoints

V 1.1
Base URI

https://api.obapi.bankofireland.com/1/api/open-banking/v1.1

https://api.obapi.bankofireland.com/1/api/open-banking/v3.0

General variances to specification

Please refer the “Important Information & BOI’s API Implementation” section for details on the variations –

https://eu1.anypoint.mulesoft.com/exchange/portals/bankofireland/a52d35f4-6c7f-4e2a-97c2-2be7cd7d592c/payment-initiation/api/v3.0.0/pages/Important%20Information%20%26%20BOI%E2%80%99s%20API%20Implementation/
Non-functional limitations

Rate limiting will be applied for API calls in production and in sandbox

RefAreaFieldAvailable (Y/N)Exception/Notes (inc details on classification codes, field limits, and field formats)

Endpoint

1

POST /domestic-payment-consents

-

Y

Mandatory

API Endpoint available

Endpoint

2

GET /domestic-payment-consents/{ConsentId}

-

Y

Mandatory

API Endpoint available

Endpoint

3

POST /domestic-payments


Y

Mandatory

API Endpoint available

Endpoint

4

GET /domestic-payments/{DomesticPaymentId}


Y

Mandatory

API Endpoint available

Endpoint

5

POST /domestic-scheduled-payment-consents


Y

Conditional

API Endpoint available

Endpoint

6


GET /domestic-scheduled-payment-consents/{ConsentId}

 


Y

Mandatory

API Endpoint available

Endpoint

7

POST /domestic-scheduled-payments


Y

Conditional

API Endpoint available

Endpoint

8

GET /domestic-scheduled-payments/{DomesticScheduledPaymentId}


Y

Mandatory

API Endpoint available

Endpoint

9


POST /domestic-standing-order-consents

 


N

Conditional

API Endpoint not available but planned for future release

Endpoint

10

GET /domestic-standing-order-consents/{ConsentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

11

POST /domestic-standing-orders


N

Conditional

API Endpoint not available but planned for future release

Endpoint

12

GET /domestic-standing-orders/{DomesticStandingOrderId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

13

POST /international-payment-consents


N

Conditional

API Endpoint not available but planned for future release

Endpoint

14


GET /international-payment-consents/{ConsentId}

 


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

15

POST /international-payments


N

Conditional

API Endpoint not available but planned for future release

Endpoint

16

GET /international-payments/{InternationalPaymentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

17

POST /international-scheduled-payment-consents


N

Conditional

API Endpoint not available but planned for future release

Endpoint

18

GET /international-scheduled-payment-consents/{ConsentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

19

POST /international-scheduled-payments


N

Conditional

API Endpoint not available but planned for future release

Endpoint

20

GET /international-scheduled-payments/{InternationalScheduledPaymentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

21

POST /international-standing-order-consents


N

Conditional

API Endpoint not available but planned for future release

Endpoint

22

GET /international-standing-order-consents/{ConsentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

23

POST /international-standing-orders


N

Conditional

API Endpoint not available but planned for future release

Endpoint

24


GET /international-standing-orders/{InternationalStandingOrderPaymentId}

 


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

25

POST /file-payment-consents


N

Conditional

API Endpoint not available but planned for future release

Endpoint

26


POST /file-payment-consents/{ConsentId}/file

 


N

Conditional

API Endpoint not available but planned for future release

Endpoint

27

GET /file-payment-consents/{ConsentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

28

GET /file-payment-consents/{ConsentId}/file


N

Conditional

API Endpoint not available but planned for future release

Endpoint

29

POST /file-payments


N

Conditional

API Endpoint not available but planned for future release

Endpoint

30

GET /file-payments/{FilePaymentId}


N

Mandatory

API Endpoint not available but planned for future release

Endpoint

31

GET /file-payments/{FilePaymentId}/report-file


N

Conditional

API Endpoint not available but planned for future release

Open Data API

RefAreaFieldAvailable (Y/N)Exception/Notes (inc details on classification codes, field limits, and field formats)