Channel Webhooks

Click the tabs below to view what webhooks you will receive from Coindirect when a merchant's customer completes their payment.

The scenario in this example is the following:

  1. The customer broadcasts their transaction on the network to send funds to a channel address that is tied to their user account in the merchant's platform

  2. Coindirect detects that inbound cryptocurrency transaction at the channel's adress and sends "event": "transactionDetected" webhook to notify the merchant

  3. The cryptocurrency transaction gets the required number of confirmations on the network - it usually takes from a few seconds to several mintues

  4. Coindirect then updates the channel payment status from DETECTED to COMPLETE and

    sends "event": "transactionConfirmed" webhook to notify the merchant

  5. The merchant will want to look at the displayAmount field to get the amount that the customer's payment resulted in. This is the exact amount that the customer's balance un the merchant's plarform should be increased by

{
  "event": "transactionDetected",
  "source": "channel",
  "data": {
    "channelId": "9d1f67f2-a647-404b-9b02-247c77be81d0",
    "merchantId": "0a12a214-1619-43fa-9be1-0029f6a440a0",
    "reference": "c1b933d5-3354-4f83-a05f-0b53f1be85f2",
    "dateCreated": 1631619489277,
    "lastUpdated": 1631619489277,
    "status": "DETECTED",
    "uuid": "c0dc9c14-0312-4a6b-a1a3-a6dcebdcc8a4",
    "hash": "0x152f2b3a3650a3e2e132abca0f81421c552ae14bc8466fac16889e8d32b3fd6a",
    "address": "0xb4e8bb9918248007dc9d0dc12ae1142f0d62ef0e",
    "tag": null,
    "paidCurrency": "ETH",
    "displayCurrency": "JPY",
    "walletCurrency": "EUR",
    "feeCurrency": "EUR",
    "paidAmount": 0,
    "displayAmount": 0,
    "walletAmount": 0,
    "feeAmount": 0,
    "exchangeRate": null,
    "displayRate": null,
    "risk": null,
    "networkFeeCurrency": null,
    "networkFeeAmount": null,
    "sources": null
  }
}

Webhook Payload Data

Parameter

Type

Description

address

string

Parent channel's destination address

channelId

string

Parent channel's UUID

dateCreated

number

Payment creation date

displayAmount

number

Payment amount. This is the exact amount that the customer's balance un the merchant's plarform should be increased by

displayCurrency

string

Payment currency e.g. JPY

displayRate

object

Display currency spot rate details

displayRate.base

string

Base currency e.g. EUR

displayRate.counter

string

Counter currency e.g. JPY

displayRate.rate

number

Spot rate

exchangeRate

object

Wallet currency spot rate

exchangeRate.base

string

Base currency e.g. ETH

exchangeRate.counter

string

Counter currency e.g. EUR

exchangeRate.rate

number

Wallet currency spot rate

feeAmount

number

Processing fee amount

feeCurrency

string

Processing fee currency

hash

string

Cryptocurrency transaction hash

lastUpdated

number

Payment last update date

merchantId

string

Merchant ID

paidAmount

number

The amount of received cryptocurrency

paidCurrency

string

Cryptocurrency code

reference

string

Channel reference ID. Payments always inherit their parent channel reference

risk

object

Provides risk details after BVNK runs automated tx risk checks on its side

risk.level

string

Risk level. Can LOW, MEDIUM, HIGH or SEVERE

risk.resourceName

string

The resource name that the transaction is connected to

risk.resourceCategory

string

The resource category. E.g. Exchange or Dark Market, etc

status

string

Payment status

tag

number

Destination tag (in the case of XRP)

uuid

string

Payment UUID

walletAmount

number

The amount credited to the merchant's wallet on Coindirect

walletCurrency

string

Wallet currency

See the Webhooks page to get basic information on webhooks and validation.

pageWebhooks

Channels endpoints.

pageChannels

Last updated