Adyen is no longer developing the Classic API integration
This page is for the Classic API (/authorise
) integration, which we no longer accept new integrations with.
We strongly recommend migrating to the newer 3D Secure authentication-only on Checkout API integration. To use this newer integration, you must also migrate to the Checkout API.
Implement a fallback implementation in case the issuer does not support 3D Secure 2 authentication-only integration yet. In the response, you get the authentication data that you need to authorise the payment with another PSP or acquirer.
If after the authentication you decide to process the payment with us, you can also continue with the payment authorisation with Adyen.
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.
- Read and understand the full 3D Secure 1 Classic API integration guide.
Step 1: Submit a payment authentication request
Submit an authentication request with a /authorise call containing the required 3D Secure 1 parameters and the authenticationData.authenticationOnly
parameter:
authenticationData.authenticationOnly
: Set this to true.
You'll receive a response containing:
resultCode
: RedirectShopper. This means that you have to perform the 3D Secure authentication flow.
For a complete list of resultCode
values and the actions that you need to do, see Result codes.
Step 2: Perform the 3D Secure 1 authentication flow
-
Redirect the shopper to the card issuer to perform authentication. After a successful authentication, the card issuer returns the shopper to your site and sends an HTTP POST to your
TermUrl
containing the following:MD
: Payment session identifier.PaRes
: Payment authorisation response.
-
Get the
MD
andPaRes
values and proceed to submit the authentication result.
If after performing the authentication you decide to continue the payment authorisation with Adyen, skip the next step proceed to Authorise the payment with Adyen instead.
Step 3: Submit the result and get the authentication data
- Submit the authentication result in an authorise3d request:
md
: Payment session identifier,MD
, returned by the card issuer in the previous step.paResponse
: Payment authorisation response,PaRes
, returned by the card issuer in the previous step.-
authenticationData.authenticationOnly
: Set this to true.
You'll receive a response containing:
resultCode
: If the authentication process has finished, you receive AuthenticationFinished.-
additionalData.threeDAuthenticatedResponse
: Indicates the results of the authentication. The value Y means that authentication was successful. If you get another value, see the list of possible values to learn what it means.
- If you received Y in
additionalData.threeDAuthenticatedResponse
, you can continue to the next step to authorise the payment.
See our API reference to learn more about the response parameters and how the values map to 3D Secure specifications.
Optional: Authorise the payment with Adyen
If after completing the authentication flow you decide to proceed with authorising the payment with Adyen, you can still switch and continue with a payment authorisation.
Make a POST authorise3d request from your server and include the following parameters:
authenticationData.authenticationOnly
: Set this to false.
You'll receive Authorised as the resultCode
if the payment was successful.