Receiving credits to your Volt Account

Volt sends a notification to your webhook URL every time funds are credited to your Connect Account.

Webhook

Every time the new pay-in transfer will come into your account, a notification will be triggered at Volt and sent to the webhook URL provided during onboarding.

Notification Delivery

Volt will attempt to send notifications to the provided URL.  Once received you should return an HTTP 200 response code.

If a the response is not received, or it is not 200, we will retry 10 times with an incremental delay.  After the first failure, our support team will be notified and will be in contact with you.

After the 10th failure, Volt will no longer retry.

Notification security

A checksum is provided in the notification headers. It is calculated using your notification secret, and the notification body. This way you can be sure that the notification has been sent by Volt, and has not been modified.

Notification Headers

  • Content-Type
  • checksum

Notification Body

Notification body
{
  "eventId": "49adf8f3-74b7-4bf3-a44c-94a40e5243dc",
  "notificationType": "credit_received",
  "timestamp": "2023-10-16T16:39:47+00:00",
  "transactionDetails": {
    "id": "cdedad56-7040-47a1-9eed-a4bae9555f5b",
    "status": "SUCCESS",
    "errors": [],
    "debtorDetails": {
      "debtorAccount": {
        "accountNumber": "NL08INGB4824538831",
        "financialInstitution": "123123",
        "country": "NL"
      },
      "debtorName": "Funding of test account",
      "debtorAddress": null,
      "viban": null
    },
    "debitAmount": {
      "amount": "1000",
      "currency": "EUR"
    },
    "date": "2023-10-16T16:39:40+00:00",
    "remittanceInfo": {
      "line1": "demo 12",
      "line2": null,
      "line3": null,
      "line4": null
    },
    "externalId": "37d3e7a4-df21-406e-907d-d52310732000",
    "creditorDetails": {
      "creditorAccount": {
        "accountNumber": null,
        "financialInstitution": null,
        "country": null
      },
      "creditorName": null,
      "creditorAddress": null,
      "viban": "DK2450517187342686"
    },
    "creditAmount": {
      "amount": "1000",
      "currency": "EUR"
    },
    "payerTransactionReference": null
  }
}

Notification Body Fields

eventType uuid notification identifier

notificationType

string credit_received
timestamp timestamp timestamp when notification was created and sent
transactionDetails.id uuid Volt transaction identifier
transactionDetails.status string always SUCCESS for incoming funds
transactionDetails.errors array empty for incoming funds
transactionDetails.debtorDetails.debtorAccount.accountNumber string IBAN or Account Number
transactionDetails.debtorDetails.debtorAccount.financialInstitution string SWIFT/BIC or Sort code
transactionDetails.debtorDetails.debtorAccount.country string country code
transactionDetails.debtorDetails.debtorName string payer name
transactionDetails.debtorDetails.debtorAddress JSON {
“line1”: “LIPOLOL 25”,
“line2”: “AMSTERDAM”,
“line3”: null
}
transactionDetails.debtorDetails.viban string payer virtual IBAN number (if available)
transactionDetails.debitAmount.amount integer amount in minor units
transactionDetails.debitAmount.currency string currency code
transactionDetails.date timestamp  
transactionDetails.remittanceInfo JSON {
“line1”: “Description that Shopper provides 35 max”,
“line2″: ” in each line Ref$444231 can be more”,
“line3”: null,
“line4”: null
}
transactionDetails.externalId uuid transaction identifier at banking provider (if available)
transactionDetails.creditorDetails.creditorAccount.accountNumber string IBAN or Account Number
transactionDetails.creditorDetails.creditorAccount.financialInstitution string SWIFT/BIC or Sort code
transactionDetails.creditorDetails.creditorAccount.country string country code
transactionDetails.creditorDetails.creditorName string beneficiary name
transactionDetails.creditorDetails.creditorAddress JSON {
“line1”: “LIPOLOL 25”,
“line2”: “AMSTERDAM”,
“line3”: null
}
transactionDetails.creditorDetails.viban string virtual IBAN number
transactionDetails.creditAmount.amount integer amount in minor units
transactionDetails.creditAmount.currency string currency code

How to test incoming funds

On the sandbox environment, we can simulate incoming credits by using the endpoint:

POST /notification/mock-provider-1

Our system acts as if funds were received to your account.

Volt can provide endpoint documentation on request if you wish to perform your own testing.