Skip to main content
This is the shortest path to a running Wallet Gateway: install it, generate a configuration file, start it against a Canton network, and confirm its three endpoints respond. It targets a local setup you can adapt to your own validator.
You need Node.js (tested with v24) and access to a Canton network’s Ledger API. For a fully local target, run a Splice LocalNet.
1

Install the Wallet Gateway

Install globally with npm:
Or run it without installing, using npx:
npx downloads and runs the latest version each time, which is useful for one-off runs.
2

Generate a configuration file

Write an example configuration you can edit:
The example targets a Splice LocalNet with SQLite storage and a mock OAuth identity provider.
3

Edit the configuration

Open config.json and set, at minimum:
  • Store: where the Wallet Gateway persists data (memory, sqlite, or postgres).
  • Networks: at least one Canton network with its Ledger API baseUrl.
  • Identity providers: how users authenticate against those networks.
See Configure the Wallet Gateway for every option, and Networks & identity providers to wire up authentication.
4

Start the Wallet Gateway

Override the port with -p if needed:
5

Verify it is running

The Wallet Gateway exposes three endpoints (default port 3030):
  • User UI: http://localhost:3030
  • dApp API: http://localhost:3030/api/v0/dapp
  • User API: http://localhost:3030/api/v0/user
Open the User UI in your browser to confirm the Wallet Gateway is up.

Command-line options

The --config-schema output is a complete JSON Schema you can use for validation and IDE autocompletion.

Next steps

Configure the Wallet Gateway

All configuration options for kernel, server, and store.

Networks & identity providers

Connect to a validator and set up authentication.

Manage wallets

Create and manage wallets through the User UI or User API.

Deploy

Run the Wallet Gateway with Docker or Helm.