***
title: Transak Stream - On Ramp
slug: products/transak-stream-on-ramp
subtitle: Turn fiat into crypto automatically with virtual bank accounts
------------------------------------------------------------------------
## Overview
Transak Stream – On-Ramp makes it easy to turn **fiat money into crypto automatically.** When funds are sent to a virtual bank account, Transak converts them into crypto and delivers the assets directly to a predefined wallet—no user action needed at the time.
Transak handles everything behind the scenes: providing local virtual bank accounts, tracking incoming payments, converting funds to crypto, and offering simple APIs so partners can easily manage transactions and reconciliation.
**Ideal for** — Payroll platforms, fintech companies, and wallets that want a seamless **fiat in → crypto out** experience running in the background, instead of a one-time checkout flow.
## Key Characteristics & Features
Virtual bank accounts per user
Create named VBAs in supported fiat currencies (EUR, GBP, USD, INR, etc). Each VBA is linked to a specific wallet address, crypto asset, and network to define how incoming fiat should be converted.
Automatic on-ramp order creation
When fiat is received into a VBA, Transak automatically creates an on-ramp order, generates a quote, reserves the wallet, and dispatches crypto to the configured wallet.
Risk, compliance, and limits
Standard KYC is required for end users. Stream On-Ramp is explicitly scoped to bank transfers and excludes direct B2C app flows.
## How the flow works
The partner ensures the user is authenticated and verified. This includes user authentication and completion of required KYC checks, either directly through Transak or via supported reliance mechanisms.
Partner can create a Virtual Bank Account (VBA) that is assigned to the user and mapped to a predefined crypto destination, including the wallet address, asset, and network.
The Partner/User needs to send fiat to the assigned **Virtual bank account** using a standard bank transfer method supported in their region (SEPA, Faster Payments, ACH, wire, IMPS, etc).
Once the payment is received and confirmed, Transak automatically converts the fiat amount into the configured crypto asset and sends it to the mapped wallet address.
## What are the use cases?
The user or partner provider wants payouts in stablecoins, but the entity and provider do not want to touch crypto or overhaul payroll systems.
Configure payout
User configures a crypto payout method (token, chain, wallet) once in the partner UI.
Create VBA
Transak creates an employee-named VBA in local contract currency (EUR, GBP, USD, INR, etc) via Stream On-Ramp.
Send salary
User sends salary to that VBA as usual. Transak auto-converts the configured portion to stablecoin (e.g., USDC on Base) and sends it on-chain to the user's wallet address created through Transak.
Track orders
Partner receives webhooks with status, tx hash, and reporting fields for order tracking.
Streamed deposits
Wallets or exchanges can offer "streamed deposits" where users receive regular bank transfers into a VBA.
Automatic accumulation
Crypto automatically accumulates in the user's self-custodial or exchange wallet without having to initiate each purchase.
## How to integrate?
| Action |
| ---------------------------------------------------------------------------------------------------------------------- |
| Follow the steps in the [Need help in Integration](/getting-started/help-and-support#need-help-in-integration) section |
| Request **API key whitelisting** and ask to **enable Transak Stream – On-Ramp** for your API key |
| Share your public IP addresses with Transak for whitelisting to use our APIs in your backend |
You can use either of the following authentication options:
| Option | Description |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **White-label Auth** | Use the standard Transak authentication flow to generate a user access token. Partners can do this by calling the [Send User OTP API](/api/whitelabel/user/send-user-otp) followed by the [Verify User API](/api/whitelabel/user/verify-user-otp) to generate the access token.
|
| **Auth Reliance** | Use [Auth Reliance](/features/auth-reliance) by passing these headers with every request: `x-user-identifier` and `x-access-token` |
Please refer to the tutorial on [how to create partner access token](/guides/how-to-create-partner-access-token).
KYC is a mandatory step in compliance with regulatory requirements. Each user should be **Standard KYC Approved** before the creation of Virtual Bank Account. You can use either of the following KYC options:
| Option | Description |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **White label KYC** | Partners can collect the required KYC information on their end and then forward it to Transak for review and approval. Learn more: [Whitelabel KYC](/integration/api#kyc) |
| **KYC Reliance via Sumsub** | Partners can share their KYC data from their platform with Transak using Sumsub. Learn more: [KYC Reliance Guide](/features/kyc-reliance-sumsub) |
Call the [Create VBA API](/api/stream-on-ramp/create-virtual-bank-account) to generate a virtual bank account that is linked to a crypto wallet.
Use the virtual bank account details to send fiat payments. Incoming funds are automatically converted to crypto and sent to the linked wallet.
## Integration Options
Transak Stream – On-Ramp is an API-only product. Integrate via our backend APIs:
Integrate our APIs in your backend to build a fully custom UI and user journey.
## Supported Fiat Currencies
Virtual bank accounts can only be created for the following fiat currencies and supported payment methods:
| Fiat Currency | Payment Methods |
| ------------------------------------------- | -------------------------------- |
| EUR | SEPA/SEPA Instant Bank Transfers |
| GBP | Faster Payments |
| INR | IMPS, NEFT, RTGS |
| USD | Wire, ACH (Coming Soon) |
## API Overview
Creates a VBA that auto-converts fiat to crypto and sends to a predefined wallet.
Retrieves all partner VBAs with status and configuration.
Fetches details for a specific VBA by ID.
Updates wallet, network, and currency for an existing VBA.
Deactivates a VBA so it no longer accepts payments.
Creates a new remitter (INR) bank account for payouts. INR only.
Updates an existing remitter (INR) bank account. INR only.
Transak Stream - On-Ramp APIs are to be called only from the partner backend and subjected to the whitelisting of partner IP addresses. Direct API calls from the frontend apps are not supported.