Hosted Checkout Integration for PSD2 SCA

This page describes the integration effort to support PSD2 SCA compliance and exemptions for a Hosted Checkout integration. Before you proceed to build your integration, it's recommended that you familiarize yourself with PSD2 SCA Compliance and Exemptions.

Supported Exemptions

The gateway currently has support for the following exemptions:

  • Low Risk
  • Low Value
  • Whitelisting
  • Recurring Payments
  • Secure Corporate Payments
Support is provided for PSD2 SCA exemptions for Mastercard and Visa cards.
Prerequisites

To comply with PSD2 SCA requirements, you need to add 3-D Secure Authentication support to Hosted Checkout.

To use the PSD2 SCA exemptions functionality via the gateway:

  • Your merchant profile on the gateway must be enabled and configured for the PSD2 exemptions you want to use by tyro.
  • You must not configure any 3-D Secure Transaction Filtering rules. 
  • You must have a Hosted Checkout integration to the gateway for 3DS2.
  • You must submit the Create Checkout Session request to initiate the Hosted Checkout interaction using version 57 or above.
    You should submit as much payer and transaction information as possible when initiating the authentication. This will raise the probability of an exemption being granted or applied by the issuer.
Requesting Payer Authentication

If you want Hosted Checkout to authenticate the payer (without claiming an exemption) you do not need to make any changes to your existing Hosted Checkout integration with 3-D Secure Authentication support. If PSD2 SCA applies to the transaction, the issuer will either present the payer with the 3DS challenge or apply an issuer exemption where the payer will experience a frictionless checkout flow. 

In both cases, the gateway will automatically add the authentication details, as provided by the issuer in the authentication response, to the payment request that is submitted to the acquirer for processing. 

Claiming an Exemption when Requesting Payer Authentication

You can claim an exemption by adding the field authentication.psd2.exemption to the Create Checkout Session request with one of the following values:

  • LOW_RISK 
  • LOW_VALUE_PAYMENT 
  • SECURE_CORPORATE_PAYMENT 

If you are not enabled for the requested exemption, the request is processed as if you did not request an exemption. The issuer may:

  • grant the exemption you have requested,
  • apply an issuer exemption, or
  • deny the exemption you have requested and not apply an issuer exemption.

Special handling is applied if your acquirer or the scheme does not support exemptions. 

Scenario Description
Issuer Grants Acquirer Exemption If the issuer grants the exemption you have requested,
  • the payer will be presented with a frictionless checkout flow, and
  • the gateway will automatically add the authentication details as provided by the issuer in the authentication response to the payment request that is submitted to the acquirer for processing. 
Issuer Applies Issuer Exemption If the issuer applies an issuer exemption,
  • the payer will be presented with a frictionless checkout flow, and
  • the gateway will automatically add the authentication details, as provided by the issuer, in the authentication response to the payment request that is submitted to the acquirer for processing
Issuer Does not Grant or Apply an Exemption If the issuer did not grant the exemption you have requested and did not apply an issuer exemption,
  • the payer will be presented with the 3DS challenge flow, and
  • the gateway will automatically add the authentication details, as provided by the issuer, in the authentication response to the payment request that is submitted to the acquirer for processing.
Acquirer Does Not have Support for PSD2 Exemptions If the acquirer (that will subsequently be used to process the payment) does not have support for PSD2 exemptions, the gateway will process the authentication as if no exemption was requested,
  • the payer will be presented with the 3DS challenge flow, and
  • the gateway will automatically add the authentication details, as provided by the issuer, in the authentication response to the payment request that is submitted to the acquirer for processing. 
PSD2 Exemptions Not Supported for this Scheme Requesting exemptions when performing the authentication is currently only supported for Mastercard and Visa. If the gateway does not have support to request PSD2 exemptions for a scheme, the gateway will proceed without performing 3DS and will automatically request the exemption when submitting the payment for processing with the acquirer.
Claiming an Exemption when Submitting a Payment

Hosted Checkout does not have support for bypassing 3DS authentication and requesting an exemption on the payment. You can bypass 3DS authentication by submitting interaction.action.3DSecure=BYPASS in the Create Checkout Session request. However, if the issuer does not grant the exemption and does not apply an issuer exemption, the payment will be unsuccessful. Hosted Checkout will not perform 3DS authentication when the payment fails because of missing payer authentication required under PSD2 SCA. The payer will be presented with a page telling them that the payment was not successful. 

Using the Gateway for Authentication Only

Hosted Checkout does not support performing payer authentication only, without proceeding to the payment. If you want to use the gateway for authentication only, you must use Direct Payment integration.

Whitelisting

Hosted Checkout does not provide support for asking the issuer to offer the payer to add you to their whitelist (for the card). However, if you know that the payer has whitelisted you, you can request the application of the whitelisting exemption by adding authentication.psd2.exemption=WHITELISTED_MERCHANT to the Create Checkout Session request.

The issuer will validate that the payer has whitelisted you and either:

  • grant the exemption (frictionless flow for the payer) and return authentication details for a successful authentication, or
  • not grant the exemption and present the payer with the challenge flow. 

If the payer has whitelisted you, and you proceed to the payment without authenticating the payer, the issuer may grant the exemption or reject the transaction request. 

Merchant-initiated Payments

If you are required to comply with PSD2 SCA requirements, you cannot use Hosted Checkout for a cardholder-initiated payment in a series of merchant-initiated payments (including recurring payments with a fixed amount). For these payments, you must enforce payer authentication with the 3DS challenge. However, Hosted Checkout currently does not provide support for enforcing the 3DS challenge — field authentication.challengePreference cannot be provided on the Create Checkout Session request.

Testing your Integration

You can test your integration using your test merchant profile (your merchant ID prefixed with "TEST"). The following sections provide details about the test card numbers that can be used to trigger a specific response.

To trigger a response indicating that the issuer granted an exemption that you have requested:

  1. Submit a Create Checkout Session request with the following:
    • apiOperation=CREATE_CHECKOUT_SESSION
    • authentication.psd2.exemption set to one of the following:
      • LOW_RISK
      • LOW_VALUE_PAYMENT
      • SECURE_CORPORATE_PAYMENT
  2. During the SRC interaction select one of the following test cards: 5506900140100107 (Mastercard), 4532249999999388 (Visa)
  3. This will result in an order with an Authentication transaction with:
    • authentication.psd2.exemption set to the value provided in the request, i.e., one of the following:
      • LOW_RISK
      • LOW_VALUE_PAYMENT
      • SECURE_CORPORATE_PAYMENT
    • transaction.authenticationStatus=AUTHENTICATION_EXEMPT
    • response.gatewayRecommendation=PROCEED
    • response.gatewayCode=APPROVED
    • order.status=AUTHENTICATION_NOT_NEEDED
    • authentication.3ds2.transactionStatus=N (Mastercard) or (Visa)
    • authentication.3ds2.statusReasonCode=81 (Mastercard only) 
    • authentication.3ds2.statusReasonCode=89 (Visa only) 
    • authentication.3d.acsEci=06(Mastercard) or 07(Visa)
    • authentication.3ds.authenticationToken
  4. The Authorize or Pay transaction on this order will be successfully processed.

FAQs

I already have an integration with the gateway for 3DS1. Am I PSD2 SCA compliant?

If you have an existing integration with the gateway using the gateway's legacy API for 3DS1, you need to upgrade to EMV 3-D Secure Authentication and then follow the integration steps described on this page. 

3DS 1 is only considered compliant with the PSD2 SCA mandate if the issuer sends a one-time password to the payer's phone when authenticating the payer, not where the issuer assigns a static password to the payer. 

As not all issuers use one-time passwords, it is not recommended to rely on 3DS1 if you are required to comply with the PSD2 SCA mandate. 

I have existing payment agreements for recurring payments or other merchant-initiated payments. Do I need to perform payer authentication for all my agreements again?

You do not need to authenticate the payer for such an agreement again. The schemes have rules for the transition period.

How do I proceed if I am using a session and the session contains an exemption, but the payment was rejected by the issuer because it is not PSD2 SCA compliant?

The gateway will ignore the exemption contained in the session when the order has a payment that has been rejected by the issuer because it is not PSD2 SCA compliant. Hence, it's not required that you remove the exemption from the session before performing the 3DS authentication for the order and re-submit the payment.

How can I search and view PSD2 exemption details for orders and transactions in Merchant Administration?

When searching for an order or transaction in Merchant Administration via the Order and Transaction Search, you can use the search term:

  • "Payer Authentication Status":"Authentication Successful" to find all successfully authenticated orders
  • "Payer Authentication Status":"Authentication Exempt" to find all orders where an exemption was requested or applied

The authentication status of the order is displayed on the Order and Transaction Details page in Merchant Administration in the field "Payer Authentication Status" in the "Payer Authentication Details" section. The field will have the value "Authentication Exempt", if an exemption has been requested or applied to the order. 

The authentication status of the transaction is displayed on the Order and Transaction Details page in Merchant Administration in the section "Transactions". Select "View" for the transaction you want to view. Field 'Payer Authentication - Authentication Status' will have the value 'Authentication Exempt', if an exemption has been requested or applied to the transaction.