Intro
Allows developer to request Customer Authentication using picked authentication provider. The secret will be provided using USSD channel.
Authenticating customer
API permission
Performing customer authentication requires to have `CUSTOMER_AUTHENTICATION` permission.
If `CUSTOMER_AUTHENTICATION` permission wasn't grant to you, please contact Qrios team.
Initiating customer authentication
Operation callback
When the operation reaches the final state, the developer will receive a notification to callback URL defined during the registration.
Callback schema
Content-Type: application/json
clientId
- client identifier- type: string
operationId
- operation identifier- type: string
operation
- operation type- type: string (enum) - possible values: [
customerauthentication
]
- type: string (enum) - possible values: [
status
- type: object
- properties:
result
- operation status- type: string (enum) - possible values: [
success
,failure
,unknown
]
- type: string (enum) - possible values: [
cause
- failure cause. It is defined when the operation has thefailure
status- type: string (enum) - check swagger for details
customerauthentication
- type: object
- properties:
authenticationResult
- result of customer authentication. It is defined when the operation has thesuccess
status. type: string (enum) - possible values: [AUTHENTICATION_SUCCESS
,AUTHENTICATION_FAILED
,AUTHENTICATION_TIMEOUT
]
Callback examples
Successul customer authentication
The customer was successfully authenticated
{
"clientId": "ouVkgq0f",
"operationId": "operationId",
"operation": "customerauthentication",
"status": {
"result": "success"
},
"customerauthentication": {
"authenticationResult": "AUTHENTICATION_SUCCESS"
}
}
Failed customer authenitcation
The customer failed to authenticate (e.g. customer entered invalid PIN)
{
"clientId": "ouVkgq0f",
"operationId": "operationId",
"operation": "customerauthentication",
"status": {
"result": "success"
},
"customerauthentication": {
"authenticationResult": "AUTHENTICATION_FAILED"
}
}
Timed out customer authentication
The customer didn't proceed authentication. The operation was finished due to authentication timeout
{
"clientId": "ouVkgq0f",
"operationId": "operationId",
"operation": "customerauthentication",
"status": {
"result": "success"
},
"customerauthentication": {
"authenticationResult": "AUTHENTICATION_TIMEOUT"
}
}
Qrios API failed to initiate a customer authentication
Qrios API failed to initiate a authentication process for given customer
{
"clientId": "ouVkgq0f",
"operationId": "operationId",
"operation": "customerauthentication",
"status": {
"result": "failure",
"cause": "other"
},
"customerauthentication": {
"authenticationResult": null
}
}