Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@
* [Price Rates](tools/price-rates/README.md)
* [Configuration](tools/price-rates/configuration.md)
* [API Reference](tools/price-rates/api-reference.md)
* [Create WDK Module](tools/create-wdk-module.md)

## Resources and Guides

Expand Down
16 changes: 16 additions & 0 deletions overview/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,22 @@ Stay up to date with the latest improvements, new features, and bug fixes across

---

### March 6, 2026

**Changes**
- **wallet-tron**: Fixed case-sensitive address check in `verify`, upgraded TonWeb to v6.2.0 ([v1.0.0-beta.5](https://github.com/tetherto/wdk-wallet-tron/releases/tag/v1.0.0-beta.5))
- **lending-aave-evm**: Security dependency updates ([v1.0.0-beta.4](https://github.com/tetherto/wdk-protocol-lending-aave-evm/releases/tag/v1.0.0-beta.4))
- **wdk**: Security dependency updates ([v1.0.0-beta.6](https://github.com/tetherto/wdk/releases/tag/v1.0.0-beta.6))

---

### March 5, 2026

**What's New**
- **create-wdk-module**: Added documentation for the [`create-wdk-module`](../tools/create-wdk-module.md) CLI scaffolding tool. Updated [Community Modules](../sdk/community-modules/) and [SDK Get Started](../sdk/get-started.md) pages with references to the new tool.

---

### February 26, 2026

**Changes**
Expand Down
14 changes: 8 additions & 6 deletions sdk/community-modules/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,17 @@ Tether and the WDK Team do not endorse or assume responsibility for their code,

## Create Your Own Module

Want to extend WDK with your own custom module? We encourage community contributions!
Want to extend WDK with your own custom module? Use the `create-wdk-module` CLI to scaffold a fully configured project in seconds:

{% hint style="info" %}
**Coming Soon: Custom Module Guide**
{% code title="Scaffold a new module" %}
```bash
npx create-wdk-module@latest
```
{% endcode %}

We're preparing a comprehensive guide on how to create custom WDK modules. Join our [Discord](https://discord.gg/arYXDhHB2w) for updates!
{% endhint %}
The CLI generates source files, tests, TypeScript type definitions, and CI workflows for all five module types (wallet, swap, bridge, lending, fiat). See the [Create WDK Module documentation](../../tools/create-wdk-module.md) for the full guide, CLI options, and generated project structure.

In the meantime, you can:
You can also:

1. **Study existing modules** - Review the source code of official WDK modules on [GitHub](https://github.com/orgs/tetherto/repositories?q=wdk) to understand the patterns and interfaces
2. **Join the community** - Connect with other developers on our [Discord](https://discord.gg/arYXDhHB2w) to discuss your ideas
Expand Down
16 changes: 13 additions & 3 deletions sdk/get-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,16 @@ const swapResult = await wdkWithProtocols.executeProtocol('swap-velora-evm', {

### Creating Custom Modules

{% hint style="success" %}
**Recommended**: Use the `create-wdk-module` CLI to scaffold a new module with all the boilerplate in place:

```bash
npx create-wdk-module@latest
```

See the [Create WDK Module](../tools/create-wdk-module.md) page for the full guide, CLI options, and generated project structure.
{% endhint %}

WDK's modular architecture makes it straightforward to add support for new blockchains or protocols. Each module type has a specific interface that must be implemented.

#### Wallet Module Interface
Expand Down Expand Up @@ -308,9 +318,9 @@ const balance = await customAccount.getBalance()
{% endcode %}


<!-- {% hint style="info" %} -->
<!-- **Learn More**: For detailed information on creating custom modules, check out our [Extender Guide](../extender-guide.md).
{% endhint %} -->
{% hint style="info" %}
**Learn More**: For detailed information on creating custom modules, check out the [Create WDK Module](../tools/create-wdk-module.md) tool and the [Community Modules](../community-modules/) page.
{% endhint %}

***

Expand Down
12 changes: 8 additions & 4 deletions sdk/wallet-modules/wallet-evm-erc-4337/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,15 @@ A simple and secure package to manage ERC-4337 compliant wallets for EVM-compati

## Supported Networks

This package works with any EVM-compatible blockchain, including:
ERC-4337 support depends on the Safe4337Module contract being deployed on the target chain, along with a compatible bundler and paymaster service. The following networks are verified:

- **Ethereum Mainnet**
- **Ethereum Testnets** (Sepolia)
- **Other EVM Chains** (Polygon, Arbitrum, Avalanche C-chain, Plasma etc.)
- **Ethereum Mainnet** (Chain ID: 1)
- **Polygon** (Chain ID: 137)
- **Arbitrum One** (Chain ID: 42161)
- **Plasma** (Chain ID: 9745)
- **Ethereum Sepolia Testnet** (Chain ID: 11155111)

See [Configuration](./configuration.md#verified-supported-networks) for the full compatibility matrix and ready-to-use config examples.

## Next Steps

Expand Down
49 changes: 25 additions & 24 deletions sdk/wallet-modules/wallet-evm-erc-4337/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,9 +98,8 @@ const config = { chainId: 137 }
// Arbitrum One
const config = { chainId: 42161 }

// Avalanche C-Chain
const config = { chainId: 43114 }

// Plasma
const config = { chainId: 9745 }
```

### Provider
Expand Down Expand Up @@ -295,6 +294,28 @@ try {

## Network-Specific Configurations

ERC-4337 account abstraction requires three independent layers on any given chain:

1. **Safe4337Module contract** deployed and registered in `@safe-global/safe-modules-deployments`
2. **Bundler service** (Pimlico or Candide) that supports the chain
3. **Paymaster service** (Pimlico or Candide) that supports the chain

If any layer is missing for a chain, the SDK will fail. The following networks have been verified to support all three layers.

### Verified Supported Networks

| Network | Chain ID | Bundler | Paymaster | Status |
| ------- | -------- | ------- | --------- | ------ |
| Ethereum | 1 | Candide | Candide | Supported |
| Polygon | 137 | Candide | Candide | Supported |
| Arbitrum One | 42161 | Pimlico (public) | Pimlico (public) | Supported |
| Plasma | 9745 | Candide | Candide | Supported |
| Sepolia (testnet) | 11155111 | Pimlico / Candide | Pimlico / Candide | Supported |

{% hint style="danger" %}
**Avalanche C-Chain (43114) is not supported.** The Safe4337Module v0.3.0 contract is not deployed on Avalanche. Attempting to use ERC-4337 on Avalanche will fail with `Safe4337Module not available for chain 43114`.
{% endhint %}

### Ethereum Mainnet


Expand Down Expand Up @@ -329,7 +350,7 @@ const ethereumConfig = {
```javascript
const polygonConfig = {
chainId: 137,
provider: 'https://polygon-rpc.com',
provider: 'https://polygon-bor-rpc.publicnode.com',
bundlerUrl: 'https://api.candide.dev/public/v3/polygon',
paymasterUrl: 'https://api.candide.dev/public/v3/polygon',
paymasterAddress: '0x8b1f6cb5d062aa2ce8d581942bbb960420d875ba',
Expand Down Expand Up @@ -360,32 +381,12 @@ const arbitrumConfig = {
}
```

### Avalanche C-Chain

``` javascript
const avalancheConfig = {
chainId: 43114,
provider: 'https://avalanche-c-chain-rpc.publicnode.com',
bundlerUrl: "https://public.pimlico.io/v2/43114/rpc",
paymasterUrl: "https://public.pimlico.io/v2/43114/rpc",
paymasterAddress: '0x8b1f6cb5d062aa2ce8d581942bbb960420d875ba',
entryPointAddress: '0x0000000071727De22E5E9d8BAf0edAc6f37da032',
safeModulesVersion: '0.3.0',
paymasterToken: {
address: '0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7' // USDT
},
transferMaxFee: 100000 // 100,000 paymaster token units (e.g., 0.1 USDT if 6 decimals)
}
```

### Plasma

```javascript
// Plasma (example Layer 2)
const plasmaConfig = {
chainId: 9745,
provider: 'https://plasma.drpc.org',
// For ERC-4337 support, optional fields:
bundlerUrl: 'https://api.candide.dev/public/v3/9745',
paymasterUrl: 'https://api.candide.dev/public/v3/9745',
paymasterAddress: '0x8b1f6cb5d062aa2ce8d581942bbb960420d875ba',
Expand Down
2 changes: 1 addition & 1 deletion skills/wdk/references/chains.md
Original file line number Diff line number Diff line change
Expand Up @@ -137,4 +137,4 @@ Minimum meaningful amounts below which transactions will fail or be rejected by
Source chains (EVM only): ethereum, arbitrum, polygon, berachain, ink
Destination chains: ethereum, arbitrum, polygon, berachain, ink, ton, tron

ERC-4337 (Account Abstraction) currently supported on: Arbitrum
ERC-4337 (Account Abstraction) verified on: Ethereum (1), Polygon (137), Arbitrum (42161), Plasma (9745), Sepolia (11155111). Avalanche (43114) is NOT supported (Safe4337Module not deployed).
Loading