# crosschainTransfer · FT4 TypeScript client · Chromia Docs (concept)

> crosschainTransfer(
    connection: Connection ,
    authenticator: Authenticator ,
    targetChainRid: BufferId,
    recipientId: BufferId,
    assetId: B

Source: https://docs.chromia.com/pages/ft4-ts-client/functions/crosschain.crosschainTransfer/

Function

# crosschainTransfer

* ```signature
  crosschainTransfer(
      connection: Connection,
      authenticator: Authenticator,
      targetChainRid: BufferId,
      recipientId: BufferId,
      assetId: BufferId,
      amount: Amount,
      ttl?: number,
  ): Web3PromiEvent<
      TransferRef,
      { built: SignedTransaction; hop: HopData; init: TransactionReceipt },
  >
  ```

  Performs a cross chain transfer

  #### Parameters

  + connection: [Connection](https://docs.chromia.com/pages/ft4-ts-client/interfaces/ft-session.Connection/)

    connection to the source chain, i.e., where the assets should be transferred from
  + authenticator: [Authenticator](https://docs.chromia.com/pages/ft4-ts-client/interfaces/authentication.Authenticator/)

    the authenticator used to authenticate the transfer
  + targetChainRid: BufferId

    the rid of the target blockchain, i.e., where the assets will end up
  + recipientId: BufferId

    the id of the account that will receive the assets
  + assetId: BufferId

    the id of the asset to transfer
  + amount: [Amount](https://docs.chromia.com/pages/ft4-ts-client/interfaces/asset.Amount/)

    how much of the asset to transfer
  + ttl: number = ...

    timeout of this transfer in milliseconds. If the transfer has not been completed within this timeout, it can be reverted.
    This argument is designed to be combined with one of the time functions, e.g., [days](https://docs.chromia.com/pages/ft4-ts-client/functions/authentication.days/).

  #### Returns Web3PromiEvent<     [TransferRef](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.TransferRef/),     { built: SignedTransaction; hop: [HopData](https://docs.chromia.com/pages/ft4-ts-client/types/crosschain.HopData/); init: TransactionReceipt }, >

  a promi-event that will emit once when transaction is signed, once when init\_transfer has been sent on the source chain
  and once for each hop during the transfer. It will resolve once the transfer is completed.

[View this page on docs.chromia.com](https://docs.chromia.com/pages/ft4-ts-client/functions/crosschain.crosschainTransfer.html)Generated API reference, mirrored from the live docs
