Morpho

This section provides instructions for interacting with the vault and the appropriate functions to use.

circle-info

The guide uses USDC and KPK USDC Prime tokens as examples

Deposit

The Morpho UI will prompt you to execute these transactions in order to deposit USDC into the vault. The approval can be done through Morpho's permit2arrow-up-right or manually

1

Call approve(address, uint256)arrow-up-right on the USDC token.

  • spender(address) = 0x9954aFB60BB5A222714c478ac86990F221788B88, i.e. the Morpho General Adapter

  • value(amount) = token amount to deposit

2

Call multicall(tuple[])arrow-up-right on Morpho: Bundler3.

  • bundle(tuple[]) = The ordered array of calldata to execute, created by the Morpho UI.

Alternatively, you may also deposit USDC in the vault by executing the following transaction order:

1

Call approve(address, uint256)arrow-up-right on USDC token.

  • spender(address) = 0x2C609d9CfC9dda2dB5C128B2a665D921ec53579d, i.e. kpk_USDC_YieldV2

  • value(amount) = token amount to deposit

2

Call deposit(uint256, address)arrow-up-right on kpk_USDC_YieldV2.

  • assets(uint256) = token amount to deposit.

  • receiver(address) = your address, or the address to which you want the receipt tokens sent.

Withdraw

To initiate a withdrawal from the vault, you may utilise either of the following functions:

1

Call withdraw(uint256, address, address)arrow-up-right on kpk_USDC_YieldV2

  • assets(uint256) = USDC tokens to withdraw

  • receiver(address) = your address, or the address to which you want the USDC tokens sent.

  • owner(address) = your address, or the address to which you want the receipt tokens burned from.

Alternatively, you may also call a direct withdrawal from the kpk_USDC_YieldV2 contract:

1

Call redeem(uint256, address, address)arrow-up-right on kpk_USDC_YieldV2.

  • shares(uint256) = kpk_USDC_YieldV2 shares to redeem

  • receiver(address) = your address, or the address to which you want the USDC tokens sent.

  • owner(address) = your address, or the address to which you want the receipt tokens burned from.

Claim rewards

Merkl campaign reward tokens can be claimed through the following action:

  • Call claim()arrow-up-right on Merkl distributor, passing in users, tokens, amounts and merkl proofs suggested by the Merkl UI

Last updated