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 (
COMPLETED
orFAILED
).
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 about 1 month ago