Send transaction webhooks

These webhooks are triggered when funds are sent from any of the addresses belonging to a Liminal Wallet.

The structure of the send webhook contains several fields that provide information about the transaction.

Identifying webhooks that belong to outgoing (Send) transactions

You can differentiate a send and receive webhook using the parameters–type. The parameter is described as follows:

  • type: This is the name of the event. For example, "send".

Differentiating between a native coin (eg. ETH, POL) transaction and a token transaction (eg. USDC,USDT)

You can differentiate a native coin webhook from token transaction webhook using the parameter–tokenContractAddress. This parameter will be an empty string "" in case of a native coin transaction and will contain the token contract address of the token in case of a token transaction.

📘
  • Currently, webhooks contain only the x-platform-signature header. Liminal has deprecated the x-liminal-signatureheader.

The following is a sample payload of the "Send" webhook request.

{
  "id": 160055029,
  "txid": "1e90816a4d4181da351a296d82c857929c651427ea4f1656ea154410db6aa90c",
  "raw": null,
  "walletid": 47266,
  "type": "send",
  "fee": "0.00026800",
  "effectivechange": "-50.00000000",
  "runningbalance": null,
  "timestamp": "2025-08-03T20:31:51.000Z",
  "externaladdress": "TLU91Ditbv3gP634ecfjANbzKqWnDhbn6H",
  "block": 56781943,
  "coin": "TRX",
  "effectivechangeusd": "-16.31043",
  "createdAt": "2025-08-03T20:33:42.000Z",
  "wallet": {
    "id": 47266,
    "name": "Tron MPC Wallet",
    "type": "mpc",
    "config": "2of2",
    "balance": "1450.00000000",
    "address": "TC2CUbWTiMHMVxRkJfmzjhXdH8bpjsvYYs",
    "chain": "TRON",
    "subtype": "holding",
    "coin": "TRX",
    "orgid": 2050,
    "parentchain": "TRON",
    "isArchived": 0,
    "balanceUSD": "473.00237358",
    "orgWebhook": "https://c70a5e1afdb0a586c53ae351815c8f6b.m.pipedream.net/"
  },
  "tokenContractAddress": "",
  "sequenceId": "5972e24d-df6d-4698-a13a-30ab9bfc15c1",
  "explorerLink": "https://shasta.tronscan.org/#/transaction/1e90816a4d4181da351a296d82c857929c651427ea4f1656ea154410db6aa90c",
  "inputs": [
    {
      "address": "TC2CUbWTiMHMVxRkJfmzjhXdH8bpjsvYYs",
      "amount": "0.00000000",
      "isMine": true,
      "wallet": {
        "id": 47266,
        "name": "Tron MPC Wallet",
        "type": "mpc",
        "config": "2of2",
        "status": 1,
        "balance": "1450.00000000",
        "balanceusd": "473.00237358",
        "raw": null,
        "issynced": false,
        "walletpath": "m/44/195/2/47266",
        "walletidentifier": "TC2CUbWTiMHMVxRkJfmzjhXdH8bpjsvYYs",
        "chain": "TRON",
        "subtype": "holding",
        "coin": "TRX",
        "orgid": 2050,
        "parentchain": "TRON",
        "canInitiatorSign": 0,
        "suspendedStatus": 0,
        "suspendedRemark": null,
        "isArchived": false,
        "teamId": null,
        "version": 2,
        "updatedAt": "2025-08-03T20:33:40.000Z",
        "account": null
      }
    }
  ],
  "outputs": [
    {
      "address": "TLU91Ditbv3gP634ecfjANbzKqWnDhbn6H",
      "amount": "50.00000000",
      "isMine": false
    }
  ],
  "blockConfirmation": 35,
  "transactionStatus": {
    "legacyStatus": 4,
    "primaryStatus": "success",
    "secondaryStatus": "completed"
  },
  "blockConfirmationData": {
    "periodicity": null,
    "block": 56781943,
    "numberOfConfirmations": 35
  },
  "resData": {
    "success": true
  },
  "txStatus": 1
}

ObjectParameterData TypeDescriptionExample Value
idIntegerThe unique identifier of the event.1965382
txidStringThe unique identifier of the transaction.0x62eaf9706dac678d8daf672259c44a22e13c7f73b62c6240bd8b5719764d9ae8
rawStringStores memo for the supported chains, else nullnull
walletIdint32The unique identifier of the wallet.2876
typeStringThe type of "send" or "receive" transaction. If its value is “internal”, ignore it, as it is an internally occurring webhook.send
feeStringThe fee associated with the transaction.0.00824932
effectivechangedecimal(28,8)The number of coins or tokens being transferred.4.00000000
runningbalanceStringThe real-time updated total funds change after each transaction.null
timestampStringThe date and time when the transaction was initiated.2023-10-05T07:20:29.000Z
externaladdressStringFor "receive" transaction, this represents the source address.
For "send" transaction, this represents the target address.
0x505e71695e9bc45943c58adec1650577bca68fd9
blockIntegerThis is the block number/ height at which the transaction was included56781943
coinStringThe symbol of the asset "received" or "sent" in the transaction. It can be a coin or token.USDT
effectivechangeusddecimal(18,5)The amount transferred in the USD.4.00000
walletidint32The unique identifier of the wallet.2876
walletnameStringThe name of the wallet.Lightning Nodes Deposit POLYGON
wallettypeStringThe type of wallet.pipeline
walletconfigStringThe minimum required signer configuration of the wallet.2of2
walletbalancedecimal(28,8)The total balance of the wallet.0.00000000
walletaddressStringThe unique address of the wallet.0x6d3E8E04f8F178eF755627546aA84Fca4397B20b
walletcoinStringThe native coin of the wallet chain.MATIC
walletchainStringThe blockchain network of the wallet.POLYGON
walletparentchainStringThe parent blockchain network of the chain where the wallet operates.EVM
walletsubtypeStringThe sub type of the wallet from where the transaction is initiated.deposit
walletisArchivedBooleanThis indicates whether the wallet is archived or not. "1" refers to true, whereas, "0" refers to false.0
walletorgidIntegerThe unique identifier of the organisation.864
walletbalanceUSDdecimal(18,8)The total balance of the wallet in USD.0.00000000
walletorgWebhookStringThe webhook URL setup on the client side.https://testnet-api.pi42.exchange/v1/liminal/webhook
tokenContractAddressStringThe contract address of the token for which the transaction takes place.0xc2132D05D31c914a87C6611C10748AEb04B58e8F
sequenceIdStringThe unique identifier of the transaction sequence. Sequence ID is associated with a send transaction.93544241-c00e-c754-3bd0-494567a67ee8
explorerLinkStringThe URL of a web-based tool that allows users to view and search blockchain transactions, blocks, addresses, and other relevant information.https://polygonscan.com/tx/0x62eaf9706dac678d8daf672259c44a22e13c7f73b62c6240bd8b5719764d9ae8
inputsaddressStringThe wallet address from where the transaction is initiated.0x505e71695e9bc45943c58adec1650577bca68fd9
inputsamountIntegerThe total amount of the transaction.0.00000000
inputsisMineBooleanThis indicates whether the source address belongs to the transaction initiator or not.true
outputsaddressStringThe wallet address where the transaction is received.0x1963159d1f64538b5dc105d4498d248d615ae57c
outputsamountIntegerThe amount of cryptocurrency received in the destination address.4.00000000
outputsisMineBooleanThis indicates whether the destination address belongs to the transaction initiator or not.true
outputs > walletidint32The unique identifier of the destination wallet.2876
outputs > walletnameStringThe name of the destination wallet.Lightning Nodes Deposit POLYGON
outputs > wallettypeStringThe type of the destination wallet.pipeline
outputs > walletconfigStringThe minimum required signer configuration of the destination wallet.2of2
outputs > walletstatusStringThe current status of the wallet. The value "1" represents active, "0" represents inactive, and "-1" represents the pending status.1
outputs > walletbalancedecimal(28,8)The total balance of the destination wallet.0.00000000
outputs > walletbalanceusdStringThe total balance of the wallet in USD.2.13649785
outputs > walletrawStringThe memo for the supported chains, else null.null
outputs > walletissyncedBooleantrue
outputs > walletwalletpathStringThe path number of the wallet.null
outputs > walletwalletidentifierStringThe unique identifier of the wallet in blockchain.TYDmpfsPdtEwdsMgnqRiy36WTDovZfcJjx
outputs > walletcoinStringThe type of cryptocurrency held in the destination wallet.MATIC
outputs > walletchainStringThe type of blockchain network associated with the destination wallet.POLYGON
outputs > walletparentchainStringThe parent blockchain of the chain where the destination wallet operates.EVM
outputs > walletsubtypeStringThe sub type of the destination wallet.deposit
outputs > walletisArchivedBooleanThis indicates whether the destination wallet is archived or not.0
outputs > walletteamIdStringThe unique identifier of the team associated with the wallet.null
outputs > walletversionIntegerThe version of the wallet.1
outputs > walletorgidIntegerThe unique identifier of the organisation.864
blockConfirmationNumberThe difference between the latest block (at the time of processing the transaction) and the block number in which the transaction was included.5
transactionStatuslegacyStatusNumberThe legacy status of the transaction in number that is retrieved via old transaction status API1
transactionStatusprimaryStatusStringThis is the broader stage of the transaction.pending
transactionStatussecondaryStatusStringThe specific stage of the transactionawaiting_finalisation
blockConfirmationDataperiodicitynumber | nullnumber of block confirmations at which the periodic webhook was triggered. This value is null when the transaction is finalised on-chain and completed. 1 | null
blockConfirmationDatanumberOfConfirmationsnumberThe number of confirmations on the blockchain that have passed since this transaction was first confirmed1
blockConfirmationDatablocknumberThis is the block number/ height at which the transaction was included844391
txStatustxStatusnumberCan be 0 or 1
0 - Transaction is unfinalised
1- Transaction is fully confirmed/finalised
1

You can view webhook status code, request and response body, and other details in the webhook dashboard within Vaults, as shown below. To learn more about webhook dashboard, see View and manage your webhooks.