...
The Tag DF6B has been added as per the specification to satisfy the various conditions during a transaction.
Name | Tag | Length (bytes) |
---|---|---|
Configuration for Issuer SCA Request Processing (CISR) | DF6B | 4 |
It is to be noted that this tag has to be added in each of your E6 template if you plan on using SCA as it is configured per application profile.
...
Code Block | ||
---|---|---|
| ||
private TlvTree setSCAConfiguration(TlvTree config) { //byte[] hardcodedValueForVisa = {(byte) 0x30, (byte) 0xF0, (byte) 0x00, (byte) 0x00}; //SIRCC, check for card support of contact/CDCVM //byte[] hardcodedValue = {(byte) 0x30, (byte) 0x50, (byte) 0x00, (byte) 0x00}; //SI Only, don't check for card support of contact // byte[] hardcodedValue = {(byte) 0xb0, (byte) 0xD0, (byte) 0x00, (byte) 0x00}; ////SIRCC, don't check for card support of contact. ROP supported byte[] hardcodedValuehardcodedValueForMastercard = {(byte) 0xb0, (byte) 0xF0, (byte) 0x00, (byte) 0x00}; //SIRCC, check for card support of contact/CDCVM. ROP supported TlvTree nexoFastConfig = config.GetChild(Configuration.NEXO_FAST_CONFIGURATION); if (nexoFastConfig != null) { TlvTree[] applicationTemplates = nexoFastConfig.GetChildren(0xE6); for (TlvTree currentApplicationTemplate : applicationTemplates) { String scheme = currentApplicationTemplate.GetElementAscii(Payment.Context.SCHEME_IDENTIFIER); if (scheme != null) { switch (scheme.toLowerCase()) { /*case "visa": Log.d("SCA-cfg", "scheme is visa, hardcoding 0xDF6B to visa value"); currentApplicationTemplate.SetBin(0xDF6B, hardcodedValueForVisa); break; case "mastercard": Log.d("SCA-cfg", "scheme is visa, hardcoding 0xDF6B to mastercard value"); currentApplicationTemplate.SetBin(0xDF6B, hardcodedValueForMastercard); break;*/ default: Log.d("SCA-cfg", "scheme " + scheme + " is not visa, hardcoding 0xDF6B to normal value"); currentApplicationTemplate.SetBin(0xDF6B, hardcodedValue); break; } } else { Log.d("SCA-cfg", "scheme is null, hardcoding 0xDF6B to normal value"); currentApplicationTemplate.SetBin(0xDF6B, hardcodedValue); } } } else { Log.d("SCA-cfg", "No NexoFAST Configuration"); } return config; } |
...