No Fianto fee during the beta. Any fee comes with at least 30 days notice. See pricing
Payments8 min read

What a crypto payment gateway is, and how a Solana one works.

A crypto payment gateway is the software between a customer's wallet and your order system: it tells the customer exactly what to pay, recognises the payment on the blockchain, decides when it is final, and tells your server. The classic design watches an address for incoming coins, while on Solana a gateway can build the exact transaction for the customer to sign, which rules out underpayments and wrong-token mistakes. Fianto is a gateway of the second kind, for USDC on Solana, and it never holds the money.

On this page
What does a crypto payment gateway do?How does an address-watching gateway work?How does a crypto payment gateway work on Solana?What happens in one 25.00 USDC payment?Does a crypto payment gateway hold your money?How much does a crypto payment gateway cost?Do you need a crypto payment gateway at all?SourcesQuestions
TL;DR
  • A gateway does five jobs: quotes the amount, ties the payment to an order, finds it on chain, decides when it is final, and notifies your server.
  • Address-watching gateways have to handle partial, over- and late payments; a transaction-building gateway on Solana writes the amount into what the customer signs.
  • Gateways charge very differently: Stripe lists 1.5% for stablecoin payments as of 15 October 2026, while on Fianto the merchant pays nothing.

What does a crypto payment gateway do?

A crypto payment gateway turns a transfer on a blockchain into a fact your shop can act on: order 1001 is paid. A blockchain is a public ledger that many computers keep in agreement, and a transfer on it is visible to anyone, but it carries no order number, no customer account and no "paid" flag. The gateway supplies those, in five jobs:

  1. Show the customer one exact amount in one token on one network, with any fees.
  2. Tie the payment to an order, so two customers paying the same amount are not confused.
  3. Find the payment on chain, including one the customer sent some other way.
  4. Decide when it is final. Blocks can be reorganised for a while after they appear, so "seen" and "safe" are different moments.
  5. Notify your server with a signed message, and keep a record you can export.

Some gateways add a sixth: converting the crypto to your bank currency and paying it out. That is where custody comes in, covered further down.

How does an address-watching gateway work?

An address-watching gateway shows the customer an address and an amount, then waits for a matching transfer to arrive. This is the classic design from Bitcoin, where the customer can pay from any wallet or exchange account by copying two values. Its weakness is that the customer does the typing, and the gateway has to name every way that goes wrong.

BTCPay Server, an open-source gateway, is a fair example because its states are public. Its invoice documentation (read 15 October 2026) lists "Paid partial" for when "the detected payments total less than the requested amount," "Paid over" for more than requested, and "Paid late" for when "full payment arrived after the invoice expired." Behind each of those states is a decision someone has to make: refund, ask for the rest, or accept it.

How does a crypto payment gateway work on Solana?

On Solana a gateway can build the whole transaction and hand it to the customer's wallet to sign, so the customer never types an amount. A transaction is the signed message that moves tokens; whoever builds it decides what is in it. The Solana Pay specification describes this as a transaction request, where the server builds the transaction and the wallet must still treat that transaction as "untrusted".

Fianto builds a short one. It holds two compute-budget instructions, a USDC transfer of the price to the merchant's wallet carrying the session's reference key, and, only when the service fee is above zero, a second USDC transfer of the fee to Fianto. The customer is the only signer. The wallet signs without sending; Fianto checks the signed bytes against what it built, instruction by instruction, then broadcasts the transaction and rebroadcasts it if needed. A changed amount, token or destination is never sent.

The trade-off is the wallet. The customer needs a Solana wallet that can sign a transaction without sending it, holding USDC and a little SOL. Paying straight from an exchange account, which an address-watching gateway allows, does not work here; why an exchange account cannot pay a checkout explains the fix.

What happens in one 25.00 USDC payment?

Here is one payment through Fianto, for a 25.00 USDC order from the made-up shop Quillfern Labs, from the session to the money in the wallet:

  1. Quillfern Labs' server creates a checkout session for its order 1001 with an amount of 25.00. The session's link works for 30 minutes unless the server sets another time between 5 minutes and 24 hours.
  2. The customer opens the page and sees the amount, the Fianto fee (0.00 during the beta), the Solana network fee, "paid by you, under $0.01", and the total of 25.00 USDC.
  3. They connect a wallet holding at least 25.00 USDC plus a little SOL (about 0.00067 SOL as of 15 October 2026; the checkout tells you the exact amount if the wallet is short), and approve one transaction.
  4. Fianto broadcasts it. When Solana confirms the block, the page shows "Payment received". Quillfern Labs hears nothing yet.
  5. When the block is finalized, the order turns PAID and Fianto sends order.paid and checkout.session.completed to the shop's webhook. The 25.00 USDC is already in its wallet, and the shop paid nothing for any step.

After the beta, the same order adds a Fianto fee of about 0.1 to 0.5%, paid by the customer: 0.025 to 0.125 USDC on top, for a total of 25.025 to 25.125 USDC. The shop still receives exactly 25.00. On this one-off payment there is no USDC network fee and no account rent. Solana's own charge is small: its fee documentation sets "a base fee of 5,000 lamports per signature," and Solana's terminology page values a lamport at 0.000000001 SOL, so the base fee is 0.000005 SOL.

A gateway for USDC on Solana that never holds your money. No Fianto fee during the beta.

See the hosted checkout

Does a crypto payment gateway hold your money?

Some crypto payment gateways hold your money and some never touch it, and the difference decides what they can offer. A custodial gateway receives the payment into its own wallet, keeps a balance for you, and pays out later, often in your bank currency. A non-custodial gateway, Fianto among them, lets the payment go straight to your wallet and keeps only the record. The full trade-off is in custodial vs non-custodial crypto payments.

Non-custodial has costs of its own. Fianto has no balance, no payout and no conversion to bank money, so you hold USDC and keep your own keys. Turning it into bank money is covered in turning USDC revenue into local currency. What a business takes on with stablecoin payments lists the rest. There is no refund button: a refund is you sending USDC back from your wallet, as chargebacks vs crypto refunds explains.

How much does a crypto payment gateway cost?

Crypto payment gateway pricing ranges from a percentage the merchant pays to nothing at all for the merchant, depending on whether the gateway converts and holds funds. Fianto publishes this post, so read its own row with that in mind. Figures are from each provider's page on 15 October 2026, on the same 25.00 sale:

OptionPublished priceOn a 25.00 saleWho pays
Stripe stablecoin payments1.5% of the transaction amount in USD, including conversion to fiat, wallet and AML screening, fraud prevention and gas sponsorship$0.375The business
Stripe domestic card (for scale)2.9% + 30 cents per successful transaction for domestic cards$1.025The business
Fianto, during the betaNo Fianto fee0Nobody; the customer pays only the Solana fee
Fianto, after the betaAbout 0.1 to 0.5% on top of the price0.025 to 0.125 USDCThe customer; the merchant still pays nothing

Stripe lists stablecoins a second time, in the section for Link, its accelerated checkout: "0.8% per successful transaction", marked "Promotional rate through January 1, 2027; + 0.2% thereafter". The table uses the 1.5% figure from its main payments section, the one that includes conversion to fiat.

Stripe is the better pick if you want dollars in a bank account rather than USDC in a wallet: its price includes conversion to fiat, and Fianto does not convert at all. Fianto fits a merchant who is happy to hold USDC on Solana and wants every cent of the price. The arithmetic for subscriptions is in USDC vs card fees.

Do you need a crypto payment gateway at all?

You need a crypto payment gateway once software, not a person, decides that an order is paid. If you take a handful of payments a month from people you know, a wallet address and a spreadsheet will do. If your shop ships goods, opens access or provisions something automatically, you need the five jobs above done every time, and writing them yourself means running Solana infrastructure and handling every edge case on your own.

Check the limits before choosing Fianto. It takes USDC on Solana only, approves every merchant before the first payment with no promised review time, has no test mode, and does no tax or bank conversion. Within those, the USDC checkout covers one-off payments, and how to accept USDC on Solana shows the setup end to end. For what the customer signs and where every unit goes, read how money moves in the docs.

Sources
Questions

Questions about crypto payment gateways.

How does a crypto payment gateway work?

It quotes an exact amount, links the payment to an order, finds the transfer on the blockchain, waits until it is final and then notifies your server. Some also hold the funds and convert them to bank money.

Is a crypto payment gateway the same as a crypto wallet?

No. A wallet holds keys and signs transfers. A gateway sits between the customer's wallet and your order system and records which transfer paid which order.

Do customers need an account with the gateway?

Not with Fianto. The customer connects a Solana wallet on the checkout page and approves one transaction; they create no account and are never asked for ID.

Can a crypto payment gateway convert USDC to dollars?

Some custodial gateways do. Fianto does not: the USDC lands in your wallet and converting it is up to you.

Which crypto does Fianto accept?

USDC on Solana only. Other tokens and other networks are not accepted.

Read next.

PaymentsCompare8 min read

Custodial vs non-custodial crypto payments: who holds your money

A custodial crypto payment gateway receives the payment into wallets it controls and pays you out later; a non-custodial one sends the payment straight to a wallet you control, so nobody holds your money in between. Custody can buy you payouts to a bank and no keys to guard. Non-custodial removes the balance a provider could freeze or lose, and hands you the keys, the refunds and the conversion to fiat.

Payments8 min read

What a hosted USDC checkout does that a wallet address doesn't

Posting your wallet address gets you paid, but it tells you nothing else: which order the USDC was for, whether the amount was right, or when the transfer became final. A hosted USDC checkout wraps each payment in a session that carries your order id, writes the exact amount into the transaction the customer signs, expires on a timer, and tells your server only once Solana has finalized the payment. For a tip or a one-off payment from someone you know, an address is fine; for orders you fulfil automatically, use a session.

Stablecoins8 min read

Stablecoin payments for business: a plain guide to taking USDC

Accepting stablecoin payments means a customer pays you in a dollar token such as USDC, sent from their wallet to yours in one blockchain transaction, with no card network or processor balance in between. You get money that cannot be charged back and needs no payout; you take on keeping your wallet safe, sending refunds by hand and recording each payment's dollar value. With Fianto you accept USDC on Solana only and pay nothing as the merchant; there is no Fianto fee during the beta.

Let software mark orders paid.

Start with one checkout session and one webhook.

New posts are announced on X and Discord.