---
# System prepended metadata

title: VSC Minimum Viable Integration

---

# VSC Minimum Viable Integration

MVP Integration of the VSC network's wallet features



## Deposit

Depositing Hive or HBD to VSC is as simple as sending Hive to [@vsc.gateway](https://hivehub.dev/@vsc.gateway)

**Example #1:**

![image](https://hackmd.io/_uploads/B1ecolU0Jl.png)

Transfering with no mamo

**Example #2**

![image](https://hackmd.io/_uploads/SkB2olLRJl.png)

Transferring Hive to a different Hive account (@vaultec-scc) on VSC

**Example #3**

![image](https://hackmd.io/_uploads/SJLZngUCke.png)

Transferring Hive to an Ethereum wallet address on VSC


Memo options listed above can be serialized as JSON, shown above as URL encoded params.


## Withdrawal

Golang Definition
```go=
type TxVSCTransfer struct {
	NetId string `json:"net_id"`

	From   string `json:"from"`
	To     string `json:"to"`
	Amount string `json:"amount"`
	Asset  string `json:"asset"`
	Memo   string `json:"memo"`
}
```

`custom_json.id = "vsc.withdraw"`

**Example #1**

![image](https://hackmd.io/_uploads/r10SagURkl.png)
https://hivehub.dev/tx/eba71257a342b224812501b19353caca8cc6bdfa

Output from the above transaction would produce something similar to:

![image](https://hackmd.io/_uploads/HyetTeUAkg.png)
https://hivehub.dev/tx/69b7dd74e29f2f6442c9b9dd9e2901a980e75e61



## Transfer

Golang Definition
```go=
type TxVSCWithdraw struct {
	NetId string `json:"net_id"`

	From   string `json:"from"`
	To     string `json:"to"`
	Amount string `json:"amount"`
	Asset  string `json:"asset"`
	Memo   string `json:"memo"`
}
```

`custom_json.id = "vsc.transfer"`


**Example #1**

![image](https://hackmd.io/_uploads/r1Y2Tl8AJl.png)
https://hivehub.dev/tx/2ae9992d8af23e302d8fc269a9128630a3ce1ec8

## Stake/Unstake HBD
Golang Definition
```go=
type TxStakeHbd struct {
	From   string `json:"from"`
	To     string `json:"to"`
	Amount string `json:"amount"`
	Asset  string `json:"asset"`
	Typei  string `json:"type"`

	NetId string `json:"net_id"`
}
type TxUnstakeHbd struct {
	From   string `json:"from"`
	To     string `json:"to"`
	Amount string `json:"amount"`
	Asset  string `json:"asset"`
	NetId  string `json:"net_id"`
}
```
`custom_json.id = "vsc.stake_hbd"`
`custom_json.id = "vsc.unstake_hbd"`

**Example #1 (staking)**

![image](https://hackmd.io/_uploads/ryxTiAxIRJe.png)

https://hivehub.dev/tx/800671aea9332715657d5a22a725fdf096a9d344



## Consensus stake/unstake (optional)

```go=
type TxConsensusStake struct {
	From   string `json:"from"`
	To     string `json:"to"`
	Amount string `json:"amount"`
	Asset  string `json:"asset"`
	NetId  string `json:"net_id"`
}
```


## Confirming output


This section will be filled out in the near future once available.