Skip to content

PrestaShop

Last updated: April 29, 2022

From downloading the plugin to requesting your first test payment, learn how to get started with the Checkout.com for PrestaShop plugin. This guide assumes that you have already installed PrestaShop.

Minimum requirements

In order to use this plugin, make sure you have the following versions as a minimum:

  • PrestaShop: 1.7.0.
  • Checkout.com's plugin: 2.1.4.

Supported features

  • Using the Hub for:
    • Refund, void and capture
    • Partial capture and partial refund
  • Manual capture from the PrestaShop admin
  • Frames
  • Saved cards (stored credit cards)
  • Invoice generation
  • 3D Secure 2.0
  • Risk management
  • Multi-store / currency support
  • Notifications (webhooks) for payment flow management
  • Dynamic descriptors
  • Deferred payments (authorization and capture as a 2-step process) based on a time delay or an order status change

Before you start

Create a test account

If you haven't already, create a test Checkout.com account.

Get your API keys

In order to set up the PrestaShop plugin, you'll need two API keys: one secret and another public, both of which are generated automatically when you create your account.

  1. Sign in to your test account on the Hub sandbox.
  2. In the left menu, go to Settings > Channels, and make a note of your secret and public API keys.
channel settings

Configure webhooks

You also need to configure webhooks for PrestaShop. Correctly configuring them is important; if your webhooks are incorrectly formatted, the plugin will not work.

Information

Webhooks are notifications that we send when an event occurs on your account. For example, when a payment is captured. These are used by the PrestaShop plugin to update the status of an order. Read more about webhooks.

  1. While in the Settings > Channels section of your Hub account, scroll down to the Webhooks section and select New webhook.
  2. Enter the following endpoint URL, replacing example.com with the URL of your shop: example.com/index.php?fc=module&module=checkoutcom&controller=webhook
  3. Select API - v2.0.
  4. Tick Select all, then select Create webhook.
configure webhook

Install the plugin

There are two ways to install the plugin:

Using PrestaShop Module Manager

  1. Download the latest release of our plugin from GitHub.
  2. Sign in to your PrestaShop admin dashboard and go to Modules > Module Manager.
  3. Select Upload a module and drop the .zip file into the window that pops up.
  4. If successful, you'll get a Module installed! message.
  5. Select Configure to start setting up the plugin.

Using Composer

  1. Download the plugin from GitHub.
  2. Unzip the folder.
  3. Upload the contents to your PrestaShop root directory, specifically [root directory]/modules/checkoutcom.
  4. Run the command composer install --no-dev inside the [root directory]/modules/checkoutcom folder.
  5. Sign in to your PrestaShop admin dashboard and go to Modules > Module Manager.
  6. Search for checkout and the plugin should appear in the results. Select Configure to start setting up the plugin.

You're now ready to configure the PrestaShop plugin.


Configure the plugin

  1. Sign in to your PrestaShop admin dashboard and go to Modules > Module Manager.
  2. Find the Checkout.com plugin and select Configure.
  3. Set Service to ABC.
  4. Select the Environment you want. Select Sandbox if you want to start testing payments.
  5. Enter your secret key and public key. If you're testing, make sure you use the API keys from your sandbox Hub account.
  6. Select Set Webhooks to automatically register your webhooks in the Hub.
  7. Go the the CARD PAYMENTS tab and set Enable Card Payments to Yes.
  8. Select the Type of payment:
    • With Immediate (Authorize and Capture), the charge is both authorized and captured (that is, the money due from the customer's account is moved into your account) at the same time.
    • With Deferred (Authorize), the charge is only authorized. You'll either have to capture the payment manually or configure an event that will trigger the capture.
  9. Select Save.

That's it! You're ready to start testing card payments.


Test your integration

  1. Go to your storefront and add a product to your cart.
  2. Go to your cart and proceed to the checkout.
  3. Enter the required billing details. You can put anything here, though we recommend using a real email address so you can receive the order confirmation.
  4. Select the Pay by Card with Checkout.com method.
  5. Enter the following card details:
    • Number: 4242 4242 4242 4242
    • Expiry date: 12/25
    • CVV: 100
  6. Agree to the terms of service and select Order with an obligation to pay. You'll be redirected to an order confirmation page, and, if you entered a real email address in the billing details, you'll also receive an order confirmation email.
  7. Sign in to your PrestaShop admin dashboard, and go to Order settings > Order settings. Your test order will be displayed there with a Payment accepted status. (The transaction will also appear in the Payments section of your sandbox Hub account.) This indicates that the payment has been successfully captured.

Tip

You can now either go live as-is or extend your configuration.

Troubleshooting

If this test does not work, first check you have configured your webhooks correctly. For the plugin to work, they must be formatted correctly. If you have configured them properly, check your server; if it's password-protected or it restricts unfamiliar IP addresses, it may be blocking webhook notifications. Contact our Support team at support@checkout.com if you need help.

Further testing

You'll find more test cards and a range of scenarios to trigger in our testing guide.


Go live

If you're happy with the outcome of your testing and want to start taking payments right away, please contact our Sales team in order to move to a live account.

Note

Before you go live, remember to:

  • Switch the environment to Live in the plugin's settings.
  • Update your secret and public API keys in the plugin's settings with the keys from your live Hub account.
  • Configure the webhook URLs in your live Hub account.

Extend your configuration

You can extend your configuration to add more payment methods, use 3D Secure payments, and more.