Notifications (Webhooks)


VR pay secure webhooks will be fired on the following events:

Order placedWaiting
Successful payment processedConfirmed
Payment aborted by customerCancelled
Payment declinedDeclined
Pre-authorization successfulAuthorized
Payment (partial-) refunded by merchantRefunded / partially-refunded
Chargeback by card holderChargeback
Technical errorError


  • On successful payment of a subscription payment
  • On failed payment of a subscription payment
  • On cancelled subscription
  • On noticed subscription

For one successful payment, you will get two webhook requests.


The configuration for webhooks can be found at Settings > API.
There must be an accessible URL / IP address where the data should be sent to.

You can choose which content type you want to use:

  • "Normal (PHP-Post)" means application/x-www-form-urlencoded and is best used for PHP-applications
  • "JSON" means application/json and is best used for all different applications

How to use

For an integration into a web shop you will create a VR pay secure Gateway. After the transaction has been performed, you will get a notification request to your server. You can identify the transaction by paymentLinkId or referenceId in Invoice object.


The data will be either sent in JSON format or as HTTP POST form-data.

Depending on the information you want to track in your system, please go to the object specification:


Currently we only have one example written in PHP:


 * The data of the POST request
 * @var array $transaction
$transaction = !empty($_POST['transaction']) ? $_POST['transaction'] : array();

if (!empty($transaction)) {
		$invoice = $transaction['invoice'];
 	  $customFields = $invoice['custom_fields'];
 	  $contact = $transaction['contact'];