Crypto Payments API

Accept cryptocurrency payments, create crypto payment links, and process crypto exchanges.

Crypto Payment Link (Production)

POST/api/v1/production/crypto/payment-link
Requires API Key

Creates a crypto payment link with wallet address and QR code for customers to send cryptocurrency.

Request Body

{
  "orderId": "ORD-12345",
  "amount": 100.50,
  "currency": "USD",
  "merchantProfileId": 1,
  "cryptoCurrency": "BTC",
  "webhookUrl": "https://your-domain.com/webhook"
}

Request Parameters

ParameterTypeRequiredDescription
orderIdstringYesUnique order identifier
amountnumberYesPayment amount (minimum 0.01)
currencystringYesCurrency code (3 letters)
merchantProfileIdnumberNoMerchant Profile ID. Defaults to PRIMARY if not provided
cryptoCurrencystringNoCrypto currency code (BTC, ETH, etc.)
webhookUrlstringNoWebhook URL for transaction notifications

Success Response

200
{
  "success": true,
  "data": {
    "paymentLinkId": "CRYPTO-LINK-20240101-ABC123",
    "paymentLink": "https://pay.finvypay.com/crypto/CRYPTO-LINK-20240101-ABC123",
    "walletAddress": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
    "qrCode": "https://pay.finvypay.com/qr/CRYPTO-LINK-20240101-ABC123",
    "cryptoAmount": 0.0025,
    "cryptoCurrency": "BTC",
    "amount": 100.5,
    "currency": "USD"
  }
}
Share the paymentLink or qrCode with your customer. They can send cryptocurrency to the provided walletAddress to complete the payment.

Crypto Exchange/On-Ramp (Production)

POST/api/v1/production/crypto
Requires API Key

Processes crypto exchange or on-ramp transaction.

Request Body

{
  "orderId": "ORD-12345",
  "amount": 100.50,
  "currency": "USD",
  "merchantProfileId": 1,
  "cryptoCurrency": "BTC",
  "webhookUrl": "https://your-domain.com/webhook"
}

Crypto Exchange (Sandbox)

POST/api/v1/sandbox/crypto
Requires API Key

Processes crypto exchange in sandbox mode for testing.

Request Body

Same request body as production endpoint.

{
  "orderId": "ORD-12345",
  "amount": 100.50,
  "currency": "USD",
  "merchantProfileId": 1,
  "cryptoCurrency": "BTC",
  "webhookUrl": "https://your-domain.com/webhook"
}

Crypto Payin (Production)

POST/api/v1/production/crypto/payin
Requires API Key

Processes crypto payin transaction.

Request Body

{
  "orderId": "ORD-12345",
  "amount": 100.50,
  "currency": "USD",
  "merchantProfileId": 1,
  "cryptoCurrency": "BTC",
  "webhookUrl": "https://your-domain.com/webhook"
}

Crypto Payin (Sandbox)

POST/api/v1/sandbox/crypto/payin
Requires API Key

Processes crypto payin in sandbox mode for testing.

Request Body

Same request body as production endpoint.

Get Crypto Currencies

POST/api/v1/production/crypto/currencies
Requires API Key

Returns list of supported cryptocurrencies.

Success Response

200
{
  "success": true,
  "data": {
    "currencies": [
      {
        "code": "BTC",
        "name": "Bitcoin",
        "symbol": "₿",
        "minAmount": 0.0001
      },
      {
        "code": "ETH",
        "name": "Ethereum",
        "symbol": "Ξ",
        "minAmount": 0.001
      }
    ]
  }
}