Documentation
Instellingen > Integraties

An integration works in the background: bookings go to an external system, invoices are pushed to the accounting package, or an external platform creates bookings in i-Reserve. Sometimes you want to know exactly what happened. For example: "is this invoice in the accounting package now, and when was it sent?". i-Reserve offers three entry points for this: the entity's history, the external id on the entity, and the technical integration logging.

1. The entity's history (audit trail)

As of version 5.48, every integration writes an entry into the history of the entity it works on. Open the booking, invoice or customer and select the History tab. Integration entries are recognisable by the plug icon with the name of the integration, and by one of the following actions:

  • Created via integration — the entity was created in the external system (for example an invoice pushed to the accounting package);
  • Updated via integration — the entity was updated in the external system;
  • Received via integration — the entity was created or updated in i-Reserve by an incoming connection (for example a webhook);
  • Deleted via integration — the entity was deleted or revoked in the external system;
  • Integration failed — the transfer failed permanently, after all retries or immediately on a hard error.

The new-value column shows the external id (see below). History entries are kept permanently: even months later you can trace whether and when an integration worked on an entity.

2. External ids

When transferring, the external system assigns its own id to the entity: an invoice number or invoice id in the accounting package, a booking id in the external platform. i-Reserve records this external id in two places: in a field on the entity itself (configurable per integration, for example the external_id field or a custom field) and in the integration's history entry.

The external id lets you find the entity in the external package. It also works the other way round: if the external package holds a record whose origin you want to know, search i-Reserve for that external id. That is how you establish whether i-Reserve was the source.

3. Technical integration logging

For error analysis there is a technical log of the calls per integration. Go to Settings > Integrations, open the integration and choose the logging. For each call you see the request URL, the method, the payload sent and the response (code and detail). This requires the right menu_confmod_integrations.

Note: this logging is technical in nature and is kept for 90 days by default (configurable). For the question "has the integration ever worked on this entity?" the entity's history is therefore the right place; the technical log is there for the details of recent calls.

Retries and failure notifications

Outgoing connections that run through the send queue are automatically retried on failure with an increasing interval: first every few minutes, then every half hour and every hour, until well over a day after the first attempt. If it still does not succeed, the attempt is marked as permanently failed: an "Integration failed" entry appears in the history and — when configured on the integration — the specified problem email addresses receive a notification.

Practical checklist

  1. Open the entity (booking, invoice, customer) and look for entries with the plug icon in the History tab.
  2. Check the external id in the history entry or on the entity, and use it to look up the record in the external package.
  3. Need more detail or an error? Open the technical logging on the integration itself via Settings > Integrations.
The following right may be necessary in order to use this functionality.