Skip to main content

Use Case

Quickly spin up named virtual fiat bank accounts for your users. All incoming funds are immediately auto-minted to local currency stablecoins and delivered to users’ self custodial wallets linked to Iron. Upside of instant minting is that no customer funds are kept in banks but in fiat-backed stablecoins. We are also working on tokenized RWAs as an auto reserve asset. Typical use cases:
  • Freelancers in non-EU countries require EU banking detail
  • Banking apps want to issue multi-currency accounts without banking credit risk
  • Crypto wallets (e.g. Phantom, Squads, Safe) to offer named wallet IBANs / ACH to their users

Example Flow

1
User sets up a vIBAN account on Iron
2
User gets EUR account credentials
3
User transfers EUR from their banking app or can receive them from third parties
4
We turn EUR into EURC and deliver them instantly to the user’s self-custodial wallet
A huge upside of this bank account design is that users may also setup an account with European bank credentials, but funds are autoramped into a USD-based stablecoin such as USDC.

Understanding Virtual IBANs (VIBANs)

Virtual IBANs (VIBANs) function as payment target addresses rather than accounts for holding funds. They are designed for efficient payment routing and reconciliation but come with important considerations for proper use.

Key Points to Remember:

  • Payment Routing Only: VIBANs are not intended for holding funds. Once a payment is received, it will be processed according to your configured settings.
  • Whitelisted Addresses: Only payments from whitelisted addresses are accepted. Ensure the sender’s address is properly added to the whitelist before initiating a transaction.
  • Failed Transactions: If a transaction fails due to incorrect details or other issues, the funds will automatically be returned to the sender.
  • Non-Whitelisted Payments: Payments originating from non-whitelisted addresses will also be rejected, and the funds will be sent back to the source. <link to doc>

Implementation

Follow these example steps to integrate create an autoramp logic for EUR to USDC on Solana.

Request

curl -X POST "https://api.sandbox.iron.xyz/api/autoramps" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "IDEMPOTENCY-KEY: &lt;your-idempotency-key&gt;" \
  -H "X-API-Key: &lt;your-api-key&gt;" \
  -d '{
    "source_currency": {
      "type": "Fiat",
      "code": "EUR"
    },
    "destination_currency": {
      "type": "Crypto",
      "token": "EURC",
      "blockchain": "Ethereum"
    },
    "recipient_account": {
      "type": "Wallet",
      "blockchain": "Ethereum",
      "address": "tonyssavings.eth"
    },
    "customer_id": "123e4567-e89b-12d3-a456-426614174000"
  }'

Response

{
  "id": "d3c2b1a4-e5f6-78g9-0123-fedcba654321",
  "status": "Created",
  "deposit_account": {
    "type": "Iban",
    "id": "xyz98765-lkjh-4321-mnop-0987654321ab",
    "iban": "DE89370400440532013000",
    "name": "Tony Hawk",
    "bic": "COBADEFFXXX",
    "bank_name": "Good Bank",
    "bank_country": "Germany",
    "currency": {
      "code": "EUR"
    }
  },
  "created_at": "2025-01-20T14:45:12Z"
}
Now you are ready to show the user their bank credentials. Please note that vIBANs are named. No specific deposit instructions are required. Related Guide: For more details, refer to the API Reference Documentation.