This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.
Using the Signup Workflow for Berlin
Third-Party Providers (/wiki/spaces/OB200/pages/48629460) can create third-party applications to facilitate banking services exposed via Bank APIs.
Before getting TPPs connected with the Banks and onboard, they are subjected to thorough verification. This verification includes a comprehensive sign-up process at the API Store, the developer portal of WSO2 Open Banking. For a TPP to start providing open banking services, it has to be registered under a Competent Authority, which is a regulatory body that authorizes and supervises the open banking services delivered by the TPP.
This page instructs you how to try out a sample TPP onboarding process.
Prerequisites
- Download
WSO2 Enterprise Integrator (WSO2 EI) 6.6.0
and unzip the file. Set the
path (WSO2EI_PATH)
andhostname
(EI_HOSTNAME)
to WSO2 EI in the<WSO2_OB_APIM_HOME>/repository/resources/finance/script/startup.properties
file.If you are using Microsoft SQL Server or Oracle, create the
bpsdb
andbps_configdb
databases.Go to the
<WSO2_OB_APIM_HOME>/repository/resources/finance/scripts/wso2ei-bps
directory and give execution permissions to theconfigure-bps.sh
file.Run
configure-bps.sh
- Add Business Process Execution Langauage and humantask workflows using the web interface:
Log into
https://<<WSO2_EI_HOSTNAME>>:9445/carbon
Sign in as a super admin. Default credentials are: - Username:
admin@wso2.com
- Password:wso2123
- Click Main → Manage → Processes → Add → BPEL and select Upload to upload the BPEL workflows:
- Click Main → Manage → Human Tasks → Add and select Upload to upload the BPEL workflows
Change the URL of
WSO2CARBON_DB
in<WSO2_EI_HOME>/wso2/business-process/conf/datasources/master-datasources.xml
to an explicit relative path.- Add the jdbc drivers to
<WSO2_EI_HOME>/lib.
Navigate to the
<WSO2_EI_HOME>/wso2/business-process/bin
directory, and execute the following command:./wso2server.sh -Dsetup
Sign in to the API management console
https://<WSO2_OB_APIM_HOST>:9443/carbon.
Sign in as a super admin. Default credentials are: - Username: admin@wso2.com - Password: wso2123
Click Main → Resources → Browse.
Navigate to the
/_system/governance/apimgt/applicationdata/workflow-extensions.xml
registry file.In the
workflow-extensions.xml
registry file, navigate to Content and click Edit as text.Add the following configurations under
ProductApplicationRegisteration and
UserSignup
in the registry file:<ProductionApplicationRegistration executor="com.wso2.finance.tpp.prodaccess.impl.TPPProdAccessWorkFlow"> <Property name="serviceEndpoint">http://localhost:9765/services/ApplicationRegistrationWorkFlowProcess/</Property> <Property name="username">admin@wso2.com@carbon.super</Property> <Property name="password">wso2123</Property> <Property name="callbackURL">https://localhost:8243/services/WorkflowCallbackService</Property> </ProductionApplicationRegistration>
<UserSignUp executor="com.wso2.finance.tpp.signup.impl.TPPSignUpWorkFlow"> <Property name="serviceEndpoint">http://localhost:9765/services/UserSignupProcess/</Property> <Property name="username">admin@wso2.com@carbon.super</Property> <Property name="password">wso2123</Property> <Property name="callbackURL">https://localhost:8243/services/WorkflowCallbackService</Property> <Property name="aispRole">internal/aispRole</Property> <Property name="pispRole">internal/pispRole</Property> <Property name="piispRole">internal/piispRole</Property> </UserSignUp>
- Click Save Content.
Add claim configurations:
If you are starting the
WSO2 OB IAM
andWSO2 OB APIM
servers for the first time or for a newly created tenant, follow the instructions given below. Otherwise, you need to add the claim configurations asexternal claims
via the web interfaces as instructed in here.- Configure e-mail sending module:
Add the following properties to the
<WSO2_OB_IAM_HOME>/repository/conf/deployment.toml
file:[output_adapter.email] from_address= "<mail address from where you want to send the notification>" username= "<username of the the mail you have provide in from_address>" password= "<password of the the mail you have provide in from_address>" hostname= "<hostname of the SMTP server to connect to>" port= <port of the SMTP server port to connect to, if the connect() method does not explicitly specify on, default is set to 25> enable_start_tls= <If true, enables the use of the STARTTLS` command. Default is set to false> enable_authentication= <If true, attempt to authenticate the user using the AUTH command. Default. is set to false>
If you are using a Google mail account, note that Google has restricted third-party apps and less secure apps from sending emails by default. Therefore, you need to configure your account to disable this restriction when sending emails to confirm user registrations.
- Navigate to https://myaccount.google.com/security.
- Click Signing in to Google on the left menu and make sure that the 2-step Verification is disabled or off.
- Click Connected apps and sites on the left menu and enable Allow less secure apps .
- Click Connected apps and sites on the left menu and enable Allow less secure apps .
Before you begin,
Before you try out the signup workflow, make sure to create the following users and roles:
- internal/aispRole
- internal/pispRole
- internal/piispRole
- internal/approverRole
For instructions to create users and roles, see Configuring Users and Roles.
Step 1 - Sign up as a TPP
Navigate to the WSO2 Open Banking Developer portal at
https://<WSO2_OB_APIM_HOST>:9443/devportal
.- Go to the Applications tab in the Developer Portal.
- In the Sign-in form, click Create Account.
- Provide a username and click Proceed Self Register.
- Fill the Create New Account form to complete registration.
Read terms and conditions. Click the checkbox to agree to the terms and conditions.
Click Register.
If you have configured workflows to WSO2 Open Banking that is described under Prerequisites, a request to approve the user sign up is sent to the admin users.
Step 02 Approve the TPP user account
Follow the steps below to approve the newly created TPP user account:
It is not mandatory to include the approval step for the TPP user. In order to add this step, make sure you configured WSO2 OB EI
, WSO2 OB IAM
, and WSO2 OB APIM
instances as explained under Prerequisites .
Navigate to the Admin Portal at
https://<WSO2_OB_APIM_HOST>:9443/admin
.Locate the approval request and click Assign To Me.
- Click Start to start the approval process.
- Select Approve and click Complete.
The TPP user can now sign in to the API Store.
Step 03 Sign in as a TPP user
Sign in to the Developer portal as the TPP at
https://<WSO2_OB_APIM_HOST>:9443/devportal
.- Enter the username and the password you entered when signing up as a TPP.
- Click Continue.
The homepage of the Developer portal is now displayed along with the published APIs.
Step 04 Create an application
Go to the Applications tab in the Developer Portal.
Click ADD NEW APPLICATION.
Enter application details.
- WSO2 Open Banking currently authenticates the TPP applications using the Reference (Opaque) method.
- For the Application Certificate, you need to upload the QSealC certificate obtained from a Qualified Trust Service Provider (QTSP). For testing purposes, WSO2 Open Banking provides a sample eIDAS certificate.
To download the sample eIDAS certificate, click here.
You can validate the Organization Identifier field according to a custom regex you provide:
This is available only as a WSO2 Update and is effective from August 11, 2021 (08-11-2021). For more information on updating WSO2 Open Banking, see Updating WSO2 Products.
Click SAVE.
An application can be used to subscribe to multiple APIs. See Subscribe to an API for the instructions.
Step 05 Subscribe to API
Go to the APIs tab in the Developer portal.
- Select the NextGenPSD2XS2A Framework API.
- Go to Subscriptions at the bottom of the API and select SUBSCRIBE.
- Select an Application from the drop-down list, set the Throttling Policy and click SUBSCRIBE.
- Once you subscribe, you can find the list of subscriptions in the bottom.
Now that you have subscribed to the API, generate access tokens and invoke the API.
Step 06 - Create and upload certificates
In order to use self-signed certificates as mentioned in the below steps, disable the certificate revocation validation
in the <WSO2_OB_IAM_HOME>/repository/conf/deployment.toml
and <WSO2_OB_APIM_HOME>/repository/conf/deployment.toml
files as follows:
[open_banking.cert_mgt.cert_revocation_proxy] enable = false
Once you create a self-signed root certificate, upload it to the client trust stores of WSO2 OB APIM and WSO2 OB IAM.
- Locate the client trust stores in WSO2 OB APIM and WSO2 OB KM in the following directory paths:
<WSO2_OB_APIM_HOME>/repository/resources/security/client-truststore.jks
<WSO2_OB_IAM_HOME>/repository/resources/security/client-truststore.jks
Use the following command to upload the self-signed certificate:
keytool -import -alias <alias> -keystore cacerts -file <PEMFileName>.pem
Step 07 Generate keys
Sign in to WSO2 Open Banking Developer portal as a TPP user.
Go to the Applications tab and select the application you used to subscribe to the Confirmation of Funds API.
- Scroll down and select either of the following types of keys:
Production Keys: Generates access tokens in the production environment.
Sandbox Keys: Generates access tokens in the sandbox environment.
- Click Manage at the bottom of the application.
Provide the requested information as defined below:
Field
Description
Grant Types
These determine the credentials that are used to generate the access token.
- Code: This relates to the authorisation code grant type and is applicable when consuming the API as a user.
- Implicit: This is similar to the code grant type, but instead of generating code, this directly provides the access token.
- Refresh Token: This is to renew an expired access token.
- Client Credential: This relates to the client credentials grant type and is applicable when consuming the API as an application.
Callback URL
This is the URL used by the TPP to receive the authorisation code sent from the Account Servicing Payment Service Provider (ASPSP), e.g: bank. The authorisation code can be used later to generate an OAuth2 access token.
Application Certificate
This is the content between the BEGIN CERTIFICATE and END CERTIFICATE strings of the application certificate (.PEM) that you created above.
For testing purposes, you may use the here to download a sample application certificate, if you have configured the OB certificates.
- Click GENERATE KEYS to generate production or sandbox keys. It generates consumer key and consumer secret.
Step 08 Approve key generation
Follow the steps below to approve the access key generation:
- Navigate to the Admin Portal.
- Click Tasks > Application Registration.
- Locate the approval request and click Assign To Me.
- Click Start to start the approval process.
- Select Approve and then click Complete.
Next, you can create an application access token to invoke the APIs. For more information, see: