Skip to main content

Overview

Accept cryptocurrency deposits and send fiat payments via SWIFT wire transfer to any bank account globally.

How It Works

  1. Create transfer - Specify crypto source and SWIFT destination
  2. Get deposit instructions - Receive wallet address and amount
  3. Send crypto - Customer deposits to the provided address
  4. Receive fiat - Funds arrive via SWIFT wire transfer

Prerequisites

  • Verified customer (KYB/KYC completed)
  • External bank account configured for SWIFT
  • Supported stablecoins: USDC, USDT, PYUSD

Bank Account Setup

Creating a SWIFT Transfer

To initiate a crypto-to-SWIFT transfer, you can specify the source in multiple ways:

Response

The destinationAmount is calculated after the crypto deposit is confirmed, based on current exchange rates and applicable fees.

Deposit Instructions

The transfer response includes deposit instructions with:
  • toAddress - Destination wallet address
  • amount - Amount as a MoneyOutput object (see Currency Amount Format)
  • paymentRail - Blockchain network

Transfer States

SWIFT transfers progress through several states: Once the crypto deposit is confirmed, status is no longer PENDING. A compliance or missing-document hold is IN_REVIEW. Otherwise the transfer is PROCESSING. A confirmed deposit is not still waiting for funds.

Monitoring Transfer Status

Poll the transfer status to track progress:
Check the transfer status endpoint to monitor progress. When completed, the response includes the final destination amount, bank reference, and SWIFT tracking UETR.

Webhooks

Configure webhooks to receive real-time updates:

Processing Timeline

  • Crypto confirmation: 12+ confirmations on Ethereum (~3 minutes)
  • Processing time: 1-2 business hours during business days
  • SWIFT delivery: 1-3 business days depending on destination

Common Errors

Failed transfers include a failureReason in the metadata:
  • Insufficient deposit - Amount received doesn’t match expected
  • Invalid beneficiary - Incorrect SWIFT/IBAN details
  • Compliance rejection - Transfer blocked by compliance checks

Sandbox Testing

  • Use test wallet addresses from deposit instructions
  • Test with simulated crypto deposits
  • Validate using sandbox bank details

Features

  • Real-time tracking with SWIFT UETR
  • Same-day processing available

Support

For any assistance, reach out to us via Slack or contact: