External Message Processor

Development Status
Work In Progress
Active Installs
Maintainers
Descargar

Last updated: 2026-04-13

Works with CiviCRM 6.4 or higher.

Integration (3rd-party services)

Receive messages from external sources and process them within CiviCRM (either as an API or a form processor).

Background behind this extension

At Amnesty International Flanders we have CiviCRM behind a firewall and use CiviProxy to receive data from the outside world. This is data from systems from telemarketing and street recruitment agencies. As well as forms on the public website. All those are calling the CiviCRM API. We discovered that sometimes CiviCRM reacts slowly resulting in a failure at civiproxy. However this happens randomly during the day.

So we came up with a solution where we log the API calls at the CiviProxy and we use this extension to read those API calls. If they are failed an administrator can see them, correct them (when it is faulty data, e.g. a non numeric housenumber) and resubmit the call. If they are successful we also record them but as a an already processed message.

Another use case we have is that during upgrades CiviCRM is down. However with this functionality in place we do not have to disable the external forms as data coming in is stored at CiviProxy and processed later when CiviCRM comes online again.

Functionality

  • Retrieve messages from external sources
  • Keep a log of the processed message (and clean up the log after a configured time)
  • Edit a message to correct faulty data

Providers

A provider is a data source from which the extension is pulling data from. The following providers are supported out of the box:

  • CiviProxy to read messages from the CiviProxy log
  • Redis to read messages from Redis
  • Stripe Subscriptions. To import subscribers from stripe

Message Format

A message format is the format of the incoming data. The following message formats are supported out of the box:

  • CiviProxy