SB nº 211: EMV® 3-D Secure SDK Updates, Clarifications & Errata
EMV<sup>®</sup> Specification Bulletin No. 211 December 2018 EMV 3-D Secure SDK Updates, Clarifications & Errata This Specification Bulletin No. 211 provides updates, clarifications and errata incorporated into the EMV 3-D Secure Protocol and Core Functions Specification since version 2.1.0 (including SB 205v1). EMV<sup>®</sup> 3-D Secure SDK Key Features v2.2.0 This Specification Bulletin No. 211 introduces new 3-D Secure features included in version 2.2.0 of the 3-D Secure SDK Specification.
Applicability
This Specification Bulletin applies to:
- EMV<sup>®</sup> 3-D Secure—SDK Specification, Version 2.2.0 Updates are provided in the order in which they appear in the specification. Deleted text is identified using strikethrough, and red font is used to identify changed text. Unedited text is provided only for context. countries. EMV<sup>®</sup> 3-D Secure SDK Key Features v2.2.0.1. Table 4. 4.4. Table 4. 4.4. Table 4. 4.4. Table 4. 4.4. 4. Table 4. 4.11. Table 4. 4.11. 5. 7. 7. 7.2. countries. Chapter 4 Code Elements of the EMV 3-D Secure Mobile SDK 4.1.5 getWarnings getWarnings Parameters None. Table 4.9: get Warnings Exceptions Exception
Description
SDKNotInitializedExce ption This exception shall be thrown if the 3DS SDK instance has not been initialized. For more information, see Class SDKNotInitializedException. Note, the subsequent tables in Chapter 4 were renumbered accordingly. 4.4.1 getAuthenticationRequestParameters getAuthenticationRequestParameters None. Table 4.22: getAuthenticationRequestParameters Exceptions Exception Description SDKRuntimeException This exception shall be thrown if an internal error is encountered by the 3DS SDK. For more information, see Class SDKRuntimeException. 4.4.2 doChallenge Note: After this method is called and the resources are cleaned up, any further operation on the Transaction object should result in an SDKRuntimeException. Table 4.24 doChallenge Exceptions Exception Description SDKRuntimeException This exception shall be thrown if an internal error is encountered by the 3DS SDK. For more information, see Class SDKRuntimeException.
countries.
4.4.3 getprogressView Table 4.26 getProgressView Exceptions Exception Description SDKRuntimeException This exception shall be thrown if an internal error is encountered by the 3DS SDK. For more information, see Class SDKRuntimeException. 4.4.4 close Note: After this method is called and the resources are cleaned up, any further operation on the Transaction object should result in an SDKRuntimeException.
4.11 Class Challenge Parameters public class ChallengeParameters { public void set3DSServerTransactionID(...) public void setAcsTransactionID(...) public void setAcsRefNumber(...) public void setAcsSignedContent(...) public void setThreeDSRequestorAppURL(...) public String get3DSServerTransactionID(...) public String getAcsTransactionID(...) public String getAcsRefNumber(...) public String getAcsSignedContent(...) public String getThreeDSRequestorAppURL(...) } Table 4.75 ChallengeParameters Class Methods Method Description setThreeDSRequestorAppURL Sets the 3DS Requestor App URL. getThreeDSRequestorAppURL Returns the 3DS Requestor App URL. 4.11.5 setThreeDSRequestorAppURL The setThreeDSRequestorAppURL method may set the 3DS Requestor App URL. If the app sets the URL, then the SDK shall pass the URL in the CReq. The following Java code snippet shows the signature of the setThreeDSRequestorAppURL method: public void setThreeDSRequestorAppURL (String threeDSRequestorAppURL)
countries.
setThreeDSRequestorAppURL Parameters Table 4.80 setThreeDSRequestorAppURL Parameters Parameter Mandatory? threeDSRequestorAppURL Yes Description 3DS Requestor App URL setThreeDSRequestorAppURL Return Value None. setThreeDSRequestorAppURL Exceptions None. 4.11.10 getThreeDSRequestorAppURL The getThreeDSRequestorAppURL may return the 3DS Requestor App URL. The following Java code snippet shows the signature of the getThreeDSRequestorAppURL method: public String getThreeDSRequestorAppURL() getThreeDSRequestorAppURL Parameters None getThreeDSRequestorAppURL Return Value This method returns the 3DS Requestor App URL as a string. getThreeDSRequestorAppURL Exceptions None. Chapter 5 Message Processing 5.2 Challenge Processing [Req 70] During Out-of-Band (OOB) authentication, when the 3DS Requestor App comes to the foreground, the CReq shall automatically be submitted to the ACS and the value of the OOB Continuation Indicator field shall be set to true. Chapter 7 User Interface 7.1 HTML UI [Req 64] If the CRes message contains the ACS HTML Refresh field, then the 3DS SDK shall display the HTML contained in this field when the app is moved to the foreground.
countries.
7.2 Native UI [Req 40] The Cardholder data (response) shall be captured and sent to the ACS in the CReq message. The Challenge Data Entry field in the CReq message holds the Cardholder’s challenge response. If the cardholder has submitted the response without entering any data in the UI, the Challenge Data Entry field shall not be present in the CReq message. [Req 71] If the Cardholder does not enter any data in the UI, the Challenge No Entry field shall be sent in the CReq message with the value "Y." [Req 65] If the CRes message contains the Challenge Additional Information Text field, then the 3DS SDK shall replace the Challenge Information Text and Challenge Information Text Indicator fields with the contents of the Challenge Additional Information Text field when the app is moved to the foreground.
7.2.1 Input and Output Formats for Native UI Note: If no data is entered by the Cardholder in the Challenge Data Entry field, do not allow the Cardholder to submit the field.
countries.
Legal Notice
The EMV<sup>®</sup> Specifications are provided "AS IS" without warranties of any kind, and EMVCo neither assumes nor accepts any liability for any errors or omissions contained in these Specifications. EMVCO DISCLAIMS ALL REPRESENTATIONS AND WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT, AS TO THESE SPECIFICATIONS. EMVCo makes no representations or warranties with respect to intellectual property rights of any third parties in or in relation to the Specifications. EMVCo undertakes no responsibility to determine whether any implementation of the EMV<sup>®</sup> Specifications may violate, infringe, or otherwise exercise the patent, copyright, trademark, trade secret, know-how, or other intellectual property rights of third parties, and thus any person who implements any part of the EMV<sup>®</sup> Specifications should consult an intellectual property attorney before any such implementation. Without limiting the foregoing, the Specifications may provide for the use of public key encryption and other technology, which may be the subject matter of patents in several countries. Any party seeking to implement these Specifications is solely responsible for determining whether its activities require a license to any such technology, including for patents on public key encryption technology. EMVCo shall not be liable under any theory for any party’s infringement of any intellectual property rights in connection with the EMV<sup>®</sup> Specifications
countries.