Command Bank Transfer Executed

The Command Bank Transfer Executed webhook is for a bank transfer to an external IBAN.

  • In case of instant bank account transfer, money have been transferred immediately from your wallet (which is linked with your IBAN) to the external IBAN.

  • In case of non instant bank account transfer, money have been transferred from your wallet (which is linked with your IBAN) but not necessarily received yet to the external IBAN.

Webhook configuration

To enable within the Viva Wallet banking app:

  1. Log in to Viva Wallet, demo or live , and select the required account.

  2. Visit Settings > API Access > Webhooks.

  3. Click on the Create Webhook link.
    The New Webhook dialog box is displayed.

  4. Enter your webhook URL in the URL field.

  5. Click on the Verify link.
    If verified successfully, a confirmation message is displayed.

  6. Choose Command Bank Transfer Executed from the Event Type dropdown:

    Bank Transfer Executed webhook

  7. Select the Active checkbox to activate notifications.

  8. Click on the Save button.

Response example

You may find below the sample response with EventTypeId 769.

{
  "Url": "Your webhook url",
  "EventData": {
    "Fee": 0,
    "Iban": "LU280019400644750000",
    "PersonId": "11ac9cd4-c9ea-48d3-b414-1f10ce664aad",
    "WalletId": 2263446434318,
    "Amount": 12.2, // Amount in EUR, GBP, ZLOTY, ETC.
    "CommandId": "19a2d8f2-45d8-43ab-9dbb-58dc8c2746e6",
    "IsInstant": false,
    "WalletName": "Primary",
    "Description": "test-reference",
    "DisplayName": "Luxembourg Services",
    "CountryCode": "LU",
    "CurrencyCode": "978",
    "BankCommandId": "255a27d0-6959-43a6-ab2e-46e7fca0eaeb",
    "PersonLastName": "George",
    "PersonFirstName": "Sandrine",
    "BankAccountName": "jdoe",
    "BeneficiaryName": "john doe",
    "PersonRoles": [
      "ViewBalance",
      "AllowOriginalCredit",
      "ManageAccount",
      "AllowLiquidation",
      "AllowPayment",
      "Merchant",
      "AllowPayOut",
      "ApiAllowBalanceTransfer",
      "AllowVirtualCards",
      "AllowBankTransfers",
      "AllowRefund"
    ],
    "WalletTransactionId": "3e0cfd83-4171-4379-b11d-95c62881315f",
    "BankAccountBankName": "Banque et Caisse d'Epargne de l'Etat, Luxembourg",
    "BankAccountSwiftCode": "BCEELULL"
  },
  "Created": "2022-05-26T00:12:25.3198847Z",
  "CorrelationId": "22-146-128CD2FC",
  "EventTypeId": 769,
  "Delay": null,
  "MessageId": "a25cea3e-80fa-4a84-bb67-8049ee5af3f6",
  "RecipientId": "11ac9cd4-c9ea-48d3-b414-1f10ce664aad",
  "MessageTypeId": 512
}

Webhook body

In case of a successful bank account transfer, you will receive Command Bank Transfer Executed webhook and Account Transaction Created with StatusId = F. You can identify the bank account type (instant/not instant) through the parameter IsInstant (true/false) of Command Bank Transfer Executed webhook.

In case of non-successful bank account transfer, you will receive the Command Bank Transfer Executed webhook and Account Transaction Created with SubTypeId = 30. You can match the WalletTransactionId of the Command Bank Transfer Executed webhook with the ParentId of the Account Transaction Created webhook.

You can find below the body parameters of this webhook

Parameter Description Example
Fee (decimal) The transaction fee 0.8
Iban (string) The Iban the wallet owner sent a bank transfer to "GR0202601240000380200549056"
PersonId (uuid) The Id of the person/merchant that initiated the action, or who billing created an obligation for "7400c107-8435-42b4-a0f9-5c80f2836b5d"
WalletId (int) The wallet from which the transaction took place 324014327911
Amount (decimal) The signed amount of the transaction. Represents the total funds paid by the customer and includes TotalFee 12.2
CommandId (uuid) The internal Id of the command "63d599be-8684-4061-b443-a208c189a562"
IsInstant (boolean) If the bank transfer is instant false
WalletName (string) Friendly name of the wallet "Primary"
Description (string) Short description that is related to the wallet transaction "BANK TRANSFER EXECUTED"
DisplayName (string) The Full name in case of a personal wallet, or the Company Legal Name in the case of a merchant wallet. If the legal name doesn’t exist (not applicable) we use the Trade Name "Screwdrivers Inc"
CountryCode (string) Merchant's country code "GR"
CurrencyCode (string) The currency of the transaction in ISO 4217 numeric format (e.g. “978” for Euro) 978
BankCommandId (uuid) Internal unique identification of the bank command created – could be used for debug purposes "2fd4289e-2ddb-49de-8e32-cbe61c871a5a"
PersonLastName (string) The last name of the wallet's owner null
PersonFirstName (string) The first name of the wallet's owner null
BankAccountName (string) The friendly/beneficiary name of the bank account - (e.g. when you send a bank transfer via your mobile VW banking app to your Alpha Bank account you can use a friendly name such as My Own Alpha Bank Account – that is the BankAccountName) null
BeneficiaryName (string) The beneficiary's name "Screwdrivers"
PersonRoles (arrayOfStrings) The roles the owner of the wallet has in Viva Wallet (e.g. AllowLiquidation etc) ["ViewBalance", "ManageAccount", "AllowLiquidation", "AllowPayment", "Merchant", "AllowVirtualCards", "AllowBankTransfers", "AllowRefund"]
WalletTransactionId (uuid) The Id of the wallet transaction that was created as a result of this transaction "f689c102-c4a9-4894-8d0e-93af63137e0f"
BankAccountBankName (string) The name of the transfer receipient's bank "AFX Bank""

Get Support

If you have any questions about our solutions, or questions about how to integrate with our solutions, please refer to our Get Support page.