cm anonymous qr code - monetplus/IDport GitHub Wiki
This flow describes how to initiate transaction and obtain data for anonymous QR code. There are more ways how to determine transaction state to determine if the anonymous transaction is already acquired.
-
Initiate transaction for anonymous QR code
IAPI/initiateTransaction
- Scan and authorize transaction in mobile app
- initiate anonymous transaction (aka anonymous QR code) for authorization with online mobile instance
- specific parameters setting:
operationType = AUTHORIZATION
-
type = PIN
for PIN only authorization,type = ALT_SECRET
for PIN and biometric authorization processingOptions.authorizationFlow = ONLINE
-
muid
is missing => anonymous transaction
- in response
methodSpecific.qrData
is base64-encoded text data for QR code - used parameters:
Parameter | Description | Required | Value example |
---|---|---|---|
methodType |
type of used method | true | ["PASSWORD","SMS","CM"] |
operationType |
type of initiated transaction, deafault value is AUTHORIZATION | false | ["AUTHENTICATION","AUTHORIZATION"] |
tenant |
organisation name, if not supplied, default value from configuration is taken | false | Monet+ |
type |
secret that can be used for transaction verification, secrets hierarchy: PIN > ALT_SECRET > NO_PIN, stronger secret can be used always, default value is PIN | false | ["PIN","NO_PIN","INFORMATION_MESSAGE","ALT_SECRET_ACTIVATION"] |
processingOptions.authorizationFlow |
distinguishes how the transaction can be verified, default value is ONLINE_OFFLINE | false | ["ONLINE","OFFLINE","ONLINE_OFFLINE"] |
transactionData.data |
WYSIWYS transaction data (base64-encoded) | true | PFdZU0lXWVMgeG1sbnM9Imh0dHA6Ly9tZXAubW9uZXRwbHVzLmN6IiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB2ZXJzaW9uPSIxLjIiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21lcC5tb25ldHBsdXMuY3ogbWVwX3d5c2l3eXNfMV8yLnhzZCI+DQoJPHQ+DQoJCTxsdlNwZWMgbD0iTsOhemV2IHRyYW5zYWtjZSIgbHdzPSIiIHdzPSIiPlDFmWlobMOhxaFlbsOtIGRvIGFwbGlrYWNlPC9sdlNwZWM+DQoJCTxsdiBpZD0iQVBQX0lEIiBsPSJBcGxpa2FjZSI+QkxVRTwvbHY+DQoJCTxsdiBpZD0iVFJBTlNBQ1RJT05fSUQiIGw9IklEIG9wZXJhY2UiPjE2MDcyNjAwMDAwMDA1NzwvbHY+DQoJCTxsdiBpZD0iQVBQTElDQVRJT05fTkFNRSIgbD0iTsOhemV2IGFwbGlrYWNlIj5CTFVFPC9sdj4NCgkJPGx2IGlkPSJUSU1FU1RBTVAiIGw9IkRhdHVtIGEgxI1hcyB0cmFuc2FrY2UiPjI2LjA3LjIwMTYgMTU6MjQ6MjA8L2x2Pg0KCQk8bHYgaWQ9IkNBU0VfTkFNRSIgbD0iTsOhemV2IHRyYW5zYWtjZSI+UMWZaWhsw6HFoWVuw60gZG8gYXBsaWthY2U8L2x2Pg0KCTwvdD4NCjwvV1lTSVdZUz4= |
transactionData.locale |
language code according to ISO 639-1 | true | cs |
transactionData.template |
transformation template | true | AUTHENTICATION |
- REST API callback:
IAPI/initiateTransaction
POST http://${BASE_URL}/case-iapi/v1/initiateTransaction
{
"tenant": "idport",
"methodType": "CM",
"operationType": "AUTHENTICATION",
"type": "PIN",
"transactionData": {
"data": "PFdZU0lXWVMgeG1sbnM9Imh0dHA6Ly9tZXAubW9uZXRwbHVzLmN6IiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB2ZXJzaW9uPSIxLjIiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21lcC5tb25ldHBsdXMuY3ogbWVwX3d5c2l3eXNfMV8yLnhzZCI+DQoJPHQ+DQoJCTxsdlNwZWMgbD0iTsOhemV2IHRyYW5zYWtjZSIgbHdzPSIiIHdzPSIiPlDFmWlobMOhxaFlbsOtIGRvIGFwbGlrYWNlPC9sdlNwZWM+DQoJCTxsdiBpZD0iQVBQX0lEIiBsPSJBcGxpa2FjZSI+QkxVRTwvbHY+DQoJCTxsdiBpZD0iVFJBTlNBQ1RJT05fSUQiIGw9IklEIG9wZXJhY2UiPjE2MDcyNjAwMDAwMDA1NzwvbHY+DQoJCTxsdiBpZD0iQVBQTElDQVRJT05fTkFNRSIgbD0iTsOhemV2IGFwbGlrYWNlIj5CTFVFPC9sdj4NCgkJPGx2IGlkPSJUSU1FU1RBTVAiIGw9IkRhdHVtIGEgxI1hcyB0cmFuc2FrY2UiPjI2LjA3LjIwMTYgMTU6MjQ6MjA8L2x2Pg0KCQk8bHYgaWQ9IkNBU0VfTkFNRSIgbD0iTsOhemV2IHRyYW5zYWtjZSI+UMWZaWhsw6HFoWVuw60gZG8gYXBsaWthY2U8L2x2Pg0KCTwvdD4NCjwvV1lTSVdZUz4=",
"locale": "cs",
"template": "AUTHENTICATION"
},
"processingOptions": {
"authorizationFlow": "ONLINE"
}
}
{
"status": "success",
"data": {
"caseId": "tfgAe6IuFUEwI74RmEjn1tRHbZevpy5r0Y32XbFdTse1k+6sfGiRvVnRo4SdtvY6nXDEIko9Chp1xrSY3B+t/njhH6WrMiu7f+oMD9vjW649ZGOJ0LcOdcbKOxBOg6j6",
"methodSpecific": {
"qrData": "UVIxfDJ8MjMwQjhBRjh8MXx0ZmdBZTZJdUZVRXdJNzRSbUVqbjF0UkhiWmV2cHk1cjBZMzJYYkZkVHNlMWsrNnNmR2lSdlZuUm80U2R0dlk2blhERUlrbzlDaHAxeHJTWTNCK3QvbmpoSDZXck1pdTdmK29NRDl2alc2NDlaR09KMExjT2RjYktPeEJPZzZqNnw4VEE2OkI="
}
}
}
- scan QR code with help of mobile application and authorize transaction