Skip to content

Latest commit

 

History

History
2420 lines (1799 loc) · 152 KB

PSD2Api.md

File metadata and controls

2420 lines (1799 loc) · 152 KB

obp_python.PSD2Api

All URIs are relative to http://test.openbankproject.com

Method HTTP request Description
o_bpv1_4_0_get_transaction_request_types GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types Get Transaction Request Types for Account
o_bpv2_0_0_get_transaction_types GET /obp/v5.0.0/banks/{BANK_ID}/transaction-types Get Transaction Types at Bank
o_bpv2_1_0_create_transaction_request_sandbox_tan POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/SANDBOX_TAN/transaction-requests Create Transaction Request (SANDBOX_TAN)
o_bpv3_0_0_core_private_accounts_all_banks GET /obp/v5.0.0/my/accounts Get Accounts at all Banks (private)
o_bpv3_0_0_get_accounts_held GET /obp/v5.0.0/banks/{BANK_ID}/accounts-held Get Accounts Held
o_bpv3_0_0_get_core_transactions_for_bank_account GET /obp/v5.0.0/my/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/transactions Get Transactions for Account (Core)
o_bpv3_0_0_get_private_account_idsby_bank_id GET /obp/v5.0.0/banks/{BANK_ID}/accounts/account_ids/private Get Accounts at Bank (IDs only)
o_bpv3_0_0_private_accounts_at_one_bank GET /obp/v5.0.0/banks/{BANK_ID}/accounts/private Get Accounts at Bank (Minimal)
o_bpv3_1_0_answer_consent_challenge POST /obp/v5.0.0/banks/{BANK_ID}/consents/{CONSENT_ID}/challenge Answer Consent Challenge
o_bpv3_1_0_check_funds_available GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/funds-available Check Available Funds
o_bpv3_1_0_create_consent_email POST /obp/v5.0.0/banks/{BANK_ID}/my/consents/EMAIL Create Consent (EMAIL)
o_bpv3_1_0_create_consent_sms POST /obp/v5.0.0/banks/{BANK_ID}/my/consents/SMS Create Consent (SMS)
o_bpv3_1_0_get_server_jwk GET /obp/v5.0.0/certs Get JSON Web Key (JWK)
o_bpv3_1_0_revoke_consent GET /obp/v5.0.0/banks/{BANK_ID}/my/consents/{CONSENT_ID}/revoke Revoke Consent
o_bpv4_0_0_answer_transaction_request_challenge POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/{TRANSACTION_REQUEST_TYPE}/transaction-requests/{TRANSACTION_REQUEST_ID}/challenge Answer Transaction Request Challenge
o_bpv4_0_0_create_transaction_request_account POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/ACCOUNT/transaction-requests Create Transaction Request (ACCOUNT)
o_bpv4_0_0_create_transaction_request_account_otp POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/ACCOUNT_OTP/transaction-requests Create Transaction Request (ACCOUNT_OTP)
o_bpv4_0_0_create_transaction_request_card POST /obp/v5.0.0/transaction-request-types/CARD/transaction-requests Create Transaction Request (CARD)
o_bpv4_0_0_create_transaction_request_counterparty POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/COUNTERPARTY/transaction-requests Create Transaction Request (COUNTERPARTY)
o_bpv4_0_0_create_transaction_request_refund POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/REFUND/transaction-requests Create Transaction Request (REFUND)
o_bpv4_0_0_create_transaction_request_sepa POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/SEPA/transaction-requests Create Transaction Request (SEPA)
o_bpv4_0_0_create_transaction_request_simple POST /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-request-types/SIMPLE/transaction-requests Create Transaction Request (SIMPLE)
o_bpv4_0_0_get_bank_account_balances GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/balances Get Account Balances
o_bpv4_0_0_get_bank_accounts_balances GET /obp/v5.0.0/banks/{BANK_ID}/balances Get Accounts Balances
o_bpv4_0_0_get_banks GET /obp/v5.0.0/banks Get Banks
o_bpv4_0_0_get_consent_infos GET /obp/v5.0.0/banks/{BANK_ID}/my/consent-infos Get Consents Info
o_bpv4_0_0_get_consents GET /obp/v5.0.0/banks/{BANK_ID}/my/consents Get Consents
o_bpv4_0_0_get_core_account_by_id GET /obp/v5.0.0/my/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/account Get Account by Id (Core)
o_bpv4_0_0_get_counterparties_for_any_account GET /obp/v5.0.0/management/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/counterparties Get Counterparties for any account (Explicit)
o_bpv4_0_0_get_explict_counterparties_for_account GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/counterparties Get Counterparties (Explicit)
o_bpv4_0_0_get_explict_counterparty_by_id GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/counterparties/{COUNTERPARTY_ID} Get Counterparty by Id (Explicit)
o_bpv4_0_0_get_settlement_accounts GET /obp/v5.0.0/banks/{BANK_ID}/settlement-accounts Get Settlement accounts at Bank
o_bpv4_0_0_get_transaction_request GET /obp/v5.0.0/banks/{BANK_ID}/accounts/{ACCOUNT_ID}/{VIEW_ID}/transaction-requests/{TRANSACTION_REQUEST_ID} Get Transaction Request.
o_bpv5_0_0_create_consent_by_consent_request_id_email POST /obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID/EMAIL/consents Create Consent By CONSENT_REQUEST_ID (EMAIL)
o_bpv5_0_0_create_consent_by_consent_request_id_sms POST /obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID/SMS/consents Create Consent By CONSENT_REQUEST_ID (SMS)
o_bpv5_0_0_create_consent_request POST /obp/v5.0.0/consumer/consent-requests Create Consent Request
o_bpv5_0_0_get_bank GET /obp/v5.0.0/banks/{BANK_ID} Get Bank
o_bpv5_0_0_get_consent_by_consent_request_id GET /obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID/consents Get Consent By Consent Request Id
o_bpv5_0_0_get_consent_request GET /obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID Get Consent Request

o_bpv1_4_0_get_transaction_request_types

TransactionRequestTypesJsonV140 o_bpv1_4_0_get_transaction_request_types(body, view_id, account_id, bank_id)

Get Transaction Request Types for Account

Returns the Transaction Request Types that the account specified by ACCOUNT_ID and view specified by VIEW_ID has access to.

These are the ways this API Server can create a Transaction via a Transaction Request
(as opposed to Transaction Types which include external types too e.g. for Transactions created by core banking etc.)

A Transaction Request Type internally determines:

  • the required Transaction Request 'body' i.e. fields that define the 'what' and 'to' of a Transaction Request,
  • the type of security challenge that may be be raised before the Transaction Request proceeds, and
  • the threshold of that challenge.

For instance in a 'SANDBOX_TAN' Transaction Request, for amounts over 1000 currency units, the user must supply a positive integer to complete the Transaction Request and create a Transaction.

This approach aims to provide only one endpoint for initiating transactions, and one that handles challenges, whilst still allowing flexibility with the payload and internal logic.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.EmptyClassJson() # EmptyClassJson | EmptyClassJson object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Transaction Request Types for Account
    api_response = api_instance.o_bpv1_4_0_get_transaction_request_types(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv1_4_0_get_transaction_request_types: %s\n" % e)

Parameters

Name Type Description Notes
body EmptyClassJson EmptyClassJson object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestTypesJsonV140

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv2_0_0_get_transaction_types

TransactionTypesJsonV200 o_bpv2_0_0_get_transaction_types(body, bank_id)

Get Transaction Types at Bank

Get Transaction Types for the bank specified by BANK_ID:

Lists the possible Transaction Types available at the bank (as opposed to Transaction Request Types which are the possible ways Transactions can be created by this API Server).

  • id : Unique transaction type id across the API instance. SHOULD be a UUID. MUST be unique.
  • bank_id : The bank that supports this TransactionType
  • short_code : A short code (SHOULD have no-spaces) which MUST be unique across the bank. May be stored with Transactions to link here
  • summary : A succinct summary
  • description : A longer description
  • charge : The charge to the customer for each one of these

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.EmptyClassJson() # EmptyClassJson | EmptyClassJson object that needs to be added.
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Transaction Types at Bank
    api_response = api_instance.o_bpv2_0_0_get_transaction_types(body, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv2_0_0_get_transaction_types: %s\n" % e)

Parameters

Name Type Description Notes
body EmptyClassJson EmptyClassJson object that needs to be added.
bank_id str The bank id

Return type

TransactionTypesJsonV200

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv2_1_0_create_transaction_request_sandbox_tan

TransactionRequestWithChargeJSON210 o_bpv2_1_0_create_transaction_request_sandbox_tan(body, view_id, account_id, bank_id)

Create Transaction Request (SANDBOX_TAN)

When using SANDBOX_TAN, the payee is set in the request body.

Money goes into the BANK_ID and ACCOUNT_ID specified in the request body.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to SANDBOX_TAN. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

{
"XAF":{
"XAF":1.0,
"HKD":0.0135503,
"AUD":0.00228226,
"KRW":1.87975,
"JOD":0.00127784,
"GBP":0.00131092,
"MXN":0.0396,
"AED":0.00601555,
"INR":0.110241,
"XBT":2.9074795E-8,
"JPY":0.185328,
"USD":0.00163773,
"ILS":0.00641333,
"EUR":0.00152449
},
"HKD":{
"XAF":73.8049,
"HKD":1.0,
"AUD":0.178137,
"KRW":143.424,
"JOD":0.0903452,
"GBP":0.0985443,
"MXN":2.8067,
"AED":0.467977,
"INR":9.09325,
"XBT":2.164242461E-6,
"JPY":14.0867,
"USD":0.127427,
"ILS":0.460862,
"EUR":0.112495
},
"AUD":{
"XAF":438.162,
"HKD":5.61346,
"AUD":1.0,
"KRW":895.304,
"JOD":0.556152,
"GBP":0.609788,
"MXN":16.0826,
"AED":2.88368,
"INR":50.4238,
"XBT":1.2284055924E-5,
"JPY":87.0936,
"USD":0.785256,
"ILS":2.83558,
"EUR":0.667969
},
"KRW":{
"XAF":0.531986,
"HKD":0.00697233,
"AUD":0.00111694,
"KRW":1.0,
"JOD":6.30634E-4,
"GBP":6.97389E-4,
"MXN":0.0183,
"AED":0.00320019,
"INR":0.0586469,
"XBT":1.4234725E-8,
"JPY":0.0985917,
"USD":8.7125E-4,
"ILS":0.00316552,
"EUR":8.11008E-4
},
"JOD":{
"XAF":782.572,
"HKD":11.0687,
"AUD":1.63992,
"KRW":1585.68,
"JOD":1.0,
"GBP":1.06757,
"MXN":30.8336,
"AED":5.18231,
"INR":90.1236,
"XBT":2.3803244006E-5,
"JPY":156.304,
"USD":1.41112,
"ILS":5.02018,
"EUR":0.237707
},
"GBP":{
"XAF":762.826,
"HKD":10.1468,
"AUD":1.63992,
"KRW":1433.92,
"JOD":0.936707,
"GBP":1.0,
"MXN":29.242,
"AED":4.58882,
"INR":84.095,
"XBT":2.2756409956E-5,
"JPY":141.373,
"USD":1.2493,
"ILS":4.7002,
"EUR":1.16278
},
"MXN":{
"XAF":25.189,
"HKD":0.3562,
"AUD":0.0621,
"KRW":54.4512,
"JOD":0.0324,
"GBP":0.0341,
"MXN":1.0,
"AED":0.1688,
"INR":3.3513,
"XBT":8.1112586E-7,
"JPY":4.8687,
"USD":0.0459,
"ILS":0.1541,
"EUR":0.0384
},
"AED":{
"XAF":166.236,
"HKD":2.13685,
"AUD":0.346779,
"KRW":312.482,
"JOD":0.1930565,
"GBP":0.217921,
"MXN":5.9217,
"AED":1.0,
"INR":18.3255,
"XBT":4.603349217E-6,
"JPY":30.8081,
"USD":0.27225,
"ILS":0.968033,
"EUR":0.253425
},
"INR":{
"XAF":9.07101,
"HKD":0.109972,
"AUD":0.0198319,
"KRW":17.0512,
"JOD":0.0110959,
"GBP":0.0118913,
"MXN":0.2983,
"AED":0.0545671,
"INR":1.0,
"XBT":2.2689396E-7,
"JPY":1.68111,
"USD":0.0148559,
"ILS":0.0556764,
"EUR":0.0138287
},
"XBT":{
"XAF":3.4353824E7,
"HKD":460448.9,
"AUD":81168.603,
"KRW":7.0131575E7,
"JOD":41960.111,
"GBP":44188.118,
"MXN":1230503.3,
"AED":217414.47,
"INR":4407607.74,
"XBT":1.0,
"JPY":6805170.8,
"USD":59245.918,
"ILS":182981.21,
"EUR":52436.431
},
"JPY":{
"XAF":5.39585,
"HKD":0.0709891,
"AUD":0.0114819,
"KRW":10.1428,
"JOD":0.00639777,
"GBP":0.0070735,
"MXN":0.2053,
"AED":0.032459,
"INR":0.594846,
"XBT":1.47171931E-7,
"JPY":1.0,
"USD":0.00883695,
"ILS":0.0320926,
"EUR":0.00822592
},
"USD":{
"XAF":610.601,
"HKD":7.84766,
"AUD":1.27347,
"KRW":1147.78,
"JOD":0.708659,
"GBP":0.800446,
"MXN":21.748,
"AED":3.6731,
"INR":67.3135,
"XBT":1.69154E-5,
"JPY":113.161,
"USD":1.0,
"ILS":3.55495,
"EUR":0.930886
},
"ILS":{
"XAF":155.925,
"HKD":2.16985,
"AUD":0.352661,
"KRW":315.903,
"JOD":0.199196,
"GBP":0.212763,
"MXN":6.4871,
"AED":1.03302,
"INR":17.9609,
"XBT":5.452272147E-6,
"JPY":31.1599,
"USD":0.281298,
"ILS":1.0,
"EUR":1.19318
},
"EUR":{
"XAF":655.957,
"HKD":8.88926,
"AUD":1.49707,
"KRW":1233.03,
"JOD":0.838098,
"GBP":0.860011,
"MXN":26.0359,
"AED":3.94594,
"INR":72.3136,
"XBT":1.9087905636E-5,
"JPY":121.567,
"USD":1.07428,
"ILS":4.20494,
"EUR":1.0
}
}

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyJsonV200() # TransactionRequestBodyJsonV200 | TransactionRequestBodyJsonV200 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (SANDBOX_TAN)
    api_response = api_instance.o_bpv2_1_0_create_transaction_request_sandbox_tan(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv2_1_0_create_transaction_request_sandbox_tan: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyJsonV200 TransactionRequestBodyJsonV200 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON210

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_0_0_core_private_accounts_all_banks

CoreAccountsJsonV300 o_bpv3_0_0_core_private_accounts_all_banks()

Get Accounts at all Banks (private)

Returns the list of accounts containing private views for the user.
Each account lists the views available to the user.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/my/accounts?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Get Accounts at all Banks (private)
    api_response = api_instance.o_bpv3_0_0_core_private_accounts_all_banks()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_0_0_core_private_accounts_all_banks: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

CoreAccountsJsonV300

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_0_0_get_accounts_held

CoreAccountsHeldJsonV300 o_bpv3_0_0_get_accounts_held(bank_id)

Get Accounts Held

Get Accounts held by the current User if even the User has not been assigned the owner View yet.

Can be used to onboard the account to the API - since all other account and transaction endpoints require views to be assigned.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts-held?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Accounts Held
    api_response = api_instance.o_bpv3_0_0_get_accounts_held(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_0_0_get_accounts_held: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

CoreAccountsHeldJsonV300

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_0_0_get_core_transactions_for_bank_account

CoreTransactionsJsonV300 o_bpv3_0_0_get_core_transactions_for_bank_account(account_id, bank_id)

Get Transactions for Account (Core)

Returns transactions list (Core info) of the account specified by ACCOUNT_ID.

Authentication is Mandatory

Possible custom url parameters for pagination:

  • limit=NUMBER ==> default value: 50
  • offset=NUMBER ==> default value: 0

eg1:?limit=100&offset=0

  • sort_direction=ASC/DESC ==> default value: DESC.

eg2:?limit=100&offset=0&sort_direction=ASC

  • from_date=DATE => example value: 1970-01-01T00:00:00.000Z. NOTE! The default value is one year ago (1970-01-01T00:00:00.000Z).
  • to_date=DATE => example value: 2023-02-16T16:23:47.662Z. NOTE! The default value is now (2023-02-16T16:23:47.662Z).

Date format parameter: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'(1100-01-01T01:01:01.000Z) ==> time zone is UTC.

eg3:?sort_direction=ASC&limit=100&offset=0&from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Transactions for Account (Core)
    api_response = api_instance.o_bpv3_0_0_get_core_transactions_for_bank_account(account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_0_0_get_core_transactions_for_bank_account: %s\n" % e)

Parameters

Name Type Description Notes
account_id str The account id
bank_id str The bank id

Return type

CoreTransactionsJsonV300

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_0_0_get_private_account_idsby_bank_id

AccountsIdsJsonV300 o_bpv3_0_0_get_private_account_idsby_bank_id(bank_id)

Get Accounts at Bank (IDs only)

Returns only the list of accounts ids at BANK_ID that the user has access to.

Each account must have at least one private View.

For each account the API returns its account ID.

If you want to see more information on the Views, use the Account Detail call.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts/account_ids/private?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Accounts at Bank (IDs only)
    api_response = api_instance.o_bpv3_0_0_get_private_account_idsby_bank_id(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_0_0_get_private_account_idsby_bank_id: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

AccountsIdsJsonV300

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_0_0_private_accounts_at_one_bank

CoreAccountsJsonV300 o_bpv3_0_0_private_accounts_at_one_bank(bank_id)

Get Accounts at Bank (Minimal)

Returns the minimal list of private accounts at BANK_ID that the user has access to.
For each account, the API returns the ID, routing addresses and the views available to the current user.

If you want to see more information on the Views, use the Account Detail call.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts/private?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Accounts at Bank (Minimal)
    api_response = api_instance.o_bpv3_0_0_private_accounts_at_one_bank(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_0_0_private_accounts_at_one_bank: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

CoreAccountsJsonV300

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_answer_consent_challenge

ConsentChallengeJsonV310 o_bpv3_1_0_answer_consent_challenge(body, consent_id, bank_id)

Answer Consent Challenge

An OBP Consent allows the holder of the Consent to call one or more endpoints.

Consents must be created and authorisied using SCA (Strong Customer Authentication).

That is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.

Each Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.

Each Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
For example:
GET /obp/v4.0.0/users/current HTTP/1.1
Host: 127.0.0.1:8080
Consent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
EtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
zcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
tNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg

Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
cache-control: no-cache

Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.

Example of POST JSON:
{
"everything": false,
"views": [
{
"bank_id": "GENODEM1GLS",
"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
"view_id": "owner"
}
],
"entitlements": [
{
"bank_id": "GENODEM1GLS",
"role_name": "CanGetCustomer"
}
],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com",
"valid_from": "2020-02-07T08:43:34Z",
"time_to_live": 3600
}
Please note that only optional fields are: consumer_id, valid_from and time_to_live.
In case you omit they the default values are used:
consumer_id = consumer of current user
valid_from = current time
time_to_live = consents.max_time_to_live

This endpoint is used to confirm a Consent previously created.

The User must supply a code that was sent out of band (OOB) for example via an SMS.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.PostConsentChallengeJsonV310() # PostConsentChallengeJsonV310 | PostConsentChallengeJsonV310 object that needs to be added.
consent_id = 'consent_id_example' # str | the consent id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Answer Consent Challenge
    api_response = api_instance.o_bpv3_1_0_answer_consent_challenge(body, consent_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_answer_consent_challenge: %s\n" % e)

Parameters

Name Type Description Notes
body PostConsentChallengeJsonV310 PostConsentChallengeJsonV310 object that needs to be added.
consent_id str the consent id
bank_id str The bank id

Return type

ConsentChallengeJsonV310

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_check_funds_available

CheckFundsAvailableJson o_bpv3_1_0_check_funds_available(view_id, account_id, bank_id)

Check Available Funds

Check Available Funds
Mandatory URL parameters:

  • amount=NUMBER
  • currency=STRING

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Check Available Funds
    api_response = api_instance.o_bpv3_1_0_check_funds_available(view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_check_funds_available: %s\n" % e)

Parameters

Name Type Description Notes
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

CheckFundsAvailableJson

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_create_consent_email

ConsentJsonV310 o_bpv3_1_0_create_consent_email(body, bank_id)

Create Consent (EMAIL)

This endpoint starts the process of creating a Consent.

The Consent is created in an INITIATED state.

A One Time Password (OTP) (AKA security challenge) is sent Out of band (OOB) to the User via the transport defined in SCA_METHOD
SCA_METHOD is typically "SMS" or "EMAIL". "EMAIL" is used for testing purposes.

When the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.

An OBP Consent allows the holder of the Consent to call one or more endpoints.

Consents must be created and authorisied using SCA (Strong Customer Authentication).

That is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.

Each Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.

Each Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
For example:
GET /obp/v4.0.0/users/current HTTP/1.1
Host: 127.0.0.1:8080
Consent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
EtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
zcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
tNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg

Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
cache-control: no-cache

Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.

Example of POST JSON:
{
"everything": false,
"views": [
{
"bank_id": "GENODEM1GLS",
"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
"view_id": "owner"
}
],
"entitlements": [
{
"bank_id": "GENODEM1GLS",
"role_name": "CanGetCustomer"
}
],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com",
"valid_from": "2020-02-07T08:43:34Z",
"time_to_live": 3600
}
Please note that only optional fields are: consumer_id, valid_from and time_to_live.
In case you omit they the default values are used:
consumer_id = consumer of current user
valid_from = current time
time_to_live = consents.max_time_to_live

Authentication is Mandatory

Example 1:
{
"everything": true,
"views": [],
"entitlements": [],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com"
}

Please note that consumer_id is optional field
Example 2:
{
"everything": true,
"views": [],
"entitlements": [],
"email": "eveline@example.com"
}

Please note if everything=false you need to explicitly specify views and entitlements
Example 3:
{
"everything": false,
"views": [
{
"bank_id": "GENODEM1GLS",
"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
"view_id": "owner"
}
],
"entitlements": [
{
"bank_id": "GENODEM1GLS",
"role_name": "CanGetCustomer"
}
],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com"
}

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.PostConsentEmailJsonV310() # PostConsentEmailJsonV310 | PostConsentEmailJsonV310 object that needs to be added.
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Consent (EMAIL)
    api_response = api_instance.o_bpv3_1_0_create_consent_email(body, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_create_consent_email: %s\n" % e)

Parameters

Name Type Description Notes
body PostConsentEmailJsonV310 PostConsentEmailJsonV310 object that needs to be added.
bank_id str The bank id

Return type

ConsentJsonV310

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_create_consent_sms

ConsentJsonV310 o_bpv3_1_0_create_consent_sms(body, bank_id)

Create Consent (SMS)

This endpoint starts the process of creating a Consent.

The Consent is created in an INITIATED state.

A One Time Password (OTP) (AKA security challenge) is sent Out of Band (OOB) to the User via the transport defined in SCA_METHOD
SCA_METHOD is typically "SMS" or "EMAIL". "EMAIL" is used for testing purposes.

When the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.

An OBP Consent allows the holder of the Consent to call one or more endpoints.

Consents must be created and authorisied using SCA (Strong Customer Authentication).

That is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.

Each Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.

Each Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
For example:
GET /obp/v4.0.0/users/current HTTP/1.1
Host: 127.0.0.1:8080
Consent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
EtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
zcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
tNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg

Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
cache-control: no-cache

Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.

Example of POST JSON:
{
"everything": false,
"views": [
{
"bank_id": "GENODEM1GLS",
"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
"view_id": "owner"
}
],
"entitlements": [
{
"bank_id": "GENODEM1GLS",
"role_name": "CanGetCustomer"
}
],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com",
"valid_from": "2020-02-07T08:43:34Z",
"time_to_live": 3600
}
Please note that only optional fields are: consumer_id, valid_from and time_to_live.
In case you omit they the default values are used:
consumer_id = consumer of current user
valid_from = current time
time_to_live = consents.max_time_to_live

Authentication is Mandatory

Example 1:
{
"everything": true,
"views": [],
"entitlements": [],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com"
}

Please note that consumer_id is optional field
Example 2:
{
"everything": true,
"views": [],
"entitlements": [],
"email": "eveline@example.com"
}

Please note if everything=false you need to explicitly specify views and entitlements
Example 3:
{
"everything": false,
"views": [
{
"bank_id": "GENODEM1GLS",
"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
"view_id": "owner"
}
],
"entitlements": [
{
"bank_id": "GENODEM1GLS",
"role_name": "CanGetCustomer"
}
],
"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"email": "eveline@example.com"
}

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.PostConsentPhoneJsonV310() # PostConsentPhoneJsonV310 | PostConsentPhoneJsonV310 object that needs to be added.
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Consent (SMS)
    api_response = api_instance.o_bpv3_1_0_create_consent_sms(body, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_create_consent_sms: %s\n" % e)

Parameters

Name Type Description Notes
body PostConsentPhoneJsonV310 PostConsentPhoneJsonV310 object that needs to be added.
bank_id str The bank id

Return type

ConsentJsonV310

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_get_server_jwk

SeverJWK o_bpv3_1_0_get_server_jwk()

Get JSON Web Key (JWK)

Get the server's public JSON Web Key (JWK) set and certificate chain.
It is required by client applications to validate ID tokens, self-contained access tokens and other issued objects.

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Get JSON Web Key (JWK)
    api_response = api_instance.o_bpv3_1_0_get_server_jwk()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_get_server_jwk: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

SeverJWK

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv3_1_0_revoke_consent

ConsentJsonV310 o_bpv3_1_0_revoke_consent(consent_id, bank_id)

Revoke Consent

Revoke Consent for current user specified by CONSENT_ID

There are a few reasons you might need to revoke an application’s access to a user’s account:
- The user explicitly wishes to revoke the application’s access
- You as the service provider have determined an application is compromised or malicious, and want to disable it
- etc.

Please note that this endpoint only supports the case:: "The user explicitly wishes to revoke the application’s access"

OBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.
The status of the token is changed to "REVOKED" so the next time the revoked client makes a request, their token will fail to validate.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
consent_id = 'consent_id_example' # str | the consent id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Revoke Consent
    api_response = api_instance.o_bpv3_1_0_revoke_consent(consent_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv3_1_0_revoke_consent: %s\n" % e)

Parameters

Name Type Description Notes
consent_id str the consent id
bank_id str The bank id

Return type

ConsentJsonV310

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_answer_transaction_request_challenge

TransactionRequestWithChargeJSON210 o_bpv4_0_0_answer_transaction_request_challenge(body, transaction_request_id, transaction_request_type, view_id, account_id, bank_id)

Answer Transaction Request Challenge

In Sandbox mode, any string that can be converted to a positive integer will be accepted as an answer.

This endpoint totally depends on createTransactionRequest, it need get the following data from createTransactionRequest response body.

1)TRANSACTION_REQUEST_TYPE : is the same as createTransactionRequest request URL .

2)TRANSACTION_REQUEST_ID : is the id field in createTransactionRequest response body.

3) id : is challenge.id field in createTransactionRequest response body.

4) answer : must be 123 in case that Strong Customer Authentication method for OTP challenge is dummy.
For instance: SANDBOX_TAN_OTP_INSTRUCTION_TRANSPORT=dummy
Possible values are dummy,email and sms
In kafka mode, the answer can be got by phone message or other SCA methods.

Note that each Transaction Request Type can have its own OTP_INSTRUCTION_TRANSPORT method.
OTP_INSTRUCTION_TRANSPORT methods are set in Props. See sample.props.template for instructions.

Single or Multiple authorisations

OBP allows single or multi party authorisations.

Single party authorisation:

In the case that only one person needs to authorise i.e. answer a security challenge we have the following change of state of a transaction request:
INITIATED => COMPLETED

Multiparty authorisation:

In the case that multiple parties (n persons) need to authorise a transaction request i.e. answer security challenges, we have the followings state flow for a transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in the case of a correct answer but the user is different than expected the challenge will fail.

Rule for calculating number of security challenges:
If Product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In the case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute, the default number of security challenges created is one.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.ChallengeAnswerJson400() # ChallengeAnswerJson400 | ChallengeAnswerJson400 object that needs to be added.
transaction_request_id = 'transaction_request_id_example' # str | The transaction request id
transaction_request_type = 'transaction_request_type_example' # str | The transaction request type
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Answer Transaction Request Challenge
    api_response = api_instance.o_bpv4_0_0_answer_transaction_request_challenge(body, transaction_request_id, transaction_request_type, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_answer_transaction_request_challenge: %s\n" % e)

Parameters

Name Type Description Notes
body ChallengeAnswerJson400 ChallengeAnswerJson400 object that needs to be added.
transaction_request_id str The transaction request id
transaction_request_type str The transaction request type
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON210

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_account

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_account(body, view_id, account_id, bank_id)

Create Transaction Request (ACCOUNT)

When using ACCOUNT, the payee is set in the request body.

Money goes into the BANK_ID and ACCOUNT_ID specified in the request body.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyJsonV200() # TransactionRequestBodyJsonV200 | TransactionRequestBodyJsonV200 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (ACCOUNT)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_account(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_account: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyJsonV200 TransactionRequestBodyJsonV200 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_account_otp

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_account_otp(body, view_id, account_id, bank_id)

Create Transaction Request (ACCOUNT_OTP)

When using ACCOUNT, the payee is set in the request body.

Money goes into the BANK_ID and ACCOUNT_ID specified in the request body.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyJsonV200() # TransactionRequestBodyJsonV200 | TransactionRequestBodyJsonV200 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (ACCOUNT_OTP)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_account_otp(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_account_otp: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyJsonV200 TransactionRequestBodyJsonV200 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_card

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_card(body)

Create Transaction Request (CARD)

When using CARD, the payee is set in the request body .

Money goes into the Counterparty in the request body.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyCardJsonV400() # TransactionRequestBodyCardJsonV400 | TransactionRequestBodyCardJsonV400 object that needs to be added.

try:
    # Create Transaction Request (CARD)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_card(body)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_card: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyCardJsonV400 TransactionRequestBodyCardJsonV400 object that needs to be added.

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_counterparty

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_counterparty(body, view_id, account_id, bank_id)

Create Transaction Request (COUNTERPARTY)

Special instructions for COUNTERPARTY:

When using a COUNTERPARTY to create a Transaction Request, specificy the counterparty_id in the body of the request.
The routing details of the counterparty will be forwarded for the transfer.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyCounterpartyJSON() # TransactionRequestBodyCounterpartyJSON | TransactionRequestBodyCounterpartyJSON object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (COUNTERPARTY)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_counterparty(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_counterparty: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyCounterpartyJSON TransactionRequestBodyCounterpartyJSON object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_refund

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_refund(body, view_id, account_id, bank_id)

Create Transaction Request (REFUND)

Either the from or the to field must be filled. Those fields refers to the information about the party that will be refunded.

In case the from object is used, it means that the refund comes from the part that sent you a transaction.
In the from object, you have two choices :
- Use bank_id and account_id fields if the other account is registered on the OBP-API
- Use the counterparty_id field in case the counterparty account is out of the OBP-API

In case the to object is used, it means you send a request to a counterparty to ask for a refund on a previous transaction you sent.
(This case is not managed by the OBP-API and require an external adapter)

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodyRefundJsonV400() # TransactionRequestBodyRefundJsonV400 | TransactionRequestBodyRefundJsonV400 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (REFUND)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_refund(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_refund: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodyRefundJsonV400 TransactionRequestBodyRefundJsonV400 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_sepa

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_sepa(body, view_id, account_id, bank_id)

Create Transaction Request (SEPA)

Special instructions for SEPA:

When using a SEPA Transaction Request, you specify the IBAN of a Counterparty in the body of the request.
The routing details (IBAN) of the counterparty will be forwarded to the core banking system for the transfer.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodySEPAJsonV400() # TransactionRequestBodySEPAJsonV400 | TransactionRequestBodySEPAJsonV400 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (SEPA)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_sepa(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_sepa: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodySEPAJsonV400 TransactionRequestBodySEPAJsonV400 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_create_transaction_request_simple

TransactionRequestWithChargeJSON400 o_bpv4_0_0_create_transaction_request_simple(body, view_id, account_id, bank_id)

Create Transaction Request (SIMPLE)

Special instructions for SIMPLE:

You can transfer money to the Bank Account Number or Iban directly.

Initiate a Payment via creating a Transaction Request.

In OBP, a transaction request may or may not result in a transaction. However, a transaction only has one possible state: completed.

A Transaction Request can have one of several states: INITIATED, NEXT_CHALLENGE_PENDING etc.

Transactions are modeled on items in a bank statement that represent the movement of money.

Transaction Requests are requests to move money which may or may not succeed and thus result in a Transaction.

A Transaction Request might create a security challenge that needs to be answered before the Transaction Request proceeds.
In case 1 person needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => COMPLETED
In case n persons needs to answer security challenge we have next flow of state of an transaction request:
INITIATED => NEXT_CHALLENGE_PENDING => ... => NEXT_CHALLENGE_PENDING => COMPLETED

The security challenge is bound to a user i.e. in case of right answer and the user is different than expected one the challenge will fail.

Rule for calculating number of security challenges:
If product Account attribute REQUIRED_CHALLENGE_ANSWERS=N then create N challenges
(one for every user that has a View where permission "can_add_transaction_request_to_any_account"=true)
In case REQUIRED_CHALLENGE_ANSWERS is not defined as an account attribute default value is 1.

Transaction Requests contain charge information giving the client the opportunity to proceed or not (as long as the challenge level is appropriate).

Transaction Requests can have one of several Transaction Request Types which expect different bodies. The escaped body is returned in the details key of the GET response.
This provides some commonality and one URL for many different payment or transfer types with enough flexibility to validate them differently.

The payer is set in the URL. Money comes out of the BANK_ID and ACCOUNT_ID specified in the URL.

In sandbox mode, TRANSACTION_REQUEST_TYPE is commonly set to ACCOUNT. See getTransactionRequestTypesSupportedByBank for all supported types.

In sandbox mode, if the amount is less than 1000 EUR (any currency, unless it is set differently on this server), the transaction request will create a transaction without a challenge, else the Transaction Request will be set to INITIALISED and a challenge will need to be answered.

If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

You can transfer between different currency accounts. (new in 2.0.0). The currency in body must match the sending account.

The following static FX rates are available in sandbox mode:

https://test-explorer.openbankproject.com/more?version=OBPv4.0.0&list-all-banks=false&core=&psd2=&obwg=#OBPv2_2_0-getCurrentFxRate

Transaction Requests satisfy PSD2 requirements thus:

1) A transaction can be initiated by a third party application.

2) The customer is informed of the charge that will incurred.

3) The call supports delegated authentication (OAuth)

See this python code for a complete example of this flow.

There is further documentation here

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.TransactionRequestBodySimpleJsonV400() # TransactionRequestBodySimpleJsonV400 | TransactionRequestBodySimpleJsonV400 object that needs to be added.
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Create Transaction Request (SIMPLE)
    api_response = api_instance.o_bpv4_0_0_create_transaction_request_simple(body, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_create_transaction_request_simple: %s\n" % e)

Parameters

Name Type Description Notes
body TransactionRequestBodySimpleJsonV400 TransactionRequestBodySimpleJsonV400 object that needs to be added.
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_bank_account_balances

AccountBalanceJsonV400 o_bpv4_0_0_get_bank_account_balances(account_id, bank_id)

Get Account Balances

Get the Balances for one Account of the current User at one bank.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Account Balances
    api_response = api_instance.o_bpv4_0_0_get_bank_account_balances(account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_bank_account_balances: %s\n" % e)

Parameters

Name Type Description Notes
account_id str The account id
bank_id str The bank id

Return type

AccountBalanceJsonV400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_bank_accounts_balances

AccountsBalancesJsonV400 o_bpv4_0_0_get_bank_accounts_balances(bank_id)

Get Accounts Balances

Get the Balances for the Accounts of the current User at one bank.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Accounts Balances
    api_response = api_instance.o_bpv4_0_0_get_bank_accounts_balances(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_bank_accounts_balances: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

AccountsBalancesJsonV400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_banks

BanksJson400 o_bpv4_0_0_get_banks()

Get Banks

Get banks on this API instance
Returns a list of banks supported on this server:

  • ID used as parameter in URLs
  • Short and full name of bank
  • Logo URL
  • Website

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Get Banks
    api_response = api_instance.o_bpv4_0_0_get_banks()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_banks: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

BanksJson400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_consent_infos

ConsentInfosJsonV400 o_bpv4_0_0_get_consent_infos(bank_id)

Get Consents Info

This endpoint gets the Consents that the current User created.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Consents Info
    api_response = api_instance.o_bpv4_0_0_get_consent_infos(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_consent_infos: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

ConsentInfosJsonV400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_consents

ConsentsJsonV400 o_bpv4_0_0_get_consents(bank_id)

Get Consents

This endpoint gets the Consents that the current User created.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Consents
    api_response = api_instance.o_bpv4_0_0_get_consents(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_consents: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

ConsentsJsonV400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_core_account_by_id

ModeratedCoreAccountJsonV400 o_bpv4_0_0_get_core_account_by_id(account_id, bank_id)

Get Account by Id (Core)

Information returned about the account specified by ACCOUNT_ID:

  • Number - The human readable account number given by the bank that identifies the account.
  • Label - A label given by the owner of the account
  • Owners - Users that own this account
  • Type - The type of account
  • Balance - Currency and Value
  • Account Routings - A list that might include IBAN or national account identifiers
  • Account Rules - A list that might include Overdraft and other bank specific rules
  • Tags - A list of Tags assigned to this account

This call returns the owner view and requires access to that view.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Account by Id (Core)
    api_response = api_instance.o_bpv4_0_0_get_core_account_by_id(account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_core_account_by_id: %s\n" % e)

Parameters

Name Type Description Notes
account_id str The account id
bank_id str The bank id

Return type

ModeratedCoreAccountJsonV400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_counterparties_for_any_account

CounterpartiesJson400 o_bpv4_0_0_get_counterparties_for_any_account(view_id, account_id, bank_id)

Get Counterparties for any account (Explicit)

Get the Counterparties (Explicit) for any account .

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Counterparties for any account (Explicit)
    api_response = api_instance.o_bpv4_0_0_get_counterparties_for_any_account(view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_counterparties_for_any_account: %s\n" % e)

Parameters

Name Type Description Notes
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

CounterpartiesJson400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_explict_counterparties_for_account

CounterpartiesJson400 o_bpv4_0_0_get_explict_counterparties_for_account(view_id, account_id, bank_id)

Get Counterparties (Explicit)

Get the Counterparties (Explicit) for the account / view.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Counterparties (Explicit)
    api_response = api_instance.o_bpv4_0_0_get_explict_counterparties_for_account(view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_explict_counterparties_for_account: %s\n" % e)

Parameters

Name Type Description Notes
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

CounterpartiesJson400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_explict_counterparty_by_id

CounterpartyWithMetadataJson400 o_bpv4_0_0_get_explict_counterparty_by_id(counterparty_id, view_id, account_id, bank_id)

Get Counterparty by Id (Explicit)

Information returned about the Counterparty specified by COUNTERPARTY_ID:

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
counterparty_id = 'counterparty_id_example' # str | the counterparty id
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Counterparty by Id (Explicit)
    api_response = api_instance.o_bpv4_0_0_get_explict_counterparty_by_id(counterparty_id, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_explict_counterparty_by_id: %s\n" % e)

Parameters

Name Type Description Notes
counterparty_id str the counterparty id
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

CounterpartyWithMetadataJson400

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_settlement_accounts

SettlementAccountsJson o_bpv4_0_0_get_settlement_accounts(bank_id)

Get Settlement accounts at Bank

Get settlement accounts on this API instance
Returns a list of settlement accounts at this Bank

Note: a settlement account is considered as a bank account.
So you can update it and add account attributes to it using the regular account endpoints

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Settlement accounts at Bank
    api_response = api_instance.o_bpv4_0_0_get_settlement_accounts(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_settlement_accounts: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

SettlementAccountsJson

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv4_0_0_get_transaction_request

TransactionRequestWithChargeJSON210 o_bpv4_0_0_get_transaction_request(transaction_request_id, view_id, account_id, bank_id)

Get Transaction Request.

Returns transaction request for transaction specified by TRANSACTION_REQUEST_ID and for account specified by ACCOUNT_ID at bank specified by BANK_ID.

The VIEW_ID specified must be 'owner' and the user must have access to this view.

Version 2.0.0 now returns charge information.

Transaction Requests serve to initiate transactions that may or may not proceed. They contain information including:

  • Transaction Request Id
  • Type
  • Status (INITIATED, COMPLETED)
  • Challenge (in order to confirm the request)
  • From Bank / Account
  • Details including Currency, Value, Description and other initiation information specific to each type. (Could potentialy include a list of future transactions.)
  • Related Transactions

PSD2 Context: PSD2 requires transparency of charges to the customer.
This endpoint provides the charge that would be applied if the Transaction Request proceeds - and a record of that charge there after.
The customer can proceed with the Transaction by answering the security challenge.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
transaction_request_id = 'transaction_request_id_example' # str | The transaction request id
view_id = 'view_id_example' # str | The view id
account_id = 'account_id_example' # str | The account id
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Transaction Request.
    api_response = api_instance.o_bpv4_0_0_get_transaction_request(transaction_request_id, view_id, account_id, bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv4_0_0_get_transaction_request: %s\n" % e)

Parameters

Name Type Description Notes
transaction_request_id str The transaction request id
view_id str The view id
account_id str The account id
bank_id str The bank id

Return type

TransactionRequestWithChargeJSON210

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_create_consent_by_consent_request_id_email

ConsentJsonV500 o_bpv5_0_0_create_consent_by_consent_request_id_email()

Create Consent By CONSENT_REQUEST_ID (EMAIL)

This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.
Please note that the Consent cannot elevate the privileges logged in user already have.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Create Consent By CONSENT_REQUEST_ID (EMAIL)
    api_response = api_instance.o_bpv5_0_0_create_consent_by_consent_request_id_email()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_create_consent_by_consent_request_id_email: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

ConsentJsonV500

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_create_consent_by_consent_request_id_sms

ConsentJsonV500 o_bpv5_0_0_create_consent_by_consent_request_id_sms()

Create Consent By CONSENT_REQUEST_ID (SMS)

This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.
Please note that the Consent cannot elevate the privileges logged in user already have.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Create Consent By CONSENT_REQUEST_ID (SMS)
    api_response = api_instance.o_bpv5_0_0_create_consent_by_consent_request_id_sms()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_create_consent_by_consent_request_id_sms: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

ConsentJsonV500

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_create_consent_request

ConsentRequestResponseJson o_bpv5_0_0_create_consent_request(body)

Create Consent Request

Client Authentication (mandatory)

It is used when applications request an access token to access their own resources, not on behalf of a user.

The client needs to authenticate themselves for this request.
In case of public client we use client_id and private kew to obtain access token, otherwise we use client_id and client_secret.
The obtained access token is used in the HTTP Bearer auth header of our request.

Example:
Authorization: Bearer eXtneO-THbQtn3zvK_kQtXXfvOZyZFdBCItlPDbR2Bk.dOWqtXCtFX-tqGTVR0YrIjvAolPIVg7GZ-jz83y6nA0

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
body = obp_python.PostConsentRequestJsonV500() # PostConsentRequestJsonV500 | PostConsentRequestJsonV500 object that needs to be added.

try:
    # Create Consent Request
    api_response = api_instance.o_bpv5_0_0_create_consent_request(body)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_create_consent_request: %s\n" % e)

Parameters

Name Type Description Notes
body PostConsentRequestJsonV500 PostConsentRequestJsonV500 object that needs to be added.

Return type

ConsentRequestResponseJson

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_get_bank

BankJson500 o_bpv5_0_0_get_bank(bank_id)

Get Bank

Get the bank specified by BANK_ID
Returns information about a single bank specified by BANK_ID including:

  • Bank code and full name of bank
  • Logo URL
  • Website

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))
bank_id = 'bank_id_example' # str | The bank id

try:
    # Get Bank
    api_response = api_instance.o_bpv5_0_0_get_bank(bank_id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_get_bank: %s\n" % e)

Parameters

Name Type Description Notes
bank_id str The bank id

Return type

BankJson500

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_get_consent_by_consent_request_id

ConsentJsonV500 o_bpv5_0_0_get_consent_by_consent_request_id()

Get Consent By Consent Request Id

This endpoint gets the Consent By consent request id.

Authentication is Mandatory

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Get Consent By Consent Request Id
    api_response = api_instance.o_bpv5_0_0_get_consent_by_consent_request_id()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_get_consent_by_consent_request_id: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

ConsentJsonV500

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]

o_bpv5_0_0_get_consent_request

ConsentRequestResponseJson o_bpv5_0_0_get_consent_request()

Get Consent Request

Authentication is Optional

Example

from __future__ import print_function
import time
import obp_python
from obp_python.rest import ApiException
from pprint import pprint

# Configure API key authorization: directLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'
# Configure API key authorization: gatewayLogin
configuration = obp_python.Configuration()
configuration.api_key['Authorization'] = 'YOUR_API_KEY'
# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['Authorization'] = 'Bearer'

# create an instance of the API class
api_instance = obp_python.PSD2Api(obp_python.ApiClient(configuration))

try:
    # Get Consent Request
    api_response = api_instance.o_bpv5_0_0_get_consent_request()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling PSD2Api->o_bpv5_0_0_get_consent_request: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

ConsentRequestResponseJson

Authorization

directLogin, gatewayLogin

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

[Back to top] [Back to API list] [Back to Model list] [Back to README]