Skip to main content
Register a deposit that you executed yourself with the Zyfai backend. sendDeposit already calls this after the ERC-20 transfer. If you send the transfer from your frontend, Privy, Biconomy, or any custom wallet, you must call logDeposit. Otherwise the backend never sees the deposit: a reserved pool wallet is not handed over to the user, and yield / portfolio tracking does not start.
Skip this only if you used sendDeposit. Any external transfer path must call logDeposit after the transaction confirms.
Typical cases:
  • You already have a transaction hash from an independently-created transfer
  • You need to recover or replay registration after a prior registration failure
For a new sponsored / gasless or custom-wallet deposit, use external deposit building blocks. It prepares the transfer and registers the transaction without requiring separate setup calls. For an intentionally split flow, use external deposit building blocks before registering the resulting hash here. The token is automatically selected based on the chain if not provided.

Signature

Parameters

Returns

Log deposit response with success status and lifecycle metadata. A successful registration can return handover_pending: the transfer is verified and recorded, but it is not yet credited or investable. Use waitForDepositCredit until status is credited.

HTTP endpoint

The SDK posts to POST /api/v1/users/log_deposit/v2, which returns 202 Accepted with a DepositLifecycleResponse body. The legacy POST /api/v1/users/log_deposit route returns 201 Created with no body. Custody handover completes asynchronously in the background.

Return Type

Example

Example with custom token