Skip to content

Create a new wallet

POST
/wallets
curl --request POST \
--url http://localhost:8000/api/v1/wallets \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "client_id": "245cb3df-df3a-428b-a908-e5f74b8d58a3:245cb3df-df3a-428b-a908-e5f74b8d58a4", "name": "Personal Cash", "type": "cash", "description": "Personal cash wallet", "currency": "XAF", "balance": 12, "created_at": "2026-04-15T12:00:00Z", "icon": "example", "icon_type": "example" }'
Media type application/json
object
client_id

Unique identifier for your local client

string format: string
Example
245cb3df-df3a-428b-a908-e5f74b8d58a3:245cb3df-df3a-428b-a908-e5f74b8d58a4
name
required
string
Example
Personal Cash
type
required
string
Example
cash
description
string
Example
Personal cash wallet
currency
required
string
/^[A-Z]{3}$/
Example
XAF
balance
number format: float
Example
12
created_at
string format: date-time
icon

The icon of the wallet (file or icon string)

string
icon_type

The type of the icon (icon or emoji or image)

string

Wallet created successfully

Media type application/json
object
id

ID of the wallet

integer
name

Name of the wallet

string
type

Type of the wallet (bank, cash, credit_card, mobile)

string
description

Description of the wallet

string
currency

Currency of the wallet

string
balance

Balance of the wallet

number format: float
icon

Wallet icon

object
id

ID of the icon

integer
path

Image of the icon

string
type

Type of icon( image or icon or emoji)

string
stats
object
total_income
number format: float
total_expense
number format: float
Example generated
{
"id": 1,
"name": "example",
"type": "example",
"description": "example",
"currency": "example",
"balance": 1,
"icon": {
"id": 1,
"path": "example",
"type": "example"
},
"stats": {
"total_income": 1,
"total_expense": 1
}
}

Invalid input

Unauthorized

Server error