Crypto payments for digital goods and software

A licence key leaves your server the instant the buyer pays, which is exactly when a card payment is least safe. Paysell confirms the transfer on the TON network first and only then tells your backend to release the file.

  • USDT and TON on the TON network
  • Webhook about a minute after the transfer
  • Delivered downloads cannot be charged back
  • 0.2% per payment, nothing to pay upfront

What usually goes wrong

Instant delivery, disputes months later

The buyer downloads the file, activates the key, and opens a dispute ninety days on. There is no tracking number to show the issuer, so the digital seller loses the argument by default — and pays a dispute fee on top of the refund.

Stolen cards target products with no address

Keys and licences are the easiest thing in the world to buy with someone else's card and resell within the hour. Every reversal costs you the key, the money and a hit to your fraud ratio that the acquirer will bring up later.

Half your audience cannot pay at all

Developers, designers and gamers in countries where international cards simply do not work still want your plugin. They already hold USDT in a wallet; what they lack is a checkout button that accepts it.

Hand-matched transfers do not scale

Pasting a wallet address into the order page works until the tenth sale. After that somebody compares amounts to explorer entries at midnight, and a buyer who sent a few cents short waits for support instead of downloading.

How Paysell helps

Release the key on the webhook

Paysell posts a signed `payment.credited` event carrying your own order id. Your handler verifies the HMAC signature, mints or looks up the licence and emails it. Retries continue for up to 24 hours, so a deploy in the middle of a sale costs nobody their key.

Nothing to reverse after the download

A confirmed transfer on the TON network cannot be recalled by the sender, by a bank or by us. Refunds become a decision you make deliberately from your own balance, not a reversal that arrives without warning.

One invoice, one amount, no guessing

Each invoice records what actually arrived. An underpaid invoice stays open for another 24 hours instead of flipping to paid, and an overpayment is credited to you in full. Invoices run from 3 to 10,000 USDT or 0.1 to 7,000 TON.

Pricing that survives a $9 product

0.2% of the received payment, fixed when you register the store. No setup fee, no monthly fee, no charge for the payment page or webhooks, and Paysell pays the network fees on incoming payments. A withdrawal has its own flat fee of 0.7 USDT or 0.52 TON, taken from the amount.

Where it fits

Licence keys and activation codesPlugins, themes and site templatesSoftware downloads and lifetime licencesFonts, mockups and 3D assetsSource code, scripts and bot packsPrepaid top-up and gift codes

Integration in minutes

From order to download in one webhook

Create a store in the dashboard, copy its API key and call the invoice endpoint when a buyer checks out. Send them to the hosted payment page — it shows a QR code and opens Tonkeeper or MyTonWallet directly — and wait for the signed webhook. It carries your order id, so releasing the goods is one database lookup and one send. Your key is live from minute one, so integrations are verified with a small real invoice — from 3 USDT or 0.1 TON.

Full API reference
Create an invoice for a licence key
curl -X POST https://paysell.me/api/merchant/v1/invoices \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"asset":"USDT_TON","amount":"25","order_id":"order-1042"}'
Cavab
{
  "invoice_id": "12c22c1a-a496-4c1e-abe3-72661ef8706e",
  "payment_url": "https://paysell.me/pay/12c22c1a-a496-4c1e-abe3-72661ef8706e",
  "asset": "USDT_TON",
  "amount": "25",
  "status": "pending",
  "expires_at": "2026-09-06T17:20:55Z"
}

Pricing at a glance

One rate for every payment, whatever you sell and wherever your customer is.

0.2%
per payment
0
setup and monthly fee
0.7 USDT / 0.52 TON
withdrawal fee
25 USDT / 19 TON
minimum withdrawal

Withdraw to any TON wallet in a couple of clicks from the dashboard.

Questions

Can I accept USDT for software licences?

Yes. Paysell accepts USDT and TON on the TON network, which covers most buyers who keep a crypto balance for online purchases. Your balance stays in the coin the buyer used — USDT stays USDT — because nothing is converted along the way. Coming next: Tron.

How do I make sure the key is only sent after payment?

Wait for the `payment.credited` webhook and never for a screenshot. Paysell sends it after the transfer is confirmed on the TON network and cross-checked against a second data source, and it carries the order id you supplied. Verify the HMAC signature, then release the download.

How fast do I get paid?

A payment is normally credited to your store balance about a minute after the buyer sends it: the transfer needs a masterchain block plus three confirmations, and we reconcile it against an independent source before crediting. Moving that balance to your own wallet is a separate withdrawal request from the dashboard; every request passes automated anti-fraud checks before it is signed.

Can a buyer charge back a file they already downloaded?

No. There is no chargeback mechanism on the TON network, and refunds are handled through support rather than an API call. If you decide a refund is fair, you send it yourself from your balance as an ordinary transfer, which means the decision stays with you rather than with a card issuer.

What happens if the buyer sends the wrong amount?

An underpayment leaves the invoice open for another 24 hours so the buyer can top it up, and the invoice always shows the real received amount. An overpayment is credited to you in full. Invoices expire after two hours by default, and you can set anything from one minute to 24 hours.

How much does it cost to sell digital goods for crypto?

0.2% of each received payment, deducted at crediting, with the rate fixed when your store is registered. Connecting a store and using the dashboard cost nothing, and Paysell pays the network fees on incoming payments. A withdrawal carries its own flat fee of 0.7 USDT or 0.52 TON taken from the amount, with a minimum of 25 USDT or 19 TON.

Is there a test environment before I go live?

Your key is live from minute one, so integrations are verified against real invoices — the minimum is 3 USDT or 0.1 TON, which makes a full end-to-end test cost a few cents in practice and removes the need for a separate test environment. A store starts accepting payments as soon as you create it, and the store review runs in parallel and opens withdrawals without holding payments up.

Related solutions

Ready to take your first crypto payment?

Create an account, connect a store and issue your first invoice today — no setup fee, no waiting for approval.

Create an account