Transfers
Ability to send funds to users or counterparties
Transfers are the mechanism within the Fuze platform for moving funds in a specific currency. This includes an End-Customer moving money to another user, withdrawing to their external bank account, sending cryptocurrency to an external wallet. All these movements, when managed as a direct "Transfer," occur between accounts or wallets of the same currency.
Types of Transfers
Fuze supports different types of transfers for various use cases, all operating on a same-currency basis for the transfer leg itself:
1. Internal Transfers (User-to-User)
- Definition: These are movements of funds (e.g., USD to USD, BTC to BTC) between the internal holdings (wallets or accounts) of two different End-Customers registered within the Fuze platform.
 - Example:
- Alice sends 50 USD from her Internal USD Fiat Account to Bob's Internal USD Fiat Account.
 - Charlie sends 0.1 BTC from his Internal BTC Crypto Wallet to Diana's Internal BTC Crypto Wallet.
 
 - Characteristics: Internal transfers are processed quickly within the Fuze ecosystem and often have lower or no transaction fees compared to external network movements.
 
2. Outbound Transfers (Withdrawals / Payouts)
- Definition: This involves moving funds from an End-Customer's (or your organization's) Internal Crypto Wallet or Internal Fiat Account to a destination outside the Fuze platform, in the same currency as the source internal holding.
 - Destinations: These are External Crypto Wallets or External Fiat Accounts (matching the currency of the transfer) registered and linked to a Counterparty.
 - Characteristics:
- The speed and fees for outbound transfers depend on the external network used.
 - Requires pre-registered, and often verified, external destination details appropriate for the currency being sent.
 
Verify External Destination DetailsFor outbound transfers, ensure the accuracy of the recipient's wallet address/account details for the specific currency and network being transferred. Incorrect details can lead to failed transfers or irreversible loss of funds.
 
Key Elements of a Transfer
Each transfer processed through Fuze has these attributes:
- Source & Destination: Identifies the origin of the funds (e.g., an internal user's specific currency holding) and their destination (e.g., another internal user's holding of the same currency, or an external account/wallet designated for that same currency).
 - Amount & Currency: Specifies the amount and the single currency for the transfer (e.g., 100.00 USD is transferred as 100.00 USD; 0.5 ETH is transferred as 0.5 ETH). Direct transfers do not perform currency conversion.
 - Transaction ID (
transactionId): An identifier generated by Fuze for each transfer attempt. - Status: Transfers have a lifecycle indicated by a status (e.g., 
PENDING,PROCESSING,COMPLETED,FAILED,ACTION_REQUIRED). - Fees: Transfers, especially outbound, may incur fees.
 
Important Note on Currency ConversionThe "Transfer" operation itself is strictly a like-for-like currency movement (e.g., USDT from a USDT source to a USDT destination). If a currency conversion is needed (e.g., a user wants to fund a AED transfer from their USDT balance, or send USDT to have it arrive as AED for the recipient), this involves other Fuze capabilities:
- Trading: Users can first convert currencies within their internal holdings (e.g., trade EUR for USD) and then initiate a same-currency USD transfer.
 - Payments API: For more integrated cross-currency scenarios (e.g., allows customers to pay an invoice in Currency A using funds from Currency B, with automated conversion), the Payments API is designed to handle such flows.
 
The Transfer Lifecycle & Notifications
The lifecycle of a transfer includes these stages:
- Initiation: You initiate a transfer request via the Fuze API.
 - Validation & Processing: Fuze validates the request and starts processing.
 - Asynchronous Updates: Transfers involving external networks are often not instantaneous.
Stay Updated with Webhooks
For real-time notifications on transfer status changes, using Webhooks is recommended.
 - Finality: A transfer reaches a terminal state (
COMPLETEDorFAILED). 
Important Considerations
- Currency and Network Accuracy: For crypto transfers, ensure funds are sent to the correct blockchain network and that the recipient address supports the specific token/currency. For fiat, use the correct currency account.
 - Compliance Screening: Transfers may be subject to compliance screening.
 - Irreversibility: Most completed blockchain transactions and many bank transfers are irreversible.
 
API Interaction (General)
The Fuze API provides endpoints to:
- Initiate various types of same-currency transfers.
 - Estimate potential fees.
 - Retrieve transfer details and status.
 - List historical transfers.
 - Receive notifications via webhooks.
 
Using the Transfers API effectively is important for building same-currency payment functionalities. For cross-currency needs or advanced pay-in reconciliation from third parties, explore the Payments or Trading APIs.
Updated 4 months ago