Receive Pay-In Notifications

Layer1 sends out a series of webhooks to keep you informed on any lifecycle event for the payment you have created.

Webhook structure

The body of a webhook can be divided into three different sections:

  • source. Specifies the product source of the webhook.
  • event: Specifies an event that occurred within that source.
  • data. Indicates relevant payment information sent with the webhook.

Source types

For a pay-in, the source will always be payment.

Event types

EventDescription
layer1:payment:checkout:status-changeHappens twice, the status of the payment changes from pending to processing, or from processing to complete
layer1:payment:checkout:transaction-confirmedThe payment sent by the end-user has been confirmed on the blockchain and funds have been credited to your merchant account
layer1:payment:checkout:transaction-detectedThe end-user has sent a payment and it has been detected on the blockchain but has not yet had the required number of block confirmations
layer1:payment:checkout:transaction-lateThe end-user has sent funds to a payment that is already in an expired, complete, or underpaid state, or completed multiple payments to the same address
layer1:payment:checkout:transaction-heldA payment has been placed on hold for screening
layer1:payment:checkout:refund-initiatedAn automatic refund was initiated
layer1:payment:checkout:transaction-settledA payment has been settled

Data types

Data in each webhook is comprehensive. Note the most important fields here:

FieldDescription
uuidUUID of the linked payment. Remains the same across all webhook types for that payment
typeType of payment, can be IN for deposit or OUT for withdrawal
statusCurrent status of the payment. The EXPIRED, UNDERPAID and COMPLETE statuses are final.
displayCurrencyAmounts in the selected display currency that the end user sees
paidCurrencyAmounts in the currency actually sent by the end user when fulfilling the payment
walletCurrencyAmounts in the settlement or wallet currency linked to the payment
amountAmount requested when creating a payment
actualActual amount of money sent once the payment is confirmed on the blockchain
transactionsArray of transactions linked to the payment. If multiple payments are sent to the same address, they will all appear here

Common payment flow

Diagram of the Payment In lifecycle.

Diagram of the Payment In lifecycle.

Webhook sequence for each scenario

Payment complete

When the end user successfully completes the payment within the allocated time frame and with the correct amount, you'll receive the following webhooks in order:

Webhook Event NameDescription
transactionDetected: Issued when the transaction first appears on the blockchain. This may follow the processing status webhook, depending on blockchain network speeds
statusChanged - Processing:Dispatched when the payment status updates to processing after the transaction is recognized on the platform
transactionConfirmed:Sent once the transaction achieves the requisite number of confirmations on the blockchain
statusChanged - Complete:Issued when the payment status updates to complete following blockchain confirmation.
This webhook delivers comprehensive payment details, including the final amounts sent (in the actual fields) and the transaction hash in the transactions array.

Payment expired

When an end user does not complete the payment, the payment expires. Only one webhook is sent out to let you know no transactions were detected within the given time frame.

Webhook Event NameDescription
statusChanged - ExpiredIndicates the payment status has updated to expired due to elapsed expiry minutes without payment completion

Exception webhooks

Underpaid

If the end user sends less cryptocurrency than required but within the expiry window, the following webhooks are triggered in order:

Webhook Event NameDescription
transactionDetected: Issued when the transaction first appears on the blockchain. This may follow the processing status webhook, depending on blockchain network speeds
statusChanged - Processing:Dispatched when the payment status updates to processing after the transaction is recognized on the platform
statusChanged - Underpaid:Sent once the transaction achieves the requisite number of confirmations on the blockchain.
This webhook details the received amount (in the actual fields) allowing comparison with the expected amount (the amount fields)
statusChanged - Complete:Marks the payment as underpaid after confirmation, noting the received amount is less than expected

Overpaid

If the end user sends more cryptocurrency than required but within the expiry window, the following webhooks are triggered in order:

Webhook Event NameDescription
transactionDetected: Issued when the transaction first appears on the blockchain. This may follow the processing status webhook, depending on blockchain network speeds
statusChanged - Processing:Dispatched when the payment status updates to processing after the transaction is recognized on the platform
statusChanged - Underpaid:Sent once the transaction achieves the requisite number of confirmations on the blockchain
statusChanged - Complete:Issued when the payment status updates to complete following blockchain confirmation. As there is more than required it completes the payment but will provide information on the additional amount sent

Note the payments that exceed the expected amount and received within the expiry window. Their sequence is the same as for the complete payments. The notable distinction is in the actual field indicating a received amount that is higher than expected. Always compare the actual and amount fields in the final webhook to identify overpayments

Late or Duplicate Payment

If the payment is detected or sent after the expiry webhook has been sent out, or if the end user sends an additional payment to the same payment links address, the following webhooks are triggered in order:

Webhook Event NameDescription
statusChanged - Expired:Indicates payment expiration after the lapse of the expiry window without payment
transactionDetected: Detected transactions post-expiration are noted, possibly following the expiry notification
transactionConfirmed:Confirms late transactions upon achieving blockchain confirmation criteria.
The webhook also contains a comprehensive list of transactions
transactionLate:Issued for confirmed transactions beyond the expiry limit or for duplicate payments to the same wallet address.
Multiple payments to the same address trigger this webhook, which specifies details for each late or duplicate payment

Payment In Webhook Examples

The following is a comprehensive collection of the data sent for all of the webhooks mentioned earlier:

{
  "source": "payment",
  "event": "transactionDetected",
  "data": {
    "uuid": "d993b0bc-dace-4742-81d8-6ae629dab063",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895600000,
    "expiryDate": 1709982000000,
    "quoteExpiryDate": 1709982000000,
    "acceptanceExpiryDate": 1709895667000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_0plkzH",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "PENDING",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 0
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002764,
      "actual": 0
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3617.748674999548
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0?value=2.76415E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=d993b0bc-dace-4742-81d8-6ae629dab063&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709895679212,
        "dateConfirmed": null,
        "hash": "0x3d8ff17b4a2be304eff0ece0373f538f5e1a19e637652466c9ab15c599b6d91b",
        "amount": 0,
        "risk": null,
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": null,
        "sources": null,
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3617.748674999548
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "transactionConfirmed",
  "data": {
    "uuid": "d993b0bc-dace-4742-81d8-6ae629dab063",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895600000,
    "expiryDate": 1709982000000,
    "quoteExpiryDate": 1709982000000,
    "acceptanceExpiryDate": 1709895667000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_0plkzH",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "PROCESSING",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 0
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0.00276415
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002764,
      "actual": 0
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3617.748674999548
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0?value=2.76415E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=d993b0bc-dace-4742-81d8-6ae629dab063&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709895679000,
        "dateConfirmed": 1709895776194,
        "hash": "0x3d8ff17b4a2be304eff0ece0373f538f5e1a19e637652466c9ab15c599b6d91b",
        "amount": 0.00276415,
        "risk": {
          "level": "LOW",
          "resourceName": null,
          "resourceCategory": null,
          "alerts": []
        },
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": 0.000033940950855,
        "sources": [
          "0x84a4a239805d06c685219801b82bea7c76702214"
        ],
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3617.748674999548
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "transactionLate",
  "data": {
    "uuid": "1401c32a-f8c1-49d9-a24c-5ae81b0ea2b3",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709897205000,
    "expiryDate": 1709897284000,
    "quoteExpiryDate": 1709897265000,
    "acceptanceExpiryDate": 1709897245000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_d1plQ7",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "EXPIRED",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 10
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.0027682,
      "actual": 0.0027682
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.0027682,
      "actual": 0.0027682
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002768,
      "actual": 0.00002768
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3612.455747417094
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0x8c12686c4277ae7b48a2cf19256cc29ba2184bf5",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0x8c12686c4277ae7b48a2cf19256cc29ba2184bf5?value=2.7682E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=1401c32a-f8c1-49d9-a24c-5ae81b0ea2b3&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709897305000,
        "dateConfirmed": 1709897394000,
        "hash": "0x8aa160b0b175624b5381f100d9b9ffbff199e65c6e53335b596aee926d831b42",
        "amount": 0.0027682,
        "risk": {
          "level": "LOW",
          "resourceName": null,
          "resourceCategory": null,
          "alerts": []
        },
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": 0.00005765,
        "sources": [
          "0x84a4a239805d06c685219801b82bea7c76702214"
        ],
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3612.455747417094
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "transactionOnHold",
  "data": {
    "uuid": "b078499c-0c6c-4e3f-8a32-66dca1d2676b",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709543074000,
    "expiryDate": 1709715874000,
    "quoteExpiryDate": 1709715874000,
    "acceptanceExpiryDate": 1709543139000,
    "quoteStatus": "ACCEPTED",
    "reference": "REF958403",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "PROCESSING",
    "displayCurrency": {
      "currency": "ETH",
      "amount": 0.01,
      "actual": 0
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.01,
      "actual": 0
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.01,
      "actual": 0
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.0001,
      "actual": 0
    },
    "displayRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc643e89d9499d1e888c0be5c89b0d49973115d8a",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc643e89d9499d1e888c0be5c89b0d49973115d8a?value=1E+16",
      "alternatives": []
    },
    "returnUrl": "",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=b078499c-0c6c-4e3f-8a32-66dca1d2676b&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709543141000,
        "dateConfirmed": null,
        "hash": "0xfc403fb78ce3d05205c90ae91ddaf5f9760fd00ca15714b01951415ff3dbd172",
        "amount": 0.01,
        "risk": null,
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": null,
        "sources": null,
        "displayRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": true
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "statusChanged",
  "data": {
    "uuid": "d993b0bc-dace-4742-81d8-6ae629dab063",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895600000,
    "expiryDate": 1709982000000,
    "quoteExpiryDate": 1709982000000,
    "acceptanceExpiryDate": 1709895667000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_0plkzH",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "PROCESSING",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 0
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002764,
      "actual": 0
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3617.748674999548
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0?value=2.76415E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=d993b0bc-dace-4742-81d8-6ae629dab063&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709895679212,
        "dateConfirmed": null,
        "hash": "0x3d8ff17b4a2be304eff0ece0373f538f5e1a19e637652466c9ab15c599b6d91b",
        "amount": 0,
        "risk": null,
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": null,
        "sources": null,
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3617.748674999548
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "statusChanged",
  "data": {
    "uuid": "d993b0bc-dace-4742-81d8-6ae629dab063",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895600000,
    "expiryDate": 1709982000000,
    "quoteExpiryDate": 1709982000000,
    "acceptanceExpiryDate": 1709895667000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_0plkzH",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "COMPLETE",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 10
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0.00276415
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0.00276415
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002764,
      "actual": 0.00002764
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3617.748674999548
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0?value=2.76415E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=d993b0bc-dace-4742-81d8-6ae629dab063&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709895679000,
        "dateConfirmed": 1709895776000,
        "hash": "0x3d8ff17b4a2be304eff0ece0373f538f5e1a19e637652466c9ab15c599b6d91b",
        "amount": 0.00276415,
        "risk": {
          "level": "LOW",
          "resourceName": null,
          "resourceCategory": null,
          "alerts": []
        },
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": 0.00003394,
        "sources": [
          "0x84a4a239805d06c685219801b82bea7c76702214"
        ],
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3617.748674999548
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "statusChanged",
  "data": {
    "uuid": "c11b0f66-2e7f-4ff0-9963-e485511ae49f",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709896743000,
    "expiryDate": 1709896862203,
    "quoteExpiryDate": null,
    "acceptanceExpiryDate": null,
    "quoteStatus": "TEMPLATE",
    "reference": "test_reference_in_ewmnnj",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "EXPIRED",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 0
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276456,
      "actual": 0
    },
    "paidCurrency": {
      "currency": null,
      "amount": 0,
      "actual": 0
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0,
      "actual": 0
    },
    "displayRate": null,
    "exchangeRate": null,
    "address": null,
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=c11b0f66-2e7f-4ff0-9963-e485511ae49f&hpp=true",
    "transactions": [],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "statusChanged",
  "data": {
    "uuid": "83e3287c-540e-4f43-8953-e5b2db646ca5",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895979000,
    "expiryDate": 1709982379000,
    "quoteExpiryDate": 1709982379000,
    "acceptanceExpiryDate": 1709896020000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_LGkyRO",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "UNDERPAID",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 3.62
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276601,
      "actual": 0.001
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276601,
      "actual": 0.001
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002766,
      "actual": 0.00001
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3615.315924382052
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xe4828053f59d310ee50984d0cd84b622cc03b19f",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xe4828053f59d310ee50984d0cd84b622cc03b19f?value=2.76601E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=83e3287c-540e-4f43-8953-e5b2db646ca5&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709896040000,
        "dateConfirmed": 1709896133000,
        "hash": "0xb8a33c20e4e0c6f747e87e1e632e9cdf22e62f0a99a18faefc7e327b85f8537d",
        "amount": 0.001,
        "risk": {
          "level": "LOW",
          "resourceName": null,
          "resourceCategory": null,
          "alerts": []
        },
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": 0.0000355,
        "sources": [
          "0x84a4a239805d06c685219801b82bea7c76702214"
        ],
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3615.315924382052
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}
{
  "source": "payment",
  "event": "statusChanged",
  "data": {
    "uuid": "d993b0bc-dace-4742-81d8-6ae629dab063",
    "merchantDisplayName": "ETH Merchant ",
    "merchantId": "a7eddadd-fd9b-45fb-82a1-dc12eaa14cba",
    "dateCreated": 1709895600000,
    "expiryDate": 1709982000000,
    "quoteExpiryDate": 1709982000000,
    "acceptanceExpiryDate": 1709895667000,
    "quoteStatus": "ACCEPTED",
    "reference": "test_reference_in_0plkzH",
    "type": "IN",
    "subType": "merchantPayIn",
    "status": "CANCELLED",
    "displayCurrency": {
      "currency": "EUR",
      "amount": 10,
      "actual": 10
    },
    "walletCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0.00276415
    },
    "paidCurrency": {
      "currency": "ETH",
      "amount": 0.00276415,
      "actual": 0.00276415
    },
    "feeCurrency": {
      "currency": "ETH",
      "amount": 0.00002764,
      "actual": 0.00002764
    },
    "displayRate": {
      "base": "ETH",
      "counter": "EUR",
      "rate": 3617.748674999548
    },
    "exchangeRate": {
      "base": "ETH",
      "counter": "ETH",
      "rate": 1
    },
    "address": {
      "address": "0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0",
      "tag": null,
      "protocol": "ETH",
      "uri": "ethereum:0xc4d8b4b0e0601f49c88f41c4a9490f0d7f4ceed0?value=2.76415E+15",
      "alternatives": []
    },
    "returnUrl": "https://www.your-url-here.com",
    "redirectUrl": "https://pay.sandbox.bvnk.com/payin?uuid=d993b0bc-dace-4742-81d8-6ae629dab063&hpp=true",
    "transactions": [
      {
        "dateCreated": 1709895679000,
        "dateConfirmed": 1709895776000,
        "hash": "0x3d8ff17b4a2be304eff0ece0373f538f5e1a19e637652466c9ab15c599b6d91b",
        "amount": 0.00276415,
        "risk": {
          "level": "LOW",
          "resourceName": null,
          "resourceCategory": null,
          "alerts": []
        },
        "networkFeeCurrency": "ETH",
        "networkFeeAmount": 0.00003394,
        "sources": [
          "0x84a4a239805d06c685219801b82bea7c76702214"
        ],
        "displayRate": {
          "base": "ETH",
          "counter": "EUR",
          "rate": 3617.748674999548
        },
        "exchangeRate": {
          "base": "ETH",
          "counter": "ETH",
          "rate": 1
        },
        "protocol": "ETH",
        "isOnHold": false
      }
    ],
    "refund": null,
    "refunds": []
  }
}