Skip to main content
Virtual accounts let you provision unique ACH routing and account numbers for each worker’s wallet. External parties (employers, clients, platforms) can fund wallets directly via ACH credit — no payroll required.

Prerequisites

1

Worker wallet set up

The worker must have a User account with a provisioned wallet. See Set Up Worker Wallets.
2

KYC approved

Both identity and address KYC must be approved before you can provision a virtual account. See KYC Verification.
3

Virtual accounts enabled

Work with your account manager to enable virtual accounts for your platform.

Create a Virtual Account

Once KYC is approved, provision a virtual account for the worker’s wallet. The account is created in a Requested state. Cadana submits it to the bank for processing, and it moves to Approved once provisioning is complete.

Retrieve Account Details

Fetch the virtual account details including the routing and account numbers. Response:
{
  "data": [
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef0123456789",
      "currency": "USD",
      "status": "Approved",
      "accountInformation": {
        "accountNumber": "9876543210",
        "routingNumber": "000000000",
        "bankName": "Example Bank",
        "accountName": "John Doe",
        "bankCode": "000000000",
        "countryCode": "US",
        "accountType": "checking"
      },
      "createdTimestamp": 1690339130,
      "lastUpdatedTimestamp": 1690339230
    }
  ]
}
FieldDescription
accountInformation.accountNumberUnique account number for ACH credits
accountInformation.routingNumberBank routing number
accountInformation.bankNameName of the custodial bank
statusRequested, Approved, Rejected, or Deactivated

Fund the Wallet

Once the virtual account is Approved, external parties can send ACH credits to the account number. Funds appear in the worker’s wallet once the transfer settles (typically 1–3 business days for ACH).

Sandbox testing

In sandbox mode, simulate a deposit to test the funding flow without a real ACH transfer. Returns 204 on success. The deposit is reflected in the worker’s wallet balance immediately.

Webhook Events

Subscribe to virtual account events for real-time status updates:
EventDescription
virtual-account.requestedVirtual account is in review
virtual-account.submittedSent to bank for processing
virtual-account.createdAccount is active with full account information
See Events for webhook payloads and Webhooks to configure your endpoint.

Supported Countries

Restricted Virtual account services are available for these jurisdictions with additional monitoring and controls.
CountryISO CodeUS ACH/FedWire
Aland IslandsALAYes
AngolaAGOYes
AntarcticaATAYes
BarbadosBRBYes
BeninBENYes
BoliviaBOLYes
Bouvet IslandBVTYes
British Indian Ocean TerritoryIOTYes
BulgariaBGRYes
Burkina FasoBFAYes
Cabo VerdeCPVYes
CambodiaKHMYes
CameroonCMRYes
Central African RepublicCAFYes
ChadTCDYes
Christmas IslandCXRYes
Cocos (Keeling) IslandsCCKYes
ComorosCOMYes
CongoCOGYes
Cook IslandsCOKYes
Cote d’IvoireCIVYes
DjiboutiDJIYes
Equatorial GuineaGNQYes
EritreaERIYes
EswatiniSWZYes
EthiopiaETHYes
Falkland IslandsFLKYes
Faroe IslandsFROYes
French Southern TerritoriesATFYes
GabonGABYes
GibraltarGIBYes
GuineaGINYes
Heard Island and McDonald IslandsHMDYes
IndonesiaIDNYes
JamaicaJAMYes
KiribatiKIRYes
KuwaitKWTYes
KyrgyzstanKGZYes
Lao PDRLAOYes
LesothoLSOYes
LiberiaLBRYes
MadagascarMDGYes
MaldivesMDVYes
MaliMLIYes
MauritaniaMRTYes
MonacoMCOYes
MontserratMSRYes
NamibiaNAMYes
NigeriaNGAYes
Norfolk IslandNFKYes
PalauPLWYes
PanamaPANYes
Papua New GuineaPNGYes
PhilippinesPHLYes
PitcairnPCNYes
Saint Helena, Ascension and Tristan da CunhaSHNYes
Saint Kitts and NevisKNAYes
Sao Tome and PrincipeSTPYes
SenegalSENYes
Sierra LeoneSLEYes
Solomon IslandsSLBYes
South AfricaZAFYes
South Georgia and the South Sandwich IslandsSGSYes
Sri LankaLKAYes
SurinameSURYes
Svalbard and Jan MayenSJMYes
TajikistanTJKYes
TanzaniaTZAYes
ThailandTHAYes
TogoTGOYes
TokelauTKLYes
TongaTONYes
Trinidad & TobagoTTOYes
TurkeyTURYes
TurkmenistanTKMYes
TuvaluTUVYes
UgandaUGAYes
United Arab EmiratesAREYes
United States Minor Outlying IslandsUMIYes
VanuatuVUTYes
VietnamVNMYes
Virgin Islands (British)VGBYes
Western SaharaESHYes
Standard Virtual account services are available for these jurisdictions with regular monitoring and controls.
CountryISO CodeUS ACH/FedWire
AlbaniaALBYes
American SamoaASMYes
AndorraANDYes
AnguillaAIAYes
Antigua and BarbudaATGYes
ArgentinaARGYes
ArmeniaARMYes
ArubaABWYes
AustraliaAUSYes
AustriaAUTYes
AzerbaijanAZEYes
BahamasBHSYes
BahrainBHRYes
BelgiumBELYes
BelizeBLZYes
BermudaBMUYes
Bonaire, Sint Eustatius and SabaBESYes
Bosnia-HerzegovinaBIHYes
BotswanaBWAYes
BrazilBRAYes
Brunei DarussalamBRNYes
CanadaCANYes
Cayman IslandsCYMYes
ChileCHLYes
ColombiaCOLYes
Costa RicaCRIYes
CroatiaHRVYes
CuracaoCUWYes
CyprusCYPYes
CzechiaCZEYes
DenmarkDNKYes
DominicaDMAYes
Dominican RepublicDOMYes
EcuadorECUYes
EgyptEGYYes
El SalvadorSLVYes
EstoniaESTYes
FijiFJIYes
FinlandFINYes
FranceFRAYes
French GuianaGUFYes
French PolynesiaPYFYes
GambiaGMBYes
GeorgiaGEOYes
GermanyDEUYes
GhanaGHAYes
GreeceGRCYes
GreenlandGRLYes
GrenadaGRDYes
GuadeloupeGLPYes
GuamGUMYes
GuatemalaGTMYes
GuernseyGGYYes
GuyanaGUYYes
Holy SeeVATYes
HondurasHNDYes
Hong KongHKGYes
HungaryHUNYes
IcelandISLYes
IndiaINDYes
IrelandIRLYes
Isle of ManIMNYes
IsraelISRYes
ItalyITAYes
JapanJPNYes
JerseyJEYYes
JordanJORYes
KazakhstanKAZYes
Korea (Republic of)KORYes
LatviaLVAYes
LiechtensteinLIEYes
LithuaniaLTUYes
LuxembourgLUXYes
MacauMACYes
MalawiMWIYes
MalaysiaMYSYes
MaltaMLTYes
Marshall IslandsMHLYes
MartiniqueMTQYes
MauritiusMUSYes
MayotteMYTYes
MexicoMEXYes
MicronesiaFSMYes
MoldovaMDAYes
MongoliaMNGYes
MontenegroMNEYes
NauruNRUYes
NetherlandsNLDYes
New CaledoniaNCLYes
New ZealandNZLYes
NiueNIUYes
Northern Mariana IslandsMNPYes
NorwayNORYes
OmanOMNYes
ParaguayPRYYes
PeruPERYes
PolandPOLYes
PortugalPRTYes
Puerto RicoPRIYes
ReunionREUYes
RomaniaROUYes
RwandaRWAYes
Saint BarthelemyBLMYes
Saint LuciaLCAYes
Saint Martin (French part)MAFYes
Saint Pierre and MiquelonSPMYes
Saint Vincent and the GrenadinesVCTYes
SamoaWSMYes
San MarinoSMRYes
Saudi ArabiaSAUYes
SerbiaSRBYes
SeychellesSYCYes
SingaporeSGPYes
Sint MaartenSXMYes
SlovakiaSVKYes
SloveniaSVNYes
SpainESPYes
SwedenSWEYes
SwitzerlandCHEYes
TaiwanTWNYes
Timor-LesteTLSYes
TunisiaTUNYes
Turks and Caicos IslandsTCAYes
United KingdomGBRYes
United States of AmericaUSAYes
UruguayURYYes
UzbekistanUZBYes
Virgin Islands (U.S.)VIRYes
Wallis and FutunaWLFYes
ZambiaZMBYes

Next Steps

Set Up Worker Wallets

Create Users and complete KYC

Payout

Send funds from wallets to beneficiaries

Payments API Reference

Virtual accounts API documentation