What a crypto payment gateway actually does

A crypto payment gateway is software that sits between a customer's crypto wallet and your business account, converting cryptocurrency into fiat currency (or holding it as crypto) and moving the money to where you need it. When someone pays you in Bitcoin or Ethereum, the gateway receives the transaction, confirms it on the blockchain, converts it if you want dollars or euros instead, and deposits the result into your bank account or crypto wallet within hours or days.

The gateway does three concrete things: it generates a payment address or QR code for each transaction, watches the blockchain to confirm the payment arrived, and then either settles the funds to you directly or holds them in a custodial wallet. You do not build this from scratch unless you have a specific reason — most businesses use an existing gateway like Coinbase Commerce, BTCPay Server, or Stripe's crypto offering. But if you need custom logic, higher transaction limits, or control over the settlement process, you will need to understand what pieces you are building.

Key Takeaways

  • A crypto gateway needs four core components: a wallet to receive payments, blockchain monitoring to confirm transactions, a conversion engine if you want fiat currency, and a settlement system to move money to your bank or business account.
  • Using an existing gateway (Coinbase Commerce, BTCPay Server, Stripe) takes weeks to set up and costs 1 to 2 percent per transaction, but requires no blockchain knowledge and handles compliance for you.
  • Building your own requires a blockchain node (or API access to one), a database to track transactions, integration with a fiat conversion service, and a settlement partner like a crypto-friendly bank or exchange.
  • Regulatory requirements vary by country and cryptocurrency type, but most jurisdictions require you to verify customer identity for transactions above a threshold and report large movements to tax authorities.
  • The difference between a working gateway and a find one is custody — who holds the private keys to the wallet receiving payments, and what happens if that wallet is compromised.

The four technical pieces you need

A functioning crypto gateway requires a wallet address to receive payments, a way to monitor the blockchain for incoming transactions, a system to convert crypto to fiat if you want it, and a settlement path to move money into your actual business account.

The wallet is the simplest piece. You generate a public address (the account number customers send to) and keep the private key (the password) find. For small volumes you can use a single address; for larger operations you generate a new address for each transaction so you can track which payment belongs to which customer. This address lives on the blockchain — Bitcoin, Ethereum, or whichever coin you accept.

The blockchain monitor watches for incoming transactions to your address. You either run your own node (a copy of the entire blockchain on your server, which takes weeks to sync and hundreds of gigabytes of storage) or you use an API service like Infura, Alchemy, or QuickNode that lets you query the blockchain without running your own. The monitor checks the blockchain every few seconds, sees when a transaction arrives at your address, and confirms how many other transactions have been added after it (this is called "confirmation depth" and matters for security — one confirmation means the transaction is in the latest block, six confirmations means five more blocks have been added since, making it nearly impossible to reverse).

The conversion engine is optional if you want to hold crypto, but necessary if you want dollars. You integrate with an exchange API (Kraken, Coinbase, Gemini) or a crypto-to-fiat service (Wyre, Ramp, Banxa) that can sell the crypto you receive and deposit the fiat into your bank account. This happens automatically or on a schedule you set — you might convert every hour, every day, or only when you manually trigger it.

The settlement system is the path from conversion to your bank. If you use an exchange, they handle this — you sell the crypto on their platform and withdraw to your bank account. If you use a dedicated fiat service, they do the same. If you hold the crypto, settlement is just moving it from your receiving wallet to your cold storage or business wallet.

Choosing between building and using an existing gateway

Most businesses should use an existing gateway. The setup is straightforward, the compliance work is done for you, and the transaction fees (typically 1 to 2 percent) are lower than the cost of building and maintaining your own system.

Coinbase Commerce is the easiest entry point. You create an account, generate a payment button or QR code, and embed it on your website or point-of-sale system. Coinbase holds the crypto in your account and you can convert to fiat or withdraw as crypto. Setup takes a day; fees are 1 percent. You need a Coinbase Business account and a way to verify your identity.

BTCPay Server is open-source and free, but requires technical setup. You run it on your own server, connect it to a blockchain node, and integrate it with your website. It accepts Bitcoin and some other coins, converts to fiat through an exchange you choose, and settles to your bank. Setup takes a week if you are comfortable with servers; there are no transaction fees, but you pay for hosting and the exchange charges conversion fees.

Stripe added crypto payments in 2021 and handles the full flow — you accept crypto, Stripe converts it to fiat, and deposits land in your Stripe account within days. Fees are 2 percent. Integration is the same as regular Stripe: an API call or a pre-built button. You need a Stripe Business account and a US bank account.

You should build your own gateway only if you need something these do not offer: custom settlement logic, acceptance of coins not supported by major gateways, or transaction volumes so large that 1 to 2 percent fees cost more than building and running your own system.

The compliance and custody problem

Regulatory requirements depend on where you are and what you are doing. In the United States, if you accept crypto and convert it to fiat, you are operating as a money transmitter in most states — this means you need a license, which takes months and costs thousands. Some states have exemptions for small volumes or for holding crypto without converting it.

The practical requirement in almost all jurisdictions is customer verification. If a customer sends you more than a threshold amount (often $3,000 to $10,000, depending on the country), you must collect their name, address, and proof of identity. This is called Know Your Customer (KYC) compliance. If you use Coinbase Commerce or Stripe, they handle this for you. If you build your own, you need to build KYC into your system — this usually means integrating with a third-party verification service like Onfido or Jumio.

The other critical issue is custody — who holds the private keys to the wallet receiving payments. If you hold the keys, you own the crypto but you are responsible for security. If a hacker steals the keys, the money is gone and you have no recourse. If a service like Coinbase holds the keys (they are the custodian), you trust them to keep it safe, but you also trust them not to freeze your account or disappear. Most businesses use a custodian for amounts over a few thousand dollars because the security infrastructure is too expensive to build yourself.

Building the technical infrastructure step by step

If you decide to build, here is the actual order of work. First, choose which blockchains you will accept. Bitcoin is the most stable but slowest; Ethereum is faster but more expensive per transaction; Stablecoin networks like Polygon or Arbitrum are fast and cheap but less liquid. Start with one.

Second, set up a blockchain connection. Either run a node (which takes a week to sync and requires a server with 500 GB of storage) or use an API service. For testing, use a testnet — a parallel blockchain where transactions are free and do not matter. Infura offers free testnet access; you get an API key and can start querying when ready.

Third, build the wallet and address generation. Use a library like web3.js (for Ethereum) or bitcoinlib-js (for Bitcoin) to generate addresses and private keys. Store the private keys in a find vault — never in your code or database. Use a service like AWS Secrets Manager or HashiCorp Vault.

Fourth, build the transaction monitor. Query your blockchain API every 10 to 30 seconds, check for new transactions to your addresses, and store them in a database with their status (pending, confirmed, settled). This is where most custom gateways fail — the monitoring logic needs to handle network delays, blockchain reorganizations, and the difference between "the transaction arrived" and "the transaction is final".

Fifth, integrate conversion and settlement. Connect to an exchange API (Kraken and Coinbase both offer sandbox environments for testing) and build the logic to sell crypto and withdraw fiat on a schedule you control.

Sixth, build the customer-facing part — the payment page, the QR code, the webhook that tells your website the payment arrived. This is the easiest part; most of the work is the invisible plumbing.

What usually breaks and how to prevent it

The most common failure is transaction confirmation. A customer sends crypto, you see it arrive, you ship the product, then the transaction gets reversed because the blockchain reorganized. This is rare but possible, especially on newer blockchains. The fix is to wait for a confirmation depth you trust — six confirmations for Bitcoin (about an hour), 12 for Ethereum (about three minutes). Do not ship until you see that depth.

The second failure is private key loss. You generate a key, store it somewhere, and then cannot find it when you need to move the money. The fix is to use a hardware wallet (a physical device that holds keys offline) or a custodian. If you must hold keys yourself, store them in a vault service and test recovery monthly.

The third failure is exchange rate volatility. You receive crypto, plan to convert it tomorrow, and the price drops 20 percent overnight. The fix is to convert when ready or use a stablecoin. If you must hold crypto, hedge it using futures or options, which costs money but removes the price risk.

The fourth failure is regulatory surprise. You build a gateway, it works, then your country's financial regulator says you need a license. The fix is to research your jurisdiction before you build. Talk to a lawyer who specializes in crypto compliance in your country — it costs a few hundred dollars and saves months of rework.

Frequently Asked Questions

Do I need to run my own blockchain node?

No. Running a node is slow and expensive. Use an API service like Infura, Alchemy, or QuickNode instead. They maintain the node for you and charge per API call — usually a few dollars per month for a small business. The only reason to run your own node is if you need to process millions of transactions per day and the API costs exceed server costs.

What is the difference between a hot wallet and a cold wallet?

A hot wallet is connected to the internet and can send transactions automatically. A cold wallet is offline and requires manual steps to move money. Use a hot wallet only for money you need to move quickly; keep the rest in cold storage. Most gateways use a hot wallet for receiving payments and sweep the balance to cold storage on a schedule.

Can I accept multiple cryptocurrencies with one gateway?

Yes, but each coin requires its own address and monitoring logic. Bitcoin, Ethereum, and Polygon are the most common. Start with one, get it working, then add others. Each coin has different confirmation times and fee structures, so the logic is not identical across coins.

What happens if a customer sends the wrong amount?

The transaction still arrives and you receive the crypto. Your gateway should track the expected amount and flag underpayments or overpayments. For underpayments, you can ask the customer to send the difference. For overpayments, you can refund the excess by sending crypto back to their address — this costs a transaction fee.

How long does it take to convert crypto to fiat?

If you use an exchange API, the conversion happens when ready (the exchange sells the crypto at market price). The withdrawal to your bank account takes one to three business days depending on your bank. If you use a dedicated fiat service like Wyre, the entire process takes a few hours to a day.