For the complete documentation index, see llms.txt. This page is also available as Markdown.

Choosing a payment method

A quick comparison of Invoices, Deposits, Address provision, and Withdrawals to help you pick the right building block.

Cryptonly has four payment primitives. They share the same underlying pool-address and confirmation infrastructure, but fit different use cases.

Primitive
Use it when
Amount
Address reuse
Webhook event

Invoice

Checkout — customer pays a fixed price for an order

Fixed, priced in fiat

New address per invoice

invoice.statusChanged

Deposit

A single crypto top-up to your balance, outside of checkout

Flexible, at or above a currency minimum

New address per deposit

deposit.statusChanged

Address provision

A customer may send several top-ups over time (e.g. a recurring depositor)

Flexible per payment

Same address reused until it expires

deposit.statusChanged per payment

Withdrawal

Paying funds out of your balance to an external wallet

Merchant-specified

N/A — sends out, not in

withdrawal.statusChanged

Still not sure?

  • Selling a product or service with a known price? Use an Invoice.

  • Accepting an open-ended top-up (for example, funding a customer's in-app balance)? Use a Deposit.

  • Expecting the same customer to top up more than once? Use Address provision instead of creating a new deposit each time.

  • Sending funds out to a customer, supplier, or your own external wallet? Use a Withdrawal.

Every primitive is backed by the same on-chain monitoring pipeline — see Onchain confirmations for confirmation requirements and Supported currencies for available assets and minimums.

Last updated