API allows RAKBANK to intimate FinTechs & Third Party App back-ends (TPA) about updates in customer registration and account linkage status. The API would be invoked in the following scenarios:
SCENARIO 1 : A business banking customer, previously registered on the Third Party App and linked his/her bank account to the TPA, has accidentally locked his/her RAKBANK Digital Banking account. The customer would be restricted from accessing his/her bank account from the TPA as well. RAKBANK will notify the TPA about the delinked status of the customer using this API. The customer can reinitiate bank linkage from the TPA by providing consent as part of OAuth Authorization Code flow, after his/her Digital Banking account is unlocked.
SCENARIO 2 : A business banking customer, previously registered on the Third Party App, resigns from the company. The customer's Digital Banking access will be removed and instantly deregistered from the Third Party App as well. RAKBANK will notify the TPA about the deregistered status of the customer using this API.
SCENARIO 3 : A business banking customer, previously registered on the Third Party App as part of RAKValue SME package, de-enrolls from the RAKValue package. The customer and all related users of the company will be instantly deregistered from the Third Party App as well. RAKBANK will notify the TPA about the deregistered status of the customer using this API.
The finTech is expected to host the notification API on their server as per the documentation provided here.
Basepath
/v1/tpa
Paths
/customers/{customer_id_type}:{customer_id}/tpa_registration_status
Notify the TPA about a customer's TPA registration status at the bank.
Allows status of a customer's TPA registration to be updated at the TPA
Value should be a unique identifier of the request in UUID format.
{
"maxLength": 50
}
Service Provider Id, to identify the Third Party client, whom this notification is intended for. For e.g. 'ACC' in case of Accountable.
{
"maxLength": 5
}
Customer Id of the business banking customer or a specific related user who's details are to be updated. E.g. customer UUID.
{
"maxLength": 98
}
Type of the Customer Id of the customer who's TPA registration status is to be updated. Allowed values:
- CCIF - CCIF value of a business banking customer
- UUID - UUID value of a specific business banking user of a company
{
"enum": [
"UUID",
"CCIF"
]
}
Details to update a customer's TPA registration status
Error Response
Internal Server Error
Definitions
Response in case of error
{
"properties": {
"status": {
"type": "string",
"description": "HTTP Status",
"example": 422
},
"response_code": {
"type": "string",
"description": "API specific error code",
"example": 20033
},
"property": {
"type": "string",
"description": "Name of the property that has an issue in case of technical errors"
},
"response_message": {
"type": "string",
"description": "brief details of the error",
"example": "Business Exception"
},
"description": {
"type": "string",
"example": "Customer already delinked"
}
},
"additionalProperties": false,
"required": [
"response_message",
"response_code",
"status"
]
}
TPA registration status details
{
"properties": {
"status": {
"type": "string",
"enum": [
"REG",
"DRG"
],
"example": "REG",
"description": "TPA registration status. Allowed values: \n- REG – Registered.\n - Can be passed along with UUID when a specific business banking user is delinked (SCENARIO 1).\n \n- DRG - Deregistered. \n - Can be passed along with UUID when a specific business banking user is deregistered (SCENARIO 2).\n - Can be passed along with CCIF when business banking customer de-enrolls from the RAKValue SME package (SCENARIO 3). \n \n"
}
},
"additionalProperties": false,
"required": [
"status"
]
}