Slash API: Create and Manage Virtual Accounts
Last updated April 9, 2026
Overview
Virtual accounts let you organize funds within your Slash account. Think of them as sub-wallets under your primary account, each with its own name, balance, and unique account and routing numbers. Using the Slash API, you can programmatically create virtual accounts, check balances, transfer funds between them, and set up automatic commission rules.
Before you begin, you'll need API access enabled on your account and a valid API key.
Key Concepts
- Primary Account — Your main Slash account. In API responses, this appears as a virtual account with
accountType: "primary". - Virtual Account — A sub-account under your primary account, with
accountType: "default". Each has its own balance, account number, and routing number. - Commission Rules — Optional rules that automatically divert a portion of funds from a virtual account to your primary account.
Creating a Virtual Account
Step 1: Get Your Account ID
First, retrieve your account ID by calling GET /account. You'll need this when creating the virtual account.
Step 2: Create the Virtual Account
Send a POST request to /virtual-account with your accountId and a name for the new account. You can optionally include commissionDetails to set up automatic fund diversion (see Commission Rules below).
Managing Virtual Accounts
- List all virtual accounts:
GET /virtual-account— You can filter by parent account with?filter:accountId={your_account_id}. - Get a single virtual account:
GET /virtual-account/{virtualAccountId} - Update a virtual account:
PATCH /virtual-account/{virtualAccountId}— Setactionto"update"and include the fields you want to change (name,commissionDetails). - Close a virtual account:
PATCH /virtual-account/{virtualAccountId}— Setactionto"close".
Transferring Funds Between Virtual Accounts
Use POST /transfer/virtual-account to move money between any two virtual accounts (including your primary account). Provide the source and destination virtual account IDs, the amountCents, and an X-Idempotency-Key header to prevent duplicate transfers. You can also include an optional memo (up to 255 characters).
Setting Up Commission Rules
Commission rules automatically divert a portion of funds from a virtual account to your primary account. You can set these up when creating a virtual account or add them later via an update. There are two types:
- Take Rate (percentage-based) — Automatically diverts a percentage of incoming funds to your primary account.
- Flat Fee — Diverts a fixed amount on a recurring schedule (monthly or yearly).
Need More Help?
For the full API reference, visit https://api.joinslash.com/openapi. You can also reach us through the in-app chat in your Slash dashboard or email support@slash.com.
Can’t find what you’re looking for?
Our support team is available 24/7 to help you with any questions.