> For the complete documentation index, see [llms.txt](https://strobe-protocol.gitbook.io/strobe-protocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://strobe-protocol.gitbook.io/strobe-protocol/money-market/architecture/deposit-and-repayment.md).

# Deposit and repayment

<figure><img src="/files/5z0rpX2PDibgN3k388Av" alt=""><figcaption></figcaption></figure>

## Flow

Both deposit and repayment transactions will work in the similar technical flows as described below:

1. At first, user will send a [payment transaction](https://xrpl.org/docs/references/protocol/transactions/types/payment) to the Axelar multisig account on XRPL. The sent amount, gas fee amount, payload, destination address, destination chain, will be included in the [memos field](https://xrpl.org/docs/references/protocol/transactions/common-fields#memos-field) of the transaction. In particular, the memo data representing the payload will contain information about the user action. In this case, it will either be deposit or repayment.
2. The XRPL <-> Axelar [relayer](https://docs.axelar.dev/dev/amplifier/roadmap/#phase-5-amplifier-connected-chains-have-their-own-relayers) will pick up the payment transaction to the Axelar multisig account, and forward the payload to [Axelar's blockchain](https://github.com/axelarnetwork/axelar-core).  The GMP call is confirmed, approved, and executed on Axelar. At this point, user's funds are locked within the Axelar multisig account.
3. The EVM Sidechain <-> Axelar relayer will approve and execute the message. When the message is executed, [Axelar's ITS contract will add to the balance of Strobe's core contract, and call `executeWithInterchainToken` method of Strobe's core contract](https://github.com/axelarnetwork/interchain-token-service/blob/94677f1072da127a0ee7ff5ab6784dcfe11789e8/contracts/InterchainTokenService.sol#L732) that inherits [`IInterchainTokenExecutable`](https://github.com/axelarnetwork/interchain-token-service/blob/94677f1072da127a0ee7ff5ab6784dcfe11789e8/contracts/interfaces/IInterchainTokenExecutable.sol).
4. Strobe lending core contracts will update their state after a deposit or repayment to reflect the changes.
