---
title: "Create virtual account"
method: POST
path: "/v1/wallets"
tags: ["Virtual Accounts"]
---

# Create virtual account

`POST /v1/wallets`

## Request body

- CreateWalletRequest
  - `customer` CustomerInput, required
    - `email` string, email, required
    - `firstName` string
    - `lastName` string
    - `phoneNumber` string
  - `currency` 'NGN' | 'KES' | 'ZAR' | 'GHS' | 'XOF' | 'USD', required
  - `accountType` 'INDIVIDUAL' | 'COOPERATE', required
  - `accountCategory` 'VIRTUAL_ACCOUNT' | 'DEDICATED_VIRTUAL_ACCOUNT', required
  - `bank` 'PROVIDUS_BANK' | 'STERLING' | 'VFD' | 'CHOICE' | 'ASSET_MFB'
  - `expiresAt` string — Numeric string between 30 and 4320 minutes.
  - `amount` number
  - `reference` string — Your unique virtual account reference. If omitted, Kyshi generates one.
  - `feeBearer` 'MERCHANT' | 'CUSTOMER'

## Response `201`

Virtual account created.

- VirtualAccountResponse
  - `status` boolean
  - `message` string
  - `code` integer
  - `data` unknown

---

[API](https://skmtc.net/kyshi/apis/kyshi-mor-public-api.md) · [All operations](https://skmtc.net/kyshi/apis/kyshi-mor-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kyshi/kyshi-mor-public-api/revisions/3c46fabe8df7/schema)
