-
Notifications
You must be signed in to change notification settings - Fork 430
BNP Paribas OBP API Sandbox
This is a special page for the BNP Paribas OBP API sandbox created for the BNP Paribas International Hackathon on June 09-11 2017 in Berlin, Brussels, Istanbul, Luxemburg, Nanjing, Paris, Rome, San Francisco, Singapore and Warsaw.
This document may be updated.
Open Bank Project is an open source API for banks that provides a RESTful interface for developers to build customer facing applications without needing to code for each bank and/or account type differently. You can use it as a flexible toolbox of data and services to help realise (a.k.a. hack!) your ideas together. For these hackathons, developers have access to simulated transaction data for imaginary customers and anonymised data which requires explicit permision to access (see below).
Customer facing retail banking and fintech applications for consumers, SMEs, associations, charities, governments and NGOs; including (but not limited to!) Personal Finance Management (PFM) Solutions, online accounting integration, financial widgets, Savings Apps, Education Apps, Gamification, Peace of Mind Apps, Transparency Apps, Crowd funding, on boarding, CRM, Data Analytics etc..
This OBP instance contains a mixture of dummy customer related data (see the list below) and anonymised BNP Paribas warehouse data.
- Account information, balance and transaction history of multiple bank accounts
- Enrich bank transactions with metadata (tags, comments, urls and geolocation) for example to link a receipt or video to a transaction
- Create/Access different views on accounts. Each view grants a subset of the data to a restricted group of users. For example, a customer could offer special views on his account to his accountants, auditors or regulators. A charity might open their accounts to the public
- Initiate payments (Transaction Requests)
- Onboard Customers (KYC etc.)
Please note: Access to the Anonymised Data Warehouse is restricted to the participants of the Internatational Hackathon
-
Logout here https://bnpparibas-api.openbankproject.com/
-
Register a username / password that will be used in your App to get access to the anonymised datawarehouse data.
-
Login here as that user https://bnpparibas-apiexplorer.openbankproject.com/
-
Get the user_id of this user using the API / API Explorer https://bnpparibas-apiexplorer.openbankproject.com/?version=2.0.0&ignoredefcat=true#2_0_0-getCurrentUser
-
Send us your Full Name, Project Name, email and the user_id(s) that should access this data to [email protected] or via Slack.
-
Once we have granted you access we will notifiy you on Slack
-
Now you can use the end point documented at Search Warehouse
- 20170531-declared-products, 20170531-sme-transactions, 20170531-transactions, 20170531-contracts, 20170531-taxes, 20170531-charges, 20170531-revenues, 20170531-individual-clients, 20170531-markets, 20170531-sme-client, 20170531-assets, 20170531-sme-contracts
-
Get all customers' transactions:
https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-transactions
-
To page through all transactions use
size=x
andfrom=y
(Hint:hits.total
in the response tells you the limit for subsequent calls):https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-transactions&size=10&from=34
-
Get transactions for one particular customer: Urlencode the query:
https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-transactions+AND+customer_id:139468
-
Get all last year transactions of one customer: See above, then filter
transaction_date
for regex/^16\//
in your application. -
Get Saving Capacity of one customer: Check field
mtt_epar
in the output of:https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-individual-clients+AND+customer_id:76
-
Get total income in the last year (2016) for one customer: Check field
mtt_rvn_annuel
in the output of:https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-revenues+AND+customer_id:63477+AND+annee_rvn:2016
-
Get all private asset records for a specified customer:
https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-assets+AND+customer_id:139468+AND+categ_ptmn:1
-
Get total number of transactions in the a given month for counterparty JAITOKEI.X: Check
hits.total
in the output of:https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-sme-transactions+AND+counterparty_name:JAITOKEI.X+AND+transaction_date:%5b2013-11-01+TO+2013-11-30%5d
-
Get names of all SMEs which have a 'very low' default risk: Check field
name
in the output of:https://bnpparibas-api.openbankproject.com/obp/v2.0.0/search/warehouse/q=_index:20170531-sme-client+AND+risk_default1:D0
*Get all private asset records for a specified customer:
https://bnpparibas-api.openbankproject.com/obp/v3.0.0/search/warehouse/q=_index:20170531-assets+AND+customer_id:139468+AND+categ_ptmn:1
or
https://bnpparibas-api.openbankproject.com/obp/v3.0.0/search/warehouse { "es_uri_part": "/_search?q=_index:20170531-assets+AND+customer_id:139468+AND+categ_ptmn:1", "es_body_part": {} }
Coming soon...
For more information about Elastic Search query syntax see https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html#query-string-syntax
-
If you have questions please post to the
api_sandbox_support
channel onbnpp-intnl-hacktn2017
's Slack.
For a list of field names available to search please use the private slack channel here
You will need to register your application here. You will get a consumer key and consumer secret for the calls requiring OAuth or Direct Login authentication.
For hackathon situations, unless you are already familiar / connected to our OAuth server, we recommend Direct Login. See the Direct Login instructions here
To get started with OBP and OAuth we recommend you use (and fork) one of our Starter SDKs
Note: Many examples in the docs / SDKs use the general OBP sandbox domain. Make sure you use the correct domain in all calls i.e. bnpparibas-api.openbankproject.com !
-
Q: I'm getting a 401 even if I enter the right consumer key and secret. Is the endpoint: apisandbox... correct ?
A: No, its bnpparibas-api.openbankproject.com
-
Q: I'm getting 404's / errors
A: Avoid trailing slashes:
https://bnpparibas-api.openbankproject.com/obp/v2.2.0 200 OK
https://bnpparibas-api.openbankproject.com/obp/v2.2.0/ 404 Not Found
https://bnpparibas-api.openbankproject.com/obp/v2.2.0/banks 200 OK
https://bnpparibas-api.openbankproject.com/obp/v2.2.0/banks/ 200 OK {"error":"error"}
https://bnpparibas-api.openbankproject.com/obp/v2.2.0/banks/bnpparibas.07.fr 200 OK
https://bnpparibas-api.openbankproject.com/obp/v2.2.0/banks/bnpparibas.07.fr/ 404 Not Found
-
Q: Why doesn't it work?
A: Double check parameters are spelt correctly (including http vs https etc.)
A: Check your encoding (use UTF8)
Technical details about the OAuth flow including getting a request token, redirecting the user, getting an access token and accessing protected resources are available here. Please ask us (see below) if you are stuck with this.
During the OAuth login or Direct Login, the user of your app will be asked for a customer username/password.
Here are some example logins (user_name / password) to test your Direct Login or OAuth flow:
"users":[{
"user_name":"Robin.Fr.12",
"password":"X!d11d59c6",
"email":"[email protected]"
},{
"user_name":"Suzanne.Fr.12",
"password":"X!b0c0d6cf",
"email":"[email protected]"
},{
"user_name":"Nathan.Fr.12",
"password":"X!499d84e5",
"email":"[email protected]"
},{
"user_name":"Elise.Fr.12",
"password":"X!a6fd5046",
"email":"[email protected]"
},{
"user_name":"Roberto.It.12",
"password":"X!1ed98d9e",
"email":"[email protected]"
},{
"user_name":"Susanna.It.12",
"password":"X!b64b7940",
"email":"[email protected]"
},{
"user_name":"Alfio.It.12",
"password":"X!c7c2e872",
"email":"[email protected]"
},{
"user_name":"Elisa.It.12",
"password":"X!8da3e981",
"email":"[email protected]"
},{
"user_name":"Robert.Be.12",
"password":"X!d7fc9f52",
"email":"[email protected]"
},{
"user_name":"Susan.Be.12",
"password":"X!e998d32f",
"email":"[email protected]"
},{
"user_name":"Anil.Be.12",
"password":"X!74089477",
"email":"[email protected]"
},{
"user_name":"Ellie.Be.12",
"password":"X!178983c2",
"email":"[email protected]"
},{
"user_name":"Robert.De.12",
"password":"X!2b63b782",
"email":"[email protected]"
},{
"user_name":"Susan.De.12",
"password":"X!76146a1f",
"email":"[email protected]"
},{
"user_name":"Anil.De.12",
"password":"X!5691216b",
"email":"[email protected]"
},{
"user_name":"Ellie.De.12",
"password":"X!eeb323af",
"email":"[email protected]"
},{
"user_name":"Robert.Uk.12",
"password":"X!5ecef64d",
"email":"[email protected]"
},{
"user_name":"Susan.Uk.12",
"password":"X!88db96fd",
"email":"[email protected]"
},{
"user_name":"Anil.Uk.12",
"password":"X!c27630da",
"email":"[email protected]"
},{
"user_name":"Ellie.Uk.12",
"password":"X!dd9c11a8",
"email":"[email protected]"
},{
"user_name":"Robert.Sg.12",
"password":"X!5bb95507",
"email":"[email protected]"
},{
"user_name":"Susan.Sg.12",
"password":"X!02a816e4",
"email":"[email protected]"
},{
"user_name":"Anil.Sg.12",
"password":"X!6667cb40",
"email":"[email protected]"
},{
"user_name":"Ellie.Sg.12",
"password":"X!a41b22fb",
"email":"[email protected]"
},{
"user_name":"Robin.Lu.12",
"password":"X!72eebc7b",
"email":"[email protected]"
},{
"user_name":"Suzanne.Lu.12",
"password":"X!0c61bab9",
"email":"[email protected]"
},{
"user_name":"Nathan.Lu.12",
"password":"X!7a4c7861",
"email":"[email protected]"
},{
"user_name":"Elise.Lu.12",
"password":"X!dd064e96",
"email":"[email protected]"
}],
Note: In order to access the proper simulated accounts, please ask a member of the Open Bank Project team for a login. You can use this application which also uses OAuth to browse your transaction data (use the above username/password).
-
For questions about the hackathon events please see:
http://www.international-hackathon.bnpparibas
-
To contact Open Bank Project use:
Email: [email protected]
Twitter: @OpenBankProject