Account top-ups & balances
Give each user a deposit address they can reuse forever. Every deposit is reported on its own, so you credit their balance the moment it confirms.
Why TrezorPay fits
A permanent address per user
Users save their address once and top up whenever they want; it never expires.
Every deposit reported
Each payment triggers its own signed callback with its transaction id, so nothing is credited twice.
Easy reconciliation
/logs/ lists every payment and callback of an address, with the forwarding transaction.
How it works
Create the user address
Call /create/ once per user with a callback URL carrying the user id.
The user deposits
Show the address and its minimum; users top up as often as they like.
Credit the balance
On each callback, credit value_coin to the user, keyed on txid_in.
GET /sol/usdc/create/?callback=https://app.example/deposits?user=42&address=YOUR_WALLETQuestions
What about deposits below the minimum?
They are recorded and shown in /logs/, but not forwarded: each coin has a minimum so that the network cost cannot eat the deposit.
Can I accept several coins?
Create one address per coin for the user, or one multi-token address per network.
Other use cases
SaaS & subscriptions
Give each customer a permanent address and credit their plan on every payment.
See how it works →E-commerce & one-time payments
One address per order, a QR code at checkout and a callback when it is paid.
See how it works →Marketplaces & split payments
Split each payment between sellers and your commission, without holding funds.
See how it works →Donations & creators
One public address that accepts every token, split between collaborators.
See how it works →Invoices & freelancers
Get paid in crypto for an invoice amount set in your own currency.
See how it works →Start in one request
No sign-up, no API key. Put in your wallet and callback URL and you are live.