What the module does
- Checkout shows Card, Apple Pay, Google Pay, PayPal and Crypto (with a coin selector). Either can be turned off.
- The order is created in the Awaiting UTOPAY payment state, then the buyer pays on the UTOPAY page.
- After the payment is re-read through the API and the amount and currency match, the order goes to Payment accepted; the UTOPAY payment id is saved as the transaction id.
- The order confirmation page re-checks the payment and shows Pay again while the order is unpaid.
- Underpaid crypto and amount mismatches are written to Advanced Parameters → Logs for the order.
Installation
- Download the ZIP above.
- Modules → Module Manager → Upload a module → choose the ZIP (PrestaShop 1.6: Modules → Add a new module).
- Open Configure. In the UTOPAY dashboard create a test key
utopay_sk_test_…(Integration → API keys) and paste it. The key is checked on save. - Choose payment options and coins. For crypto add your EVM wallet in the dashboard (Project settings → Funds & payouts).
- Make sure the module is allowed for your currencies and countries in Payment → Preferences.
Settings
| Field | What it does |
|---|---|
| Secret key | utopay_sk_test_… for the sandbox, utopay_sk_live_… for real payments. Leave empty to keep the saved key. |
| Payment options | Card / PayPal and crypto, card only or crypto only. |
| Crypto coins | Comma-separated tickers, e.g. bep20/usdt,erc20/usdt,polygon/usdc. |
| Card method | Empty — the buyer chooses; or straight to Stripe, PayPal, Revolut… |
Test payment
- With the test key place an order and choose a UTOPAY option.
- In the UTOPAY sandbox press the green ✅ button.
- You return to the order confirmation page: “Payment received”. In the back office the order is Payment accepted.
- Replace the key with
utopay_sk_live_….
How orders are confirmed
Each payment carries its own notification URL (/module/utopay/callback) with the order id, amount and currency, signed with your secret key. UTOPAY signs every event (HMAC-SHA256) and retries for six hours if the shop does not answer 2xx.
The module checks both signatures, re-reads the payment through the API and sets Payment accepted only when it is paid with exactly the order total and currency.
Troubleshooting
- UTOPAY is not shown at checkout — the cart currency is not supported, the key is empty, or the module is not enabled for the currency / country in Payment → Preferences.
- Orders stay “Awaiting UTOPAY payment” — the shop must be reachable from the internet and maintenance mode must be off; see Advanced Parameters → Logs.
- “amount is below the minimum” — the total is below the minimum of the method or coin; the buyer can press Pay again and choose another one.
Changelog
- 1.0.0 — first release: PrestaShop 1.6.1 – 9, cards & PayPal, crypto, Pay again, Russian translation.
SHA-256: 3fbdc9540feaa15a12ca677af2c56d55284f104a119c50bc139fe20e1248ac52
Updated · UTOPAY integrations team