Skip to main content
This guide provides an overview of the setup for 3D Secure for Visa and Mastercard, as well as the onboarding process with Marqeta and payment networks. It also outlines the integration points you must plan for during 3D Secure authentication and payment transactions. Use this guide to plan the actions and integrations required to enable 3D Secure features on the Marqeta platform.

Setting up 3D Secure

The following sections describe how to set up 3D Secure on the Marqeta platform.

Setting up 3D Secure for your use case

For some use cases, such as those for Buy Now, Pay Later (BNPL) applications, configuring Challenge All can result in challenging cards that are not enrolled for one-time passcode (OTP) or biometrics decisioning. To prevent unnecessary declines in such cases, implement Automated Decisioning with Issuer Transaction Risk Analysis (TRA) or Delegated Decisioning at your gateway. For detailed information on how to set up the best 3D Secure configuration for your use case, contact your Marqeta representative.

Available combinations

The following table shows the available combinations for 3D Secure risk policy and authentication, as well as the amount of effort required.
Options3D Secure Risk Policy / Challenge All (Default – No policy chosen)3D Secure Risk Policy / Delegated DecisioningAutomated DecisioningAuthentication Mechanism / Default OTPAuthentication Mechanism / Advanced AuthenticationCustomer Effort
Option 1○ ○ ○
Option 2● ● ○
Option 3● ● ●
Option 4○ ○ ○
Option 5● ○ ○
Option 6● ○ ○

Integration flow

The following figure shows the overall flow for 3D Secure authentication and payment authorization.
Integration flow

Setup details

The following sections describe in detail the overall flow shown in the figure above, with a focus on the steps where a specific action or API integration is required.

Step 1 — Setup and onboarding

Step #SummaryDetailsCustomer Configuration RequiredMarqeta API Integration Required
1.1Enable 3D Secure using the card network’s CIQ/APWEnable 3D Secure with the card network using Visa’s CIQ or Mastercard’s APW and other required documents.NoNo
1.2Create users, cards using APIUsing Marqeta’s API, create users and cards.NoYes
1.3Enable 3D Secure requestRequest to enable 3D Secure with Marqeta through your Marqeta representative.YesNo
1.4Enable 3D Secure using the Marqeta DashboardMarqeta representative enables 3D Secure using app.marqeta.com.NoNo
1.5Choose a 3D Secure policy and configure 3D Secure parametersChoose the appropriate 3D Secure Risk and Authentication options, then contact your Marqeta representative to have the required parameters configured.

Configuration Parameters:

- 3D Secure Decisioning Policy: Delegated Decisioning or Automated Decisioning.

- Delegated Decisioning details – URL, basic authentication credentials, fallback on decision service failure.
- If you do not select a decision policy, the Challenge All policy is applied by default.
- Advanced Authentication:

- Authentication details (URL, basic authentication credentials, etc.) to allow you to challenge the cardholder using your choice of authentication method.
- OTP screen details:

- Bank logo for the OTP screen.
- The no-reply from email address for delivering OTP via email.
- Customer support phone number.
- Company details for 10DLC registration (only applicable in the US.)
YesNo
1.6Configure 3D Secure parameters using the Marqeta DashboardMarqeta representative enables 3D Secure configurations using app.marqeta.com.NoNo

Step 2 — Cardholder authentication

Step #SummaryDetailsCustomer Configuration RequiredMarqeta API Integration Required
2.1Cardholder makes an online transactionNoneNoNo
2.2Merchant requests authenticationNoneNoNo
2.3Card network requests authenticationNoneNoNo
2.4AIf no decisioning policy is configured:If no decisioning policy is configured:
Challenge All authentication requests from the 3D Secure requestor and/or merchantChallenge All authentication requests from the 3D Secure requestor and/or merchant
2.4BIf Delegated Decisioning is configured:If Delegated Decisioning is configured:
2.4B1Delegated Decisioning request via APIMarqeta’s systems make a web request to obtain a decision from you on whether to apply Strong Customer Authentication (SCA) to the request in picture or exempt it from SCA. You must implement the necessary systems to handle this request.NoYes
2.4B2Respond to Marqeta with the SCA decisionYour system must respond to the Marqeta system’s request with the SCA decision within the prescribed SLA.NoYes
2.4CIf Automated Decisioning is configured:If Automated Decisioning is configured:
2.4C1Evaluate the risk and decide to exempt or challenge the cardholderEvaluate the risk and decide to exempt or challenge the cardholderNoNo
2.5AIf Challenge All and Advanced Authentication are configured:If Challenge All and Advanced Authentication are configured:
2.5A1Advanced Authentication request via APIMarqeta requests that you authenticate the cardholder (in-app or otherwise), using the API defined by Marqeta. You must be able to process Marqeta’s authentication request using the Marqeta-defined JSON payload.NoYes
2.5A2AcknowledgeYour endpoint should acknowledge Marqeta’s API request with a 200 OK response.NoYes
2.5A3Complete cardholder challenge via mobile APP or other preferred methodYou request in-app authentication from the cardholder using the mobile banking app or another preferred method such as voice calling.NoNo
2.5A4Perform authenticationYou perform the authentication.NoNo
2.5A5Respond to Marqeta with the authentication resultMarqeta acknowledges with a 200 OK response.NoYes
2.5BIf Challenge All and Default OTP is configured:If Challenge All and Default OTP is configured:
2.5B1Marqeta sends OTP via text or email to the registered phone number or email addressNoneNoNo
2.5B2Marqeta presents the OTP screen on the merchant’s websiteNoneNoNo
2.5B3Cardholder enters OTPNoneNoNo
2.5B4OTP data is received by MarqetaNoneNoNo
2.5B5Marqeta performs cardholder authenticationNoneNoNo
2.6Marqeta sends the cardholder authentication result to the merchantNoneNoNo
2.6AIf Delegated Decisioning is configured:If Delegated Decisioning is configured:
2.6A1Authentication final result via APIMarqeta’s systems will make a web request to update the authentication results. Your endpoint should acknowledge Marqeta’s API request with a 200 OK response.NoYes
2.7Marqeta sends the cardholder authentication result to the card networkNoneNoNo

Step 3 — Payment authorization

Step #SummaryDetailsCustomer Configuration RequiredMarqeta API Integration Required
3.1Merchant initiates the payment transactionNoneNoNo
3.2Card network routes the payment transaction to MarqetaNoneNoNo
3.2AIf Gateway JIT Funding is configured:If Gateway JIT Funding is configured:
3.2A1Marqeta initiates a Gateway JIT Funding request with 3D Secure result dataMarqeta makes a JIT call to your JIT gateway endpoint. This call includes transaction-related information: how the transaction was authenticated and whether or not the authentication was successful. At this time, you can decide to approve or decline the payment transaction.NoYes
3.2A2JIT gateway responseYou respond back to the JIT gateway call with your decision (approve or deny).NoYes
3.3Marqeta sends the payment transaction response to the card networkNoneNoNo
3.4The card network sends the payment transaction response to the merchantNoneNoNo

Enabling 3D Secure

Contact your Marqeta representative to enable 3D Secure for your program.

APIs and contracts

You must provide a URL for the following endpoints, which Marqeta calls during the 3D Secure flow:
  • Delegated Decisioning – Determine whether to request SCA from the cardholder.
  • Notify Marqeta of a 3D Secure completion status.
  • Advanced Authentication - Initiate a challenge request related to SCA.
  • Update an authentication result to Marqeta.
For detailed information on these endpoints, see 3D Secure in the Core API Reference.

When to use each interface

Depending on the 3D Secure options you choose, you will need to implement and configure for one or more of the API endpoints described above. The following table lists the policies along with the required actions:
OptionPolicyAction
1Challenge All and Default OTPNo API integration necessary
2Delegated Decisioning and Default OTPDelegated Decisioning request
Notify a 3D Secure completion status
3Delegated Decisioning and Advanced AuthenticationDelegated Decisioning request
Notify a 3D Secure completion status
Advanced Authentication request
Advanced Authentication result
4Automated Decisioning and Default OTP challengeNo API integration necessary
5Automated Decisioning and Advanced AuthenticationAdvanced Authentication request
Advanced Authentication result
6Challenge All and Advanced AuthenticationAdvanced Authentication request
Advanced Authentication result