canton-network-docs/Wallet GatewaySet up & operate
Configure the Wallet Gateway
The Wallet Gateway reads a single JSON configuration file that defines who the Wallet Gateway is,
how it serves requests, where it persists data, and which networks and identity providers it
starts with. This guide covers the file’s structure and the kernel, server, and store
sections. For networks and authentication, see
Networks & identity providers.
For an exhaustive field reference, see the
Configuration reference.
To see the full JSON Schema (useful for validation and IDE autocompletion):
Fill in
Generate a starting point
Write an example configuration you can edit:File structure
The configuration file has five top-level sections:
A minimal configuration for a local setup looks like this:
bootstrap.idps and bootstrap.networks following
Networks & identity providers.
Kernel
Thekernel section identifies this Wallet Gateway instance to dApps.
id(required): a stable, unique identifier, for example"my-gateway-prod".clientType(required):"remote"for a remote Wallet Gateway.publicUrl(optional): the base URL used to redirect clients. If omitted, it is derived from the server host and port. Set this when running behind a reverse proxy or load balancer.
Server
Theserver section configures binding, ports, and API paths.
port(optional, default3030): the port the server binds to. Also used to generate popup URLs in the discovery flow.dappPath(optional, default/api/v0/dapp): the path where dApps connect.userPath(optional, default/api/v0/user): the path used by the User UI and User API.allowedOrigins(optional, default["*"]): CORS allowed origins. In production, list exact origins instead of"*".requestSizeLimit(optional, default"1mb"): maximum request body size.requestRateLimit(optional, default10000): maximum requests per minute per IP (health endpoints excluded).admin(optional): the user ID (JWTsubclaim) granted admin privileges, which allow managing networks and identity providers at runtime. If omitted, network and IDP management is restricted to the bootstrap configuration.
Store
Thestore connection determines where the Wallet Gateway persists sessions, wallet
configurations, networks, identity providers, and in-flight transactions. Three backends are
available:
Signing store
The optionalsigningStore is a secondary database used only when the Wallet Gateway signs
transactions itself (the internal signing provider). It uses the same connection options as
store. Omit it entirely when using a participant node or an external custody provider.
Next steps
Networks & identity providers
Connect to a validator and configure authentication.
Configuration reference
Every field, all auth methods, and per-environment guidance.