Step 1. Get the login and secret
Create a secret key in the UTOPAY dashboard (Integration → API keys); start with a test key utopay_sk_test_…. Paste it here — the key is sent only to api.utopay.app and is not stored on this page.
A test key gives sandbox settings, a live key — live ones. Each has its own login and secret.
Step 2. Create the payment system in Tilda
- Tilda → Site settings → Payment systems → Universal payment system → template “New payment system (for developers)”.
- Main fields: Login and Secret for order signing — from step 1; Currency — USD, EUR or another currency UTOPAY accepts (RUB is not accepted); Country.
- Extended settings → API URL: the value from step 1 (
https://api.utopay.app/tilda/pay). - Field mapping: Login →
login, Currency →currency, Notification URL →notify_url, Order number →order_number, Order description →order_description, Order amount →order_amount, Buyer email →client_email, Signature →signature. - Order signature: custom rules
{{login}}{{order_amount}}{{order_number}}{{secret}}, algorithm SHA-256, tick “Use the secret as the algorithm key (HMAC)”. - Notification signature: custom rules
{{login}}{{order_amount}}{{order_number}}{{secret}}{{paid}}, SHA-256, HMAC. Success indicator: fieldpaid, value1. Transaction id:transaction_id. - Save, republish the pages with the cart, place a test order and press the green ✅ button in the UTOPAY sandbox — Tilda shows the order as paid. Then repeat step 1 with the live key and replace the login and secret.
Options in the API URL
| Add to the API URL | What it does |
|---|---|
?method=crypto&coin=bep20/usdt | Crypto instead of card (1.5%). Add your wallet for the network in the dashboard → Funds & payouts. |
?provider=paypal | Send buyers straight to one card method (stripe, paypal, revolut…). |
?success=https://your-site/thanks | Page the buyer returns to after payment (default — your site’s home page). |
Options combine: https://api.utopay.app/tilda/pay?method=crypto&coin=bep20/usdt&success=https://your-site/thanks. For both card and crypto create two universal payment systems in Tilda with different API URLs.
How the order is confirmed
Tilda signs every order with your secret (HMAC-SHA256); UTOPAY refuses an order with a wrong signature, so the amount cannot be changed on the way. After the payment UTOPAY sends Tilda a notification signed the same way, with paid = 1 and the UTOPAY payment id; Tilda checks the signature, the order number and the amount and marks the order paid. If Tilda does not answer, UTOPAY retries for six hours.
Changelog
- 1.0 — Universal payment system: card / PayPal and crypto, signed orders and notifications.
Updated · UTOPAY integrations team