Introduction
TrezorPay is a non-custodial crypto payment API. Create an address, let your customer pay it, and receive the funds in your own wallet minus 1.25%.
TrezorPay accepts crypto payments on Bitcoin, Litecoin, Bitcoin Cash, Dogecoin, Solana, Ethereum, BNB Smart Chain, Polygon, Base, Arbitrum, Optimism, Avalanche and Tron, and forwards each one on-chain to the wallet you choose as soon as it confirms. There is no account to open and no API key: one request gives you a deposit address, and your server is told about every payment through a signed callback.
Hand this to your AI agent
One prompt covering every endpoint, the callback signature, errors, idempotency and a test suite. Paste it into Claude, Cursor, Copilot or ChatGPT with your stack appended, and it scaffolds a working integration.
How it works
- Your server creates an address with
/{ticker}/create/, passing your callback URL and your wallet. - Your customer pays it. If you asked for it, we call your URL with
pending=1as soon as the payment is seen. - We forward it. Once the payment has the confirmations its network needs, the amount minus our fee and the network cost is sent to your wallet.
- You get a signed callback with
pending=0, the transaction ids and the amounts. Answer*ok*.
Conventions
- Base URL:
https://api.trezorpay.com - Every endpoint is a
GETwith query parameters, and every path ends with/. - No API key. The callback URL is the identity of a payment address: the same callback always returns the same address.
- Success answers
200with"status": "success". Errors answer400(or404) with{"status":"error","error":"…"}. - Amounts are strings, so no precision is lost.