Slash API: Move Funds Between Accounts
Last updated March 21, 2026
Moving Funds Between Accounts Using the API
Learn how to use the Slash API to programmatically transfer funds between virtual accounts and your primary account.
Overview
Slash's API allows you to automate internal fund movements between accounts in your organization. All transfers are instant and don't incur any fees.
Prerequisites
- An API key with appropriate permissions
- At least two accounts (primary plus one or more virtual accounts)
- Sufficient balance in the source account
Account Structure
- Primary account: Your main Slash account (accountType: "primary")
- Virtual accounts: Sub-accounts (accountType: "default"), each with its own balance and account number
How to Transfer Funds Between Accounts
Step 1: List Your Virtual Accounts
GET /virtual-account
Optionally filter: GET /virtual-account?filter:accountId={accountId}
Step 2: Check Account Balances
GET /account/{accountId}/balance
Step 3: Initiate the Transfer
POST /transfer/virtual-account
Headers: X-Idempotency-Key: {unique-key}
Body: source, destination, amountCents, memo (optional)
Step 4: Confirm the Transfer
A successful response returns a transferId. Verify by checking balances or listing recent transactions.
Common Use Cases
- Funding a Virtual Account from Your Primary Account
- Moving Funds Between Virtual Accounts
- Withdrawing from a Virtual Account to Primary
Error Handling
- 401 Unauthorized: Invalid or missing API key
- 403 Forbidden: Insufficient permissions
- 400 Bad Request: Invalid account IDs or insufficient balance
- 429 Too Many Requests: Rate limit exceeded
Always implement retry logic with exponential backoff for transient errors.
Need More Help?
Contact support at support@joinslash.com or reach out via the in-app chat.
Can’t find what you’re looking for?
Our support team is available 24/7 to help you with any questions.