Payments
Crypto Payments API
Accept cryptocurrency payments, create crypto payment links, and process crypto exchanges.
Crypto Payment Link (Production)
POST
ProductionAPI Key
Creates a crypto payment link with wallet address and QR code for customers to send cryptocurrency.
Request Body
json
{
"orderId": "ORD-12345",
"amount": 100.50,
"currency": "USD",
"merchantProfileId": 1,
"cryptoCurrency": "BTC",
"webhookUrl": "https://your-domain.com/webhook"
}Request Parameters
| Parameter | Type | Description |
|---|---|---|
orderIdrequired | string | Unique order identifier |
amountrequired | number | Payment amount (minimum 0.01) |
currencyrequired | string | Currency code (3 letters) |
merchantProfileIdoptional | number | Merchant Profile ID. Defaults to PRIMARY if not provided |
cryptoCurrencyoptional | string | Crypto currency code (BTC, ETH, etc.) |
walletAddressoptional | string | Destination cryptocurrency wallet address where the payment will be sent |
descriptionoptional | string | Payment description |
webhookUrloptional | string | Webhook URL for transaction notifications |
returnUrloptional | string | URL to redirect after payment |
metadataoptional | object | Key-value data returned in webhooks and in the payment object (e.g. internal_ref) |
Success Response
200json
{
"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"
}
}Note
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
ProductionAPI Key
Processes crypto exchange or on-ramp transaction.
Request Body
json
{
"orderId": "ORD-12345",
"amount": 100.50,
"currency": "USD",
"merchantProfileId": 1,
"cryptoCurrency": "BTC",
"webhookUrl": "https://your-domain.com/webhook"
}Crypto Exchange (Sandbox)
POST
SandboxAPI Key
Processes crypto exchange in sandbox mode for testing.
Same request body as production endpoint.
Request Body
json
{
"orderId": "ORD-12345",
"amount": 100.50,
"currency": "USD",
"merchantProfileId": 1,
"cryptoCurrency": "BTC",
"webhookUrl": "https://your-domain.com/webhook"
}Crypto Payin (Production)
POST
ProductionAPI Key
Processes crypto payin transaction.
Request Body
json
{
"orderId": "ORD-12345",
"amount": 100.50,
"currency": "USD",
"merchantProfileId": 1,
"cryptoCurrency": "BTC",
"webhookUrl": "https://your-domain.com/webhook"
}Crypto Payin (Sandbox)
POST
SandboxAPI Key
Processes crypto payin in sandbox mode for testing.
Same request body as production endpoint.
Get Crypto Currencies
POST
ProductionAPI Key
Returns list of supported cryptocurrencies.
Success Response
200json
{
"success": true,
"data": {
"currencies": [
{
"code": "BTC",
"name": "Bitcoin",
"symbol": "₿",
"minAmount": 0.0001
},
{
"code": "ETH",
"name": "Ethereum",
"symbol": "Ξ",
"minAmount": 0.001
}
]
}
}