
For a closer look at the topic, consider crypto payment gateway api providers coinbase alongside the options and criteria discussed below.
Accepting cryptocurrency payments requires choosing the right gateway API. Each provider offers different trade-offs between supported coins, fees, custody models, and developer experience. This guide covers four major platforms: NOWPayments, BTCPay Server, Binance Pay, and Coinbase Commerce — their APIs, pricing, authentication patterns, webhook systems, and real-world integration considerations.
NOWPayments
NOWPayments is one of the broadest multi-coin gateways available. It supports over 350 cryptocurrencies and 30+ stablecoins, making it the widest selection among hosted payment processors. The platform operates on a non-custodial model by default, meaning funds can settle directly to merchant-controlled wallets rather than flowing through a custodian balance.
API Overview
The base endpoint is https://api.nowpayments.io/v1/. Every request requires an x-api-key header generated from the merchant dashboard. The API follows standard GET/POST patterns with JSON request and response bodies.
Creating a payment starts with a POST to /payment:
POST /v1/payment
Headers: x-api-key: YOUR_API_KEY
Body: { "price_currency": "USD", "price_amount": 49.99, "pay_currency": "BTC" }
The response returns a payment address, amount, and expiration window. Your backend then listens for IPN (instant payment notification) callbacks at the ipnCallbackUrl you provide during creation. Webhooks arrive as POST requests signed with an HMAC-SHA256 signature in the x-nowpayments-sig header — verification is mandatory to prevent spoofed callbacks.
Subscriptions API
NOWPayments is the only mainstream crypto gateway that ships native recurring billing. The /v1/subscriptions/plans endpoint lets you create reusable payment plans with configurable intervals (day, week, month, year). Individual subscriptions are created via /v1/subscriptions, which sends payment links to customer emails automatically. This makes it practical for SaaS businesses and content platforms without building subscription logic from scratch.
Pricing
| Plan | Processing Fee | Auto-Conversion Fee | Min Withdrawal |
|---|---|---|---|
| Standard (same-coin) | 0.5% | N/A | Varies by coin |
| With auto-convert | 1% | Included | Varies by coin |
The sandbox environment accepts test requests without charges, and SDKs exist for Node.js, PHP, Ruby, Python, and Go. Response times average around 350ms.
BTCPay Server
BTCPay Server occupies a fundamentally different position. It is open-source, self-hosted software with zero platform fees. You run your own infrastructure, manage your own keys, and pay only the underlying blockchain or Lightning Network transaction costs. There is no middleman taking a cut of every payment.
Greenfield API
The Greenfield API is BTCPay’s versioned REST interface, accessible at /api/v1/stores on your instance. It uses token-based authentication where each API key carries granular permissions — view invoices, create invoices, modify webhooks, manage stores. You generate keys through the BTCPay UI under Account → Manage account → API keys.
curl --fail-with-body \
-H "Authorization: token $API_KEY" \
"https://your-btcpay.example/api/v1/stores/$STORE_ID/invoices"
The interactive Swagger reference lives at /docs on every running instance, and the OpenAPI spec is available at /swagger/v1/swagger.json. Plugins installed on your server add additional endpoints to the Swagger document automatically.
Architecture Decisions
Running BTCPay means managing your own node connections. You can connect to Bitcoin Core for on-chain payments, use Electrum for lightweight syncing, or enable Lightning Network through LND, C-Lightning, or Eclair. Each plugin layer adds complexity but also gives you direct control over confirmation requirements, fee estimation, and routing strategy.
Webhook delivery works through store-level webhook URLs configured in the dashboard. Notifications fire on invoice creation, payment received, expiry, and confirmed states. Unlike hosted gateways, BTCPay does not sign webhook payloads — you verify them against your own invoice data.
Cost Structure
| Component | Cost |
|---|---|
| Platform/software | Free (open-source) |
| Server hosting | $5 – 50/month depending on setup |
| Blockchain transaction fees | Paid to miners/validators |
| Lightning routing fees | Variable, typically fractions of a cent |
This makes BTCPay economically attractive for high-volume merchants who want to eliminate per-transaction processing fees. The trade-off is operational overhead — you handle updates, backups, security hardening, and node maintenance.
Binance Pay
Binance Pay takes a different approach entirely. It is designed as a closed-loop payment system within the Binance ecosystem, optimized for B2C transactions where both merchant and customer operate within or near the Binance platform. The API does not expose the same level of customization as standalone gateways.
API Architecture
Binance Pay Merchant API base URL is https://developers.binance.com/docs/binance-pay. The primary endpoint for creating orders is:
POST /binancepay/openapi/v3/order
Authentication uses OAuth 2.0 for third-party applications combined with API key/signature verification for server-to-server calls. Requests require a nonce, timestamp, and HMAC-SHA256 signature computed from the request body and API secret.
Customers pay by scanning a QR code displayed on your checkout page or by following a deep link that opens the Binance app directly. Over 50 cryptocurrencies are available for customers to select from during checkout. Funds settle into the merchant’s Binance account.
Webhook System
Binance Pay delivers order result notifications through webhooks configured in the merchant dashboard at /dashboard/developers/webhooks. Only order status update notifications are supported currently. Webhook payloads must be verified using the public key obtained from the certificates endpoint, though developers report occasional issues with the 401 response when querying certificate endpoints before proper permission grants are active.
Fees and Limitations
| Feature | Details |
|---|---|
| Payment processing | 0% for standard payments |
| Payouts | 0.8% (capped at $5) |
| Supported coins | 90+ including BTC, ETH, BNB, USDT, USDC |
| KYC required | Yes, business verification |
| Self-hosted option | No |
Binance Pay’s zero-fee structure is compelling, but the ecosystem lock-in is significant. Merchants cannot accept payments outside the Binance framework, and the API lacks features like subscriptions, mass payouts, or non-custodial settlement. Geographic availability also depends on Binance’s licensing in each jurisdiction.
Coinbase Commerce
Coinbase Commerce was long considered the default choice for small merchants entering crypto payments. Its REST API at api.commerce.coinbase.com accepted hundreds of cryptocurrencies via on-chain DEX swaps and settled to USDC or USD. Authentication used an X-CC-Api-Key header with HMAC-SHA256 webhook signatures in the X-CC-Webhook-Signature header. Official SDKs existed for multiple languages, and the flat 1% fee was simple to calculate.
However, Coinbase permanently shut down Commerce for merchants outside the United States and Singapore on March 31, 2026. The service did not support the Lightning Network, and checkout flows were fully controlled by Coinbase’s hosted pages. For merchants in affected regions, this eliminates Coinbase Commerce as an option.
For US and Singapore merchants still operating on the platform, the API behavior remains unchanged, but new merchant onboarding has been restricted. Any existing integrations should plan migration paths as Coinbase’s roadmap for Commerce is unclear.
Integration Comparison
Choosing between these platforms depends on your technical capacity, geographic location, and business model. Here is how they compare across critical integration dimensions.
| Feature | NOWPayments | BTCPay Server | Binance Pay | Coinbase Commerce |
|---|---|---|---|---|
| Model | Hosted, non-custodial | Self-hosted, self-custodial | Hosted, custodial | Hosted, custodial |
| Cryptocurrencies | 350+ | Depends on plugins | 90+ | Hundreds (legacy) |
| API type | REST | REST (Greenfield) | REST | REST (deprecated) |
| Recurring payments | Native API | Plugin-dependent | Not supported | Not supported |
| Platform fees | 0.5 – 1% | 0% | 0% | 1% |
| Subscription support | Yes | Via plugins | No | No |
| Lightning Network | Via conversion partners | Native | No | No |
| Sandbox | Yes | Yes | Limited | Deprecated |
| Geographic availability | Global | Global | Varies | US & Singapore only |
Choosing the Right Platform
Self-hosted merchants who want full sovereignty over their payment flow should evaluate BTCPay Server first. The Greenfield API is well-documented, the OpenAPI spec enables client generation, and there are zero ongoing processing fees. The cost is operational responsibility for node infrastructure and key management.
Merchants who need maximum coin variety without running infrastructure should look at NOWPayments. Its 350+ coin support, native subscription API, and non-custodial settlement options make it practical for global e-commerce and SaaS businesses. The 0.5% fee for same-coin settlements is competitive among hosted providers.
Binance Pay works best when your customer base already uses Binance. The zero processing fee is genuine, and the QR-code/DeepLink checkout flow reduces friction for mobile users. But if your audience spans regions where Binance faces regulatory restrictions, the limited API surface may prove insufficient.
Coinbase Commerce’s regional shutdown removes it from consideration for most merchants worldwide. Existing US and Singapore operators should monitor announcements for any further changes to the product’s availability.
