# Methods

Examples assume:

```python
from tribulnation.sdk import WalletSDK

wallet = WalletSDK.load('sdk.toml')
```
### `deposit_methods`

```python
deposit_methods(*, assets=None) -> Sequence[DepositMethod]
```

Fetch the ways to deposit: one entry per asset and network.

**Args**

- `assets`: Keep methods for these assets only.

<div data-venue="binance" data-venue-name="Binance">

**Binance**

```python
sdk = wallet.venue('binance')
async with sdk:
  methods = await sdk.deposit_methods()
print('binance', len(methods), 'methods')
```

```
binance 2 methods
```

</div><!-- /venue -->

<div data-venue="bit2me" data-venue-name="Bit2Me">

**Bit2Me**

Reads the native per-asset network list.

```python
sdk = wallet.venue('bit2me')
async with sdk:
  methods = await sdk.deposit_methods()
print('bit2me', len(methods), 'methods')
```

```
bit2me 2 methods
```

</div><!-- /venue -->

<div data-venue="bitget" data-venue-name="Bitget">

**Bitget**

```python
sdk = wallet.venue('bitget')
async with sdk:
  methods = await sdk.deposit_methods()
print('bitget', len(methods), 'methods')
```

```
bitget 2 methods
```

</div><!-- /venue -->

<div data-venue="bybit" data-venue-name="Bybit">

**Bybit**

```python
sdk = wallet.venue('bybit')
async with sdk:
  methods = await sdk.deposit_methods()
print('bybit', len(methods), 'methods')
```

```
bybit 2 methods
```

</div><!-- /venue -->

<div data-venue="deribit" data-venue-name="Deribit">

**Deribit**

Public currency metadata; published fees/confirmations are currency-level, not network-specific transaction quotes.

```python
sdk = wallet.venue('deribit')
async with sdk:
  methods = await sdk.deposit_methods()
print('deribit', len(methods), 'methods')
```

```
deribit 2 methods
```

</div><!-- /venue -->

<div data-venue="kucoin" data-venue-name="KuCoin">

**KuCoin**

Enabled chains only; withdrawal fees are published per-chain minimums.

```python
sdk = wallet.venue('kucoin')
async with sdk:
  methods = await sdk.deposit_methods()
print('kucoin', len(methods), 'methods')
```

```
kucoin 2 methods
```

</div><!-- /venue -->

<div data-venue="mexc" data-venue-name="MEXC">

**MEXC**

```python
sdk = wallet.venue('mexc')
async with sdk:
  methods = await sdk.deposit_methods()
print('mexc', len(methods), 'methods')
```

```
mexc 2 methods
```

</div><!-- /venue -->

### `withdrawal_methods`

```python
withdrawal_methods(*, assets=None, networks=None) -> Sequence[WithdrawalMethod]
```

Fetch the ways to withdraw: one entry per asset and network, with its fee.

**Args**

- `assets`: Keep methods for these assets only.
- `networks`: Keep methods on these networks only.

<div data-venue="binance" data-venue-name="Binance">

**Binance**

```python
sdk = wallet.venue('binance')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('binance', len(methods), 'methods')
```

```
binance 2 methods
```

</div><!-- /venue -->

<div data-venue="bit2me" data-venue-name="Bit2Me">

**Bit2Me**

Requires configured quote_addresses for live proforma fees; only configured destinations are quoted.

```python
sdk = wallet.venue('bit2me')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('bit2me', len(methods), 'methods')
```

```
bit2me 2 methods
```

</div><!-- /venue -->

<div data-venue="bitget" data-venue-name="Bitget">

**Bitget**

```python
sdk = wallet.venue('bitget')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('bitget', len(methods), 'methods')
```

```
bitget 2 methods
```

</div><!-- /venue -->

<div data-venue="bybit" data-venue-name="Bybit">

**Bybit**

```python
sdk = wallet.venue('bybit')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('bybit', len(methods), 'methods')
```

```
bybit 2 methods
```

</div><!-- /venue -->

<div data-venue="deribit" data-venue-name="Deribit">

**Deribit**

Public currency metadata; published fees/confirmations are currency-level, not network-specific transaction quotes.

```python
sdk = wallet.venue('deribit')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('deribit', len(methods), 'methods')
```

```
deribit 2 methods
```

</div><!-- /venue -->

<div data-venue="kraken" data-venue-name="Kraken">

**Kraken**

Native display network names and flat fees. Deposit methods are not implemented.

```python
sdk = wallet.venue('kraken')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('kraken', len(methods), 'methods')
```

```
kraken 2 methods
```

</div><!-- /venue -->

<div data-venue="kucoin" data-venue-name="KuCoin">

**KuCoin**

Enabled chains only; withdrawal fees are published per-chain minimums.

```python
sdk = wallet.venue('kucoin')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('kucoin', len(methods), 'methods')
```

```
kucoin 2 methods
```

</div><!-- /venue -->

<div data-venue="mexc" data-venue-name="MEXC">

**MEXC**

```python
sdk = wallet.venue('mexc')
async with sdk:
  methods = await sdk.withdrawal_methods()
print('mexc', len(methods), 'methods')
```

```
mexc 2 methods
```

</div><!-- /venue -->
