Skip to content

Wallets API

Create, list, rename, and delete wallets via the LNbits REST API.

Get Wallet Details

GET /api/v1/wallet

Auth: Invoice key or Admin key

Get details of the wallet associated with the provided API key.

Parameters

None - the wallet is identified by the API key.

Response 200

FieldTypeDescription
idstringWallet UUID
namestringWallet name
balanceintegerBalance in millisatoshis (divide by 1000 for sats)
adminkeystringAdmin API key
inkeystringInvoice (read-only) API key
currencystringDisplay currency (if set)
json
{
  "id": "wallet-uuid",
  "name": "My Wallet",
  "balance": 50000,
  "adminkey": "a1b2c3d4e5f6...",
  "inkey": "f6e5d4c3b2a1..."
}

TIP

The balance is in millisatoshis. Divide by 1000 for satoshis.

List All Wallets

GET /api/v1/wallets

Auth: Bearer token

List all wallets for the authenticated user.

Parameters

None.

Response 200

Array of wallet objects:

FieldTypeDescription
idstringWallet UUID
namestringWallet name
balanceintegerBalance in millisatoshis
json
[
  {
    "id": "wallet-1",
    "name": "Daily Spending",
    "balance": 50000
  },
  {
    "id": "wallet-2",
    "name": "Shop Revenue",
    "balance": 120000
  }
]

List Wallets (Paginated)

GET /api/v1/wallet/paginated

Auth: Bearer token

List wallets with pagination and search.

Parameters

FieldTypeRequiredDescription
limitinteger (query)NoItems per page (default 20, max 100)
offsetinteger (query)NoNumber of items to skip
searchstring (query)NoFilter wallets by name

Response 200

FieldTypeDescription
dataarrayArray of wallet objects
totalintegerTotal number of wallets
json
{
  "data": [
    {
      "id": "wallet-1",
      "name": "Daily Spending",
      "balance": 50000
    }
  ],
  "total": 5
}

Update Wallet

PUT /api/v1/wallet

Auth: Admin key

Update the wallet name or display currency.

Parameters

FieldTypeRequiredDescription
namestringNoNew wallet name
currencystringNoDisplay currency code (e.g. "USD")

Response 200

FieldTypeDescription
idstringWallet UUID
namestringUpdated name
balanceintegerBalance in millisatoshis
currencystringDisplay currency
json
{
  "id": "wallet-uuid",
  "name": "New Name",
  "balance": 50000,
  "currency": "USD"
}

Delete Wallet

DELETE /api/v1/wallet

Auth: Admin key

Destructive Operation

This permanently deletes the wallet and all its payment history. The balance is lost. This action cannot be undone.

Parameters

None - the wallet is identified by the API key.

Response 200

json
{
  "detail": "Wallet deleted"
}

Send Share Invitation

PUT /api/v1/wallet/share/invite

Auth: Admin key

Invite another user to share access to this wallet with specific permissions.

Parameters

FieldTypeRequiredDescription
user_idstringYesTarget user UUID
permissionsstring[]YesPermission list (e.g. ["VIEW_PAYMENTS", "RECEIVE_PAYMENTS"])

Response 200

FieldTypeDescription
idstringShare request UUID
wallet_idstringWallet being shared
user_idstringInvited user
permissionsstring[]Granted permissions
json
{
  "id": "request-uuid",
  "wallet_id": "wallet-uuid",
  "user_id": "target-user-uuid",
  "permissions": ["VIEW_PAYMENTS", "RECEIVE_PAYMENTS"]
}

Accept Share Invitation

PUT /api/v1/wallet/share

Auth: Bearer token

Accept a pending wallet share invitation.

Parameters

FieldTypeRequiredDescription
share_request_idstringYesShare request UUID from the invitation

Response 200

json
{
  "detail": "Wallet shared successfully"
}

Reject Share Invitation

DELETE /api/v1/wallet/share/invite/{share_request_id}

Auth: Bearer token

Reject a pending wallet share invitation.

Parameters

FieldTypeRequiredDescription
share_request_idstring (path)YesShare request UUID

Response 200

json
{
  "detail": "Share invitation rejected"
}

News · Shop · SaaS · Telegram · Released under the MIT License.