What the package does
- Creates the utopay namespace and system settings utopay_* (key, currency, rate, coin…), with English and Russian descriptions.
- With miniShop2: registers the payment classes and creates two disabled payment methods — “Card, Apple Pay, Google Pay, PayPal” (class Utopay) and “Crypto: USDT, USDC” (class UtopayCrypto).
- With miniShop3 (MODX 3): creates the same two methods with the provider
Utopay\MiniShop3\UtopayPayment, which works with miniShop3 payment attempts and its webhook route. - After the order is placed the buyer goes to the UTOPAY page; the order becomes paid only when the payment, re-read through the API, matches the amount and currency.
- Upgrades keep your settings; uninstalling disables the methods and keeps orders intact.
Installation
- Download the package above (keep the file name
utopay-1.1.0-pl.transport.zip). - MODX manager → Extras → Installer → arrow next to “Download Extras” → Upload a package → choose the file → Install.
- System → System Settings → namespace utopay: set utopay_secret_key — create a test key
utopay_sk_test_…in the UTOPAY dashboard (Integration → API keys). Set the currency and rate if your prices are not in USD. - miniShop2 / miniShop3 → Settings → Payments: enable “Card, Apple Pay, Google Pay, PayPal” and/or “Crypto: USDT, USDC” and link them to your deliveries.
- For crypto add your EVM wallet in the dashboard (Project settings → Funds & payouts) and set utopay_coin.
- Place a test order, press the green ✅ button in the UTOPAY sandbox — the order becomes paid. Replace the key with
utopay_sk_live_….
Settings
| System setting | What it does |
|---|---|
| utopay_secret_key | utopay_sk_test_… / utopay_sk_live_…. |
| utopay_currency, utopay_rate | Currency UTOPAY charges and a fixed rate from your prices (1 when prices are already in it). |
| utopay_shop_currency | miniShop3 only: currency of prices, payment attempts are kept in it. |
| utopay_coin | Coin of the crypto method, e.g. bep20/usdt. |
| utopay_provider | Optional: send buyers straight to Stripe, PayPal, Revolut… |
| utopay_ms2_paid_status, utopay_success_id | miniShop2 paid status (2) and the resource the buyer returns to. |
How orders are confirmed
Each payment carries its own notification URL with the order id, amount and currency, signed with your secret key. UTOPAY signs every event (HMAC-SHA256) and retries for six hours.
The payment is always re-read through the UTOPAY API; only an exact amount and currency marks the order paid. Underpaid crypto and mismatches are written to the MODX error log with the [UTOPAY] prefix.
Changelog
- 1.1.0-pl — transport package for the MODX Installer: namespace, system settings, payment methods created automatically.
- 1.0.0 — first release as files: miniShop2 (MODX 2.8 – 3.x) and miniShop3 1.14 beta.
SHA-256: 4c3b62e6f9d3dab65ad40b9610b463f40b78327eff0ec5aaabed77fac64a3a2a
Updated · UTOPAY integrations team