How to accept crypto donations with an open amount

To accept a donation in stablecoins, create a payment link without an amount on Stellar or Solana: the donor opens it, chooses the amount in their wallet and pays your address directly. Each link takes one payment and stays open for a limited time, so create one per donor, for example when someone presses Donate on your site. Cosmos Pay marks the link as paid once the network confirms the donation.

How an open-amount link works

  • Leave the amount empty when you create the link, in the dashboard or with the API. The checkout shows Any amount and tells the donor to choose it in their wallet.
  • The donor’s wallet sets the amount: any positive amount of the link’s asset settles it, on Stellar with the link’s memo.
  • A message of up to 300 characters, such as a thank-you, shows in the donor’s wallet.

Limits to plan for

  • Stellar and Solana only: a Monad link needs an amount.
  • One link takes one donation. Once paid it cannot be paid again, so a single link printed on a poster serves only the first donor.
  • A link is open for a limited time, shown on the checkout as a countdown.
  • Your own fee on a payment needs a fixed amount, so it does not apply to open-amount links.

Take your first donation

  1. Switch to Sandbox

    Choose Sandbox in the dashboard: links run on Stellar Testnet or Solana Devnet and move no real money.

  2. Create an open-amount link

    In Payments, choose Create payment link, pick Stellar or Solana and the asset, leave the amount empty and, if you like, add a thank-you message.

  3. Share it

    Send the checkout page, show its QR code, or embed it on your page.

  4. Donate from a wallet

    Open the link in a wallet on the same network, enter an amount and approve. The checkout turns to Paid once the network confirms it.

  5. Confirm it on your server

    When PAYMENT_INTENT_SUCCEEDED arrives, read the transaction to learn the amount, and thank the donor.

Reading what was donated

An open-amount link keeps no amount: when it is paid, Cosmos Pay records the transaction hash and the donor’s address, and the webhook carries them. Read the amount donated from that transaction on the network, for example to thank the donor or issue a receipt.

A Donate button on your site

When a visitor presses Donate, have your server create an open-amount link and show it with the embedded checkout, or send the visitor to its checkout page. Each visitor then gets a fresh link. In the browser, a Stellar wallet can also pay it through the SDK’s WebClient with the amount the donor chose: webClient.pay(intent, { amount }).

Questions and answers.

Payments by network:Stellar paymentsSolana paymentsMonad payments

Can one link collect many donations?

No. A link is paid once. Create a new link for each donor, for example from your server when someone presses Donate.

Can I take open-amount donations on Monad?

No. A Monad link needs an amount. Use Stellar or Solana for open amounts.

How do I know how much was donated?

Read the payment’s transaction on the network: the link itself keeps no amount for an open-amount payment.

Which assets can donors give?

The asset set on the link, such as USDC or the network’s coin (XLM or SOL). The donor chooses only the amount.

Start accepting stablecoins.

Create a free account, mint a test key and send your first payment link today.

Write to us

Questions about plans, integration or protected payments? Tell us and we will reply by email.

We use these details only to reply to you.