Learn how to submit a payment authorisation with Adyen, using authentication data from a third-party 3D Secure provider.
This page describes passing authentication data in a /payments API request. If you are using the /authorise endpoint, refer to 3D Secure Classic integration.
Before you begin
Before you begin to integrate, make sure you have followed the Get started with Adyen guide to:
- Get an overview of the steps needed to accept live payments.
- Create your test account.
After you have created your test account:
- Get your API Key. Save a copy as you'll need it for API calls you make to the Adyen payments platform.
- Check that you are using v46 or later of the /payments endpoint.
Get authentication data
You can only use the 3D Secure 1 parameters on this page if you're in one of the territories where 3D Secure 1 is still supported.
If you didn't authenticate with Adyen, refer to Mapping Adyen parameters to EMVCo ones.
To authorise a 3D Secure 2 authenticated payment, you need the following data:
Some issuers don't provide all fields; the Applies to column shows which fields you need from which issuers.
Field | Applies to |
---|---|
authenticationResponse | All issuers |
directoryResponse | All issuers |
authenticationValue | All issuers |
dsTransID | All issuers |
eci | All issuers |
threeDSVersion | All issuers |
cavvAlgorithm | Cartes Bancaires |
challengeCancel | Cartes Bancaires |
challengeIndicator | Cartes Bancaires |
exemptionIndicator | Cartes Bancaires |
riskScore | Cartes Bancaires |
Send a payment authorisation request with 3D Secure authentication data
Make a POST /payments request and include the following:
Some issuers require different fields. The Applies to column shows which issuers require each field.
Field | Applies to |
---|---|
paymentMethod.type | All issuers. Learn more for co-badged cards. |
mpiData.authenticationResponse | All issuers |
mpiData.directoryResponse | All issuers |
mpiData.cavv | All issuers |
dsTransID | All issuers |
mpiData.eci | All issuers |
mpiData.threeDSVersion | All issuers |
threeDS2RequestData.challengeIndicator | Cartes Bancaires |
mpiData.cavvAlgorithm | Cartes Bancaires |
mpiData.challengeCancel | Cartes Bancaires |
mpiData.riskScore | Cartes Bancaires |
additionalData.acquirerCode | Cartes Bancaires. Set to "AdyenCartesBancaires" . |
additionalData.scaExemption | Cartes Bancaires |
shopperInteraction | All issuers |
recurringProcessingModel | All issuers |
Co-badged cards
If you are authorising for a co-badged card, you need to set the paymentMethod.type value to the scheme that authenticated the payment. For example, if you are authorising for a card co-badged with Visa and Cartes Bancaires, set the value to either visa
or cartebancaire
, depending on which scheme performed the authentication. Otherwise, the authorisation can be refused.
Sample request
Sample response
You will receive an Authorised resultCode
if the payment authorisation was successful. Otherwise, see Result codes for a complete list of values and the actions that you need to take.