E-commerce plugins

PrestaShop module

Install and configure the official PrestaShop payment module with native OAuth, DPoP-bound tokens, and MakePay webhooks.

Overview

MakePay for PrestaShop lets merchants accept crypto payments through hosted MakePay checkout. Customers choose the MakePay payment method during PrestaShop checkout, are redirected to MakePay to pay, and return to the store after payment.

The module creates a MakePay payment link for each PrestaShop order and listens for signed MakePay webhooks so order state changes happen automatically.

Before you start

You will need:

  • PrestaShop 8.0 or newer, including PrestaShop 9.x
  • PHP 7.4 or newer with OpenSSL enabled
  • An HTTPS Back Office and checkout URL
  • A PrestaShop employee account that can configure modules
  • A MakeCrypto company with MakePay settlement configured

PHP Sodium is recommended. When it is available, the module uses it with PrestaShop cookie secrets to encrypt connection details, webhook secrets, and manual API-key fallback credentials.

Set up MakeCrypto

Complete merchant setup before connecting PrestaShop.

  1. Sign in at https://www.makecrypto.io and select the company that should receive PrestaShop payments.
  2. Open Wallet > Balances, then configure settlement currency, chain, and destination wallet.
  3. Open Merchant > Payment settings and review payment fee and redirect behavior.
  4. Optional: open Settings > Merchant to add merchant branding, support email, checkout colors, hosted payment theme, and custom domains.

You do not need to create a developer application manually. The official PrestaShop module creates a store-specific connection when you click Connect MakePay.

Install the module

Download the latest official module ZIP:

https://plugins.makecrypto.io/downloads/prestashop/latest.zip

Then install it in PrestaShop:

  1. Open Back Office > Modules > Module Manager.
  2. Click Upload a module and choose the downloaded makepay.zip.
  3. After installation, click Configure.
  4. Keep Authentication set to the default connected mode.

The ZIP root is makepay/ and the main module file is makepay.php, matching PrestaShop module packaging expectations.

MakePay module settings in PrestaShop after OAuth connection, showing connected company status, webhook URL, checkout mode, and gateway configuration.

Connect your store

Use Connect MakePay for normal setup. It links this PrestaShop store to the MakeCrypto company you choose and can be disconnected later without changing store code.

  1. In the MakePay module configuration, keep MakePay API base URL set to https://www.makecrypto.io.
  2. Click Connect MakePay.
  3. Sign in to MakeCrypto if prompted, choose the company you prepared, and approve the requested access.
  4. After returning to PrestaShop, confirm that the module shows the store as connected.
  5. Save gateway settings and keep the module enabled.

During connection, the module automatically registers the public webhook URL:

https://your-store.example/module/makepay/webhook

Keep this endpoint reachable from the public internet. Security modules, firewalls, and caching rules should allow signed POST requests to that URL.

How the connection works

The Connect MakePay button opens MakeCrypto in a browser tab. You sign in, choose the company that should receive payments, review the requested access, and return to PrestaShop after approval. The module then saves the connection, registers the webhook URL, and keeps settings separate for each shop context in multistore installs.

No shared app secret or developer app setup is required for PrestaShop.

Gateway settings

Review these settings in Modules > Module Manager > MakePay > Configure.

SettingWhat it does
EnabledTurns the MakePay payment method on or off at checkout.
AuthenticationUse the default connected mode for normal installs. Manual API key fallback is for support-led recovery.
Payment method nameThe name customers see at checkout, for example Crypto Payment in USDT, BTC, ETH, LTC, DOGE and others.
Checkout experienceUse Hosted redirect for the most reliable flow, or Embedded checkout page to show MakePay in a secure iframe page with a hosted-link fallback.
Settlement currencyPreferred MakePay asset such as USDT. MakePay resolves the chain from company settings where possible.
Payment expirationHosted checkout lifetime, for example 30m, 2h, or 12h.
MakePay API base URLUse https://www.makecrypto.io for production.
Company ID / API key ID / API key secretRequired only for manual API-key fallback.
Webhook secretSet automatically during connection. Enter manually only for fallback mode.

Order states

On checkout, the module creates a PrestaShop order in the custom Awaiting MakePay payment state and opens the selected MakePay checkout experience.

Webhook status mapping:

MakePay statusPrestaShop state
paid, completed, confirmed, succeededPayment accepted
refunded, refundRefunded
failed, expired, chargebackPayment error
cancelled, canceledCanceled
other in-progress statusesAwaiting MakePay payment

The module writes private order messages with webhook status, payment UID, amount, asset, and payment URL when present in the MakePay webhook payload.

PrestaShop checkout showing MakePay as the selected crypto payment method before placing the order.

Public MakePay hosted checkout opened from a PrestaShop order, showing the payment amount and available crypto payment methods.

PrestaShop order details after a signed MakePay webhook marked the order as paid and added private payment notes.

MakeCrypto payment link details for a PrestaShop order, including merchant order ID, payment status, amount, and admin traceability.

Security and permissions

The PrestaShop connection requests:

  • company:read
  • makepay:payment-links:read
  • makepay:payment-links:write
  • makepay:customers:read
  • makepay:customers:write
  • makepay:settings:read
  • makepay:settings:write

It cannot send wallet funds or create legacy API keys.

Webhook updates are signed by MakePay and verified before any PrestaShop order state changes. Store administrators can revoke the connection in MakeCrypto under Integrations > Connected apps, or disconnect it from the PrestaShop module configuration page.

Manual API-key fallback

Use manual API-key mode only if Connect MakePay is unavailable or MakeCrypto support asks you to use it.

  1. In MakeCrypto, open Integrations > API Integrations.
  2. Create or choose a MakePay API key for the same company that receives store payments.
  3. Copy the company ID, API key ID, API key secret, and webhook secret.
  4. In PrestaShop, open Modules > Module Manager > MakePay > Configure.
  5. Set Authentication to Manual API key fallback.
  6. Paste the credentials and save.

Keep API key secrets out of theme files, client-side scripts, and public support tickets. Connect MakePay is still preferred for normal store operation.

Troubleshooting

If Connect MakePay fails, confirm that your Back Office URL uses HTTPS, your store can make outbound HTTPS requests to https://www.makecrypto.io, and the employee account can configure modules.

If the payment method does not appear at checkout, confirm that the module is active, Enabled is turned on, and the store is connected to MakePay or has valid manual API-key credentials.

If checkout shows a settlement or onboarding error, return to MakeCrypto and complete Wallet > Balances > Set up settlement for the company connected to the store.

If orders do not update after payment, check Integrations > Webhook requests in MakeCrypto for delivery attempts. The PrestaShop webhook endpoint should return a 2xx response. Also check that hosting firewalls are not blocking POST requests to /module/makepay/webhook.

If you change the store domain, Back Office domain, or move the shop to a new environment, disconnect and reconnect MakePay so the connection callback and webhook URLs match the current store.

Need partner setup help?

Open the payment link details view in MakeCrypto to copy the generated snippets for a real payment UID, or return to the portal to manage merchant settings.

Open portal