3D Secure

3D Secure

Working with 3D Secure

3DS adds security to your online transactions

To use 3D Secure with SHC, you need to pass three (3) additional properties in the options argument:

  • purchaseAmount: A number (not a string) representing the purchase cost denominated in cents. For example, $100 would be 10000.
  • purchaseDate: A string containing the timestamp representing when the purchase took place using the ISO 8601 format (YYYY-MM-DDTHH:mm:ss.sssZ)
  • purchaseCurrency: A string containing the ISO 4217 currency code that the transaction is in. Currently, only Canadian dollars (CAD) are supported.

Calling SHC with the 3D Secure arguments would be similar to the following example:

  1. const options = { purchaseAmount: amountAsInteger, purchaseDate: new Date().toISOString(), purchaseCurrency: 'CAD' }; merchantGetShcToken(shcToken => { shc(shcToken, response => merchantProcessResponse(response), options); });

Automatic Addition of Additional Required Fields

When using 3D Secure, the PayFacto API will automatically include any additional required fields necessary to process a 3D Secure transaction. There is no additional coding required to display these fields for any card brand using 3D Secure.

Testing 3D Secure

To test your 3D Secure implementation there are several card numbers that will trigger different 3D Secure responses. Below are the different test scenarios and the card numbers that will trigger them:

Frictionless Authentication without 3DS
This scenario will return success without engaging 3D Secure.

Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000000100
  • Mastercard: 5100000000000107
  • Amex: 340000000000108

Expiry Date: 08/28
CVV: 123 or 1234

Frictionless Authentication with 3DS
This scenario will perform a 3D Secure validation and return success without a challenge.
Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000600008
  • Mastercard: 5100000000600005
  • Amex: 340000000600006

Expiry Date: 08/28
CVV: 123 or 1234

Challenge Authentication with 3DS
This scenario will display a challenge page that will require the password “123456” to be successful.
Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000005000
  • Mastercard: 5100000000005007
  • Amex: 340000000005008

Expiry Date: 08/28
CVV: 123 or 1234

Failed Authentication with 3DS
This scenario will display a challenge page that will fail when the password “111111” to simulate a failure.
Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000300005
  • Mastercard: 5100000000300002
  • Amex: 340000000300003

Expiry Date: 08/28
CVV: 123 or 1234

Authentication Unavailable
This scenario will provide an authentication unavailable.
Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000400003
  • Mastercard: 5100000000400000
  • Amex: 340000000400001

Expiry Date: 08/28
CVV: 123 or 1234

Authentication Rejected
This scenario results in the authentication being rejected.
Cardholder Name: Test Card
Card numbers:

  • Visa: 4100000000500000
  • Mastercard: 5100000000500007
  • Amex: 340000000500008

Expiry Date: 08/28
CVV: 123 or 1234

    • Related Articles

    • SHC - Secure Hosted Checkout

      Secure Hosted Checkout What is Secure Hosted Checkout? Secure Hosted Checkout allows you to redirect customers to a PayFacto-hosted payment page, reducing your PCI compliance scope. Secure Hosted Checkout (SHC) is a JavaScript library that allows ...
    • API v1.0 - SHC - Secure Hosted Checkout

      About SHC What is Secure Hosted Checkout? Secure Hosted Checkout (SHC) is a JavaScript library that allows merchants to collect and send cardholder information to PayFacto for verification without needing to access that information directly. When ...
    • SHP - Secure Hosted Pages

      Secure Hosted Pages Migrating from Legacy Hosted Pages In an effort to simplify redirect, The new Secure Hosted Pages (SHP) is very different from the old version. The new SHP mirrors Secure Hosted Checkout (SHC) fairly closely, making it easier to ...
    • SPL - Secure Pay By Link

      Secure Pay By Link Secure Pay By Link (SPL) is a new offering from PayFacto that allows a merchant to defer a SHC session to another time. It does that by creating a link that the cardholder can follow to a hosted page. When the cardholder navigates ...
    • Example Calls to the Secure Payment Application

      This page lists code examples for the various Secure Payment transactions Purchase JavaScript Intent intent = new Intent("com.payfacto.terminal.payment.PAYMENT_ACTIVITY");   intent.putExtra("TRANSACTION", "SALE"); intent.putExtra("AMOUNT", "100"); // ...