Notifications (Webhooks)

Changelog Version 2019-02-13

Transaction statuses renamed:

  • chargeback dispute to chargeback
  • Technical error to error
  • Partially refunded to partially-refunded

New Subscription status:

  • a new status in_notice for subscriptions which will not renew at the end of the period. In previous version it will appear as cancelled subscription.

Invoice gets new attributes:

  • sku: stock keeping unit (string)
  • vatRate: the vat rate in percentage (float)


Payrexx webhooks will be fired on the following events.


  • Order placed (status: waiting)
  • Successful payment processed (status: confirmed)
  • Payment aborted by customer (status: cancelled)
  • Payment declined (status: declined)
  • Pre-authorization successful (status: authorized)
  • Payment (partial-) refunded by merchant (status: refunded / partially-refunded), see changelog
  • Chargeback by card holder (status: chargeback), see changelog
  • Technical error (status: error), see changelog


  • On successful payment of a subscription payment
  • On failed payment of a subscription payment
  • On cancelled subscription
  • On noticed subscription (new by 2019-02-13, see changelog)


The configuration for the 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 Payrexx 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 an example written in PHP.

Download full PHP example with a corresponding MySQL database: click here to download


 * 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'];

Notifications (Webhooks)

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.