Cryptocurrency Payment Gateway & API

Crypto payments, forwarded to your wallet.

CryptPays helps merchants and developers accept supported cryptocurrency payments through a keyless API. Generate a payment address while CryptPays detects deposits, applies the required confirmation or finality rules, forwards each qualifying payment, and sends a signed callback.

  • Keyless Merchant API
  • RSA-SHA256 signed callbacks
  • Runtime asset discovery
Keyless integrationCreate payment addresses without a merchant API key.
Automatic forwardingRoute qualifying deposits to the configured payout wallet.
Signed deliveryVerify callback authenticity before processing a payment.
Multiple network familiesUse one consistent contract across distinct chain models.

How CryptPays works

A clear path from checkout to confirmed payment

CryptPays handles the blockchain-facing payment lifecycle while your application keeps control of the order, customer experience, and fulfillment decision.

  1. 01

    Choose an enabled asset

    Read the live asset catalog and current metadata instead of maintaining a static list of networks, minimums, or availability.

  2. 02

    Create a payment address

    Send a callback URL and merchant payout address to the create endpoint for the selected canonical ticker.

  3. 03

    Present address_in

    Display the generated deposit address together with the exact network and asset the customer must use.

  4. 04

    Detect an independent deposit

    Each qualifying blockchain deposit becomes its own payment lifecycle; deposits are not combined into an expected order amount.

  5. 05

    Confirm and forward

    CryptPays applies the network's confirmation or finality model and forwards the payment to the configured address_out.

  6. 06

    Verify and fulfill

    Your server verifies the signed confirmed callback, processes the UUID idempotently, fulfills once, and acknowledges with HTTP 200.

Network coverage

One integration across different blockchain models

CryptPays supports enabled assets across EVM, UTXO, Solana and TRON integrations. The live supported-assets catalog is the authority for current availability.

EVM networks

A compatible EVM address can process enabled supported native and token assets across compatible networks. Every deposit remains a separate payment.

Examples: Ethereum, BNB Smart Chain, Polygon

UTXO networks

Bitcoin and other enabled UTXO-family integrations use network-specific addresses, incoming confirmations, and transaction-output identity.

Examples depend on live enablement

Solana & SPL

Enabled native SOL and SPL assets follow Solana's merchant-facing pending-to-final lifecycle while keeping deposits independent.

Finality is reported consistently as 0 or 1

TRON & TRC-20

TRON capability follows the same merchant payment contract, with current assets and networks determined by runtime configuration.

Availability is never inferred from a static list

Stablecoin assets such as USDT can be accepted where the selected network and asset are enabled in the live CryptPays catalog.

View supported assets

Payment infrastructure

Capabilities built around the payment lifecycle

The Merchant API exposes a compact contract while retaining the details needed for secure fulfillment and accounting.

Automatic payment forwarding

Qualifying deposits are forwarded to the merchant payout destination configured when the payment address is created.

Signed callback delivery

RSA-SHA256 signatures and timestamp validation let your server authenticate callbacks before trusting payment fields.

Confirmation and finality handling

Numeric-chain confirmations and Solana finality are normalized into a callback lifecycle your application can process consistently.

Live asset discovery

Public metadata endpoints expose enabled canonical tickers, current minimums, decimals, and asset types at runtime.

Network-aware priority

Where a chain supports it, forwarding priority can be selected explicitly; other integrations retain their safe default behavior.

Per-payment accounting

Confirmed callbacks distinguish the deposit principal, forwarded amount, contracted percentage, and total deduction.

Crypto payment API

A small API surface with verifiable results

The normal Merchant API is keyless. Discover an enabled ticker, request a payment address, present address_in, then verify the signed callback before fulfilling the order.

Use https://api.cryptpays.com/api as the production API base. The complete parameter, response, callback, and error contracts are maintained in the developer documentation.

Create a payment address POST
POST https://api.cryptpays.com/api/bep20_usdt/create

{
  "callback_url": "https://merchant.example/payments/order-123",
  "address_out": "0x1111111111111111111111111111111111111111",
  "post": 1,
  "json": 1
}
Illustrative response 200
{
  "address_in": "0x2222222222222222222222222222222222222222",
  "address_out": "0x1111111111111111111111111111111111111111",
  "callback_url": "https://merchant.example/payments/order-123",
  "priority": "default",
  "minimum_transaction_coin": "1.250000000000000000",
  "status": "success"
}

Signed callbacks

Verify the payment event before you trust it

Every callback carries an RSA-SHA256 signature and Unix timestamp. Your application verifies the exact request bytes and freshness window before parsing or acting on the payload.

  • Confirmation or finality is applied before the confirmed merchant event.
  • A stable lifecycle UUID supports pending-to-confirmed transitions and duplicate-safe fulfillment.
  • Failed delivery is retried on a bounded schedule using the same payment snapshot.
  • Exactly HTTP 200 acknowledges successful handling; the response body is ignored.
Explore payment security
Confirmed callback · illustrative values SIGNED
{
  "uuid": "9ab63121-41f8-4c56-9c28-c78e9b44b487",
  "coin": "bep20_usdt",
  "value_coin": "100.000000000000000000",
  "value_forwarded_coin": "98.300000000000000000",
  "fee": "1.50",
  "fee_coin": "1.700000000000000000",
  "result": "sent",
  "pending": 0
}

Forwarding & accounting

Your wallet destination, one payment at a time

Payments are forwarded to the payout address configured by the merchant rather than maintained as a merchant balance inside CryptPays. Every qualifying deposit is accounted for and delivered through its own payment lifecycle.

That independence applies even when compatible EVM assets share a generated deposit address: separate deposits produce separate forwarding transactions and callback UUIDs.

Confirmed accounting invariant

value_coin value_forwarded_coin fee_coin
fee
The actual contracted CryptPays percentage applied to the payment.
fee_coin
The total deduction, including applicable network-cost recovery as well as commission.

Pricing

Transaction-based fees, reported with the payment

CryptPays supports merchant and callback-domain fee configuration with volume-tier behavior. The confirmed callback reports the actual percentage as fee and the reconciled total deduction as fee_coin.

Review the current standard rolling-volume schedule. Separately agreed commercial terms may apply.

View Pricing

Common questions

Cryptocurrency payment gateway FAQ

Concise answers to the questions merchants and developers typically ask before integrating.

Ask a different question
What is a cryptocurrency payment gateway?

A cryptocurrency payment gateway connects a merchant application to blockchain payment infrastructure. CryptPays generates deposit addresses, detects qualifying payments, applies confirmation or finality rules, forwards funds to the merchant's configured wallet, and reports the result through a signed callback.

Does the CryptPays Merchant API require an API key?

No. The normal Merchant API is keyless. Payment configuration is associated with the exact callback URL and address family, while callbacks are authenticated with CryptPays’ RSA-SHA256 signature rather than a merchant API credential.

Where are customer payments sent?

Each qualifying payment is forwarded to the merchant payout destination supplied as address_out when the payment address is created. CryptPays does not present forwarded payments as a merchant balance held inside the platform.

Which cryptocurrencies and networks can I accept?

CryptPays implements EVM, UTXO, Solana/SPL, and TRON payment integrations. Recognizable examples include Bitcoin, Ethereum, BNB Smart Chain, Polygon, Solana, and TRON, but actual asset availability is determined by the live supported-assets catalog.

Can CryptPays process USDT payments?

Enabled stablecoin assets such as USDT can be processed on networks where they appear in the live catalog. Your checkout should always show the precise network and asset because a token name alone is not enough to identify the correct deposit route.

How does CryptPays decide that a payment is confirmed?

Numeric-confirmation chains use the configured incoming confirmation requirement, subject to platform safety rules. Solana exposes merchant-facing finality as 0 for pending and 1 for confirmed. The confirmed merchant callback uses result=sent and pending=0.

How are payment callbacks secured?

CryptPays signs every callback with RSA-SHA256 and includes a timestamp. Merchants verify the signature over the exact method, host, request target, and raw body before parsing the payload, then apply lifecycle-aware idempotency so a legitimate retry cannot fulfill twice.

How are fees shown for a payment?

The confirmed callback reports fee as the actual contracted percentage and fee_coin as the total deduction. The total may also include applicable miner, network, gas, or rent-related cost recovery, so it should not be treated as percentage commission alone.

Build with the current contract

Start your CryptPays integration

Follow the payment, callback verification, and API reference guides to connect your checkout to supported cryptocurrency payments.