App manifest
App manifest is a small JSON file that lets wallets discover information about your dApp. It should be namedtonconnect-manifest.json and correspond to the following definition.
Here is a generic example of an app manifest:
https://[myapp.com]/tonconnect-manifest.json so that wallets can fetch it with a simple GET request.
Wallet manifest
Wallet manifest is a JSON configuration that defines how your wallet interacts with the TON Connect. Here is an example of a custodian manifest:Primary properties
-
app_name: A unique identifier for the wallet. This string should be lowercase, without spaces or special characters. It will be used as an identifier in connection events and must match theConnectEventSuccess.device.appNamevalue. -
name: The display name of the wallet that will be shown to users in dApp interfaces. For your custodian, simply use “[Custodian]” or “[Custodian] Wallet” as appropriate. -
image: A URL pointing to the wallet’s icon. This should be a high-quality image with the following specifications:- Resolution: 288×288 pixels
- Background: Non-transparent
- Corners: Non-rounded
- Format: PNG
https://wallet.tg/images/logo-288.pnghttps://tonkeeper.com/assets/tonconnect-icon.png
Connection properties
-
about_url: A URL to the wallet information or landing page. This helps new TON users learn about your wallet. -
universal_url: The base part of the wallet’s universal URL that will handle TON Connect parameters. This is a critical component for enabling connections via universal links. For your custodian, this could be something likehttps://wallet.[custodian].com/ton-connect. -
bridge: An array specifying connectivity options between dApps and the wallet.-
HTTP bridge setups should include:
There,
urlpoints to the publicly exposed bridge. -
JavaScript bridge setups should include:
In the above,
keypoints to the property name within thewindowobject on the same web page.
-
HTTP bridge setups should include:
Platform and feature support
-
platforms: An array listing all platforms where the wallet is available. This can include any of the following values:"ios","android","chrome","firefox","safari","windows","macos","linux","web". Include only the platforms that you actually support. -
features: This section defines the capabilities of the wallet:name: Currently, only “SendTransaction” is defined in the protocol.maxMessages: The maximum number of messages the wallet can sign in a single transaction (4 is standard for many wallets).extraCurrencySupported: Whether the wallet supports additional currencies beyond TON. Set tofalseinitially; you can update this later if you add support.