Search

Are you looking for test card numbers?

Would you like to contact support?

Plugin icon

PrestaShop

Use Adyen's plugin for PrestaShop to accept credit cards and local payment methods.

Our plugin for PrestaShop allows you to accept credit cards and local payment methods on your PrestaShop website, without unnecessarily redirecting to an external website. Sensitive cardholder data is collected securely using our Custom Card Component, reducing your PCI DSS compliance requirements. The plugin supports stored card details and native 3D Secure 2 authentication, and is compatible with your Dynamic 3DS and Address Verification System (AVS) settings.

The plugin supports PrestaShop versions 1.6 and 1.7.

You can find the Adyen Payment plugin for PrestaShop here:

Updating from a version earlier than 2.1.0

If you are already using an Adyen PrestaShop plugin version earlier than 2.1.0 and want to use the latest version, proceed as follows:

  1. Uninstall the existing Adyen plugin.
    • In the Configure drop-down menu select Uninstall if you are using version 1.6 of PrestaShop.
    • In the Upgrade drop-down menu select Uninstall if you are using version 1.7 of PrestaShop.
  2. Manually remove the /adyen folder from the /modules folder.
    This is necessary because the plugin name has changed from adyen to adyenofficial.
  3. Install the latest plugin version as described in Step 1: Install the plugin.
  4. Configure the latest plugin version as described in Step 4: Set up the plugin in PrestaShop back office.

Before you begin

Before you begin to integrate PrestaShop with the Adyen payments platform, make sure that you have performed the following steps:

  1. Sign up for a test account with Adyen.
  2. Apply for a live account with Adyen. 

Step 1: Install the plugin

  1. Download the latest version of the plugin. There are several ways to do that:
    • If you have Composer, clone the GitHub repository and run composer install --no-dev.
    • Download the .zip file attached to the release on GitHub. This includes the vendor folder so you don't need to install with Composer.
    • Install the extension from the PrestaShop marketplace. You can skip the next step of copying folders.
  2. Copy the folders into the /modules/adyenofficial folder of your main PrestaShop environment.
  3. In your PrestaShop back office, go to:
    • Modules and Services if you are using version 1.6 of PrestaShop.
    • Modules > Module Manager if you are using version 1.7 of PrestaShop.
  4. In the Payment section, find Adyen, and select:
    • Install if you are using version 1.6 of PrestaShop.
    • Enable Module if you are using version 1.7 of PrestaShop.

Step 2: Generate an API key

For authenticating API requests from PrestaShop, you need to provide an API key. 

To generate an API key:

  1. Log in to your Customer Area.
  2. Go to Account > Users, and select the user ws@Company.[YourCompanyAccount].
  3. Under Authentication, select Generate New API Key
  4. Copy and securely store the API key in your system.
  5. Add the API key in the PrestaShop back office as described in Step 4.
  6. In your Customer Area, select Save.

Step 3: Set up notifications

Adyen uses notification webhooks to let your PrestaShop platform know whether the payment was successful, and to move the order to the next phase or cancel it. In this way, you are always informed of payment status changes, even with payment methods where the shopper completes the payment after they leave your online store.

To set up notifications in your Adyen account:

  1. Log in to your Customer Area with your company-level account.
  2. Go to Account > Server Communication.
  3. Next to Standard Notification, select Add.
  4. Under Transport:
    • At URL enter your website URL followed by module/adyenofficial/Notifications.
    • Select the Active check box.
    • Set Method to JSON.
  5. Under Authentication:
    • Enter your User Name and Password for basic authentication.
    • Add these authentication credentials in your PrestaShop back office as described in Step 4.
  6. Under Additional Settings:
    • Select Generate new HMAC key.
    • Securely store the HMAC key in your system.
    • Add the HMAC Key in your PrestaShop back office as described in Step 4.
  7. Select Save Configuration.

Step 4: Set up the plugin in PrestaShop back office

  1. In your PrestaShop back office, go to:
    • Modules and Services if you are using version 1.6 of PrestaShop.
    • Modules > Module Manager if you are using version 1.7 of PrestaShop.
  2. In the Payment section, find Adyen and select Configure.
  3. Fill out the following fields:

    Field Description
    Merchant Account Name of your Adyen merchant account for which the payments will be processed.
    Test/Production Mode Select whether you want to use test or production (live) mode.
    Notification Username This can be any username, as long as it matches the username for basic authentication that you entered in your Adyen Customer Area.
    Notification Password This can be any password, as long as it matches the password for basic authentication that you entered in your Adyen Customer Area.
    HMAC key for notifications This is the HMAC key that you generated in your Adyen Customer Area.
    Secure token for cron job A token generated when you installed the plugin. This secures your endpoint. Underneath we show your website URL with the token attached. You need this URL plus token when you set up a cron job for processing notifications.
    API key for Test The API key from your test Customer Area.
    API key for Live The API key from your live Customer Area.
    Live endpoint prefix The URL prefix [random]-[company name] from your live Customer Area > Account > API URLs. For more information, refer to Checkout endpoints.

Set up open invoice payment methods

Open invoice payment methods like Klarna and Afterpay require a billing and shipping address.
To ensure your shoppers understand what data you are collecting:

  1. In your PrestaShop admin panel, go to Translations.
  2. Open the shop forms labels for your language and enter localized address line labels to collect the street name and the house number or name. For example, for English:
    • First address line with the ID Address: Change the label to Street.
    • Second address line with the ID Address Complement: Change the label to House number or name.
  3. Select Save.
  4. Repeat for all languages you are using.

Step 5: Set up a cron job

As described above, you need to set up webhook notifications. To process these asynchronous notifications, you need to run a cron job every minute. However, PrestaShop doesn't provide a cron service so you need to create a job outside of PrestaShop.

  1. Use the cron utility on your Linux instance or an external cron job service to create a cron job that runs every minute and calls your website URL. This must be the URL with the secure token attached, as shown under the Secure token for cron job field in the admin panel (see set up the plugin in your PrestaShop back end.

  2. Test whether the cron job works correctly:

    1. Enable the cron job.
    2. Place a test order with a successful payment.
    3. Verify that you have a new log file adyen_cronjob.log in your /logs/adyen folder. It can take a few minutes before the file appears.

Refund an order

To issue an order refund:

  1. Log in to your PrestaShop back office.
  2. In the menu, go to Orders > Orders to open the Orders overview page, and select the order you want to refund.
  3. In the Orders section, select Partial Refund.
  4. Under Products, enter:
    • Quantity: The number of items refunded. This must be a whole number.
    • Amount: (Optional) The refund amount. If left empty, it is the maximum applicable amount including taxes.
  5. Optionally select:
    • Re-stock products: The quantity of the refunded items you specified will be added back in stock.
    • Generate a voucher: Issue a voucher instead of a refund payment. The voucher code is automatically sent to the shopper's email address.
  6. Issue the refund: At the bottom of the page, select Partial Refund.

After issuing the refund, the order status changes to Refunded and a credit slip is generated.

Test and go live

Once you have the credentials for your Adyen live account:

  1. Generate an API key in your live Customer Area.
  2. Enter the API key for live in your PrestaShop back office as described in Step 4.

See also